Index: sys/arch/arm/arm/arm_cpu_topology.c =================================================================== RCS file: /cvsroot/src/sys/arch/arm/arm/arm_cpu_topology.c,v retrieving revision 1.3 diff -p -u -r1.3 arm_cpu_topology.c --- sys/arch/arm/arm/arm_cpu_topology.c 15 Feb 2020 07:20:41 -0000 1.3 +++ sys/arch/arm/arm/arm_cpu_topology.c 29 Mar 2020 03:40:51 -0000 @@ -62,6 +62,7 @@ arm_cpu_topology_set(struct cpu_info * c smtid = 0; } cpu_topology_set(ci, pkgid, coreid, smtid, numaid); + cpu_topology_setspeed(ci, slow); #endif /* MULTIPROCESSOR */ } @@ -88,7 +89,8 @@ arm_cpu_do_topology(struct cpu_info *con * mi_cpu_attach() is called and ncpu is bumped, so call it * directly here. This also handles the not-MP case. */ - cpu_topology_setspeed(newci, newci->ci_capacity_dmips_mhz < best_cap); + arm_cpu_topology_set(newci, arm_cpu_mpidr(newci), + newci->ci_capacity_dmips_mhz < best_cap); /* * Using saved largest capacity, refresh previous topology info. @@ -97,8 +99,8 @@ arm_cpu_do_topology(struct cpu_info *con for (CPU_INFO_FOREACH(cii, ci)) { if (ci == newci) continue; - cpu_topology_setspeed(newci, - newci->ci_capacity_dmips_mhz < best_cap); + arm_cpu_topology_set(ci, arm_cpu_mpidr(ci), + ci->ci_capacity_dmips_mhz < best_cap); } #endif /* MULTIPROCESSOR */ }