Hi,
On 12/04/21 15:08, Ruifeng Zhang wrote: > From: Ruifeng Zhang <ruifeng.zha...@unisoc.com> > > The arm topology still parse from the MPIDR, but it is incomplete. When > the armv8.3 cpu runs in aarch32 mode, it will parse out the wrong topology. > > armv7 (A7) mpidr is: > [11:8] [7:2] [1:0] > cluster reserved cpu > > armv8.3 (A55) mpidr is: > [23:16] [15:8] [7:0] > cluster cpu thread > > For compatibility to keep the function of get capacity from default > cputype, renamed arm parse_dt_topology to get_cputype_capacity and delete > related logic of parse from dt. > Arm using the same parse_dt_topology function as arm64. > > The arm device boot step is to look for the default cputype and get cpu > capacity firstly. Then parse the topology and capacity from dt to replace > default values. > I'm afraid I don't get it. CONFIG_COMPAT lets you run 32-bit stuff at EL0, but the kernel is still arm64. So if you take your armv8.3 system, the topology parsed by the kernel will be the same regardless of CONFIG_COMPAT. Could you elaborate on what problem you are trying to fix here?