diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 673cab2ff65ad4890227be2eaf75da12188a1fd2..9fc9af88c60c72e54cad5e835c579b95027624e6 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -807,7 +807,7 @@ static int __init topology_init(void)
 {
 	int cpu;
 
-	for_each_cpu(cpu)
+	for_each_possible_cpu(cpu)
 		register_cpu(&per_cpu(cpu_data, cpu).cpu, cpu, NULL);
 
 	return 0;