Commit af040ffc9ba1 ("ARM: make it easier to check the CPU part number correctly") changed ARM_CPU_PART_X masks, and the way they are returned and checked against. Usage of read_cpuid_part_number() is now deprecated, and calling places updated accordingly. This actually broke cpuidle-big_little initialization, as bl_idle_driver_init() performs a check using and hardcoded mask on cpu_id.
Update the check to reflect changes on ARM_CPU_PART_X masks. Also, make the check easier to understand. Signed-off-by: Juri Lelli <juri.le...@arm.com> Acked-by: Lorenzo Pieralisi <lorenzo.pieral...@arm.com> Cc: Daniel Lezcano <daniel.lezc...@linaro.org> Cc: "Rafael J. Wysocki" <r...@rjwysocki.net> Cc: Russell King <rmk+ker...@arm.linux.org.uk> Cc: linux...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-kernel@vger.kernel.org Cc: Juri Lelli <juri.le...@gmail.com> --- drivers/cpuidle/cpuidle-big_little.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/cpuidle/cpuidle-big_little.c b/drivers/cpuidle/cpuidle-big_little.c index b45fc62..a712896 100644 --- a/drivers/cpuidle/cpuidle-big_little.c +++ b/drivers/cpuidle/cpuidle-big_little.c @@ -138,7 +138,7 @@ static int bl_enter_powerdown(struct cpuidle_device *dev, return idx; } -static int __init bl_idle_driver_init(struct cpuidle_driver *drv, int cpu_id) +static int __init bl_idle_driver_init(struct cpuidle_driver *drv, int match_id) { struct cpuinfo_arm *cpu_info; struct cpumask *cpumask; @@ -154,7 +154,7 @@ static int __init bl_idle_driver_init(struct cpuidle_driver *drv, int cpu_id) cpuid = is_smp() ? cpu_info->cpuid : read_cpuid_id(); /* read cpu id part number */ - if ((cpuid & 0xFFF0) == cpu_id) + if (((cpuid ^ match_id) & 0xFF00FFF0) == 0) cpumask_set_cpu(cpu, cpumask); } -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/