diff options
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/platforms/cell/cbe_regs.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/cell/cbe_regs.c b/arch/powerpc/platforms/cell/cbe_regs.c index 12c9674b4b1f..c8f7f0007422 100644 --- a/arch/powerpc/platforms/cell/cbe_regs.c +++ b/arch/powerpc/platforms/cell/cbe_regs.c | |||
@@ -174,6 +174,13 @@ static struct device_node *cbe_get_be_node(int cpu_id) | |||
174 | 174 | ||
175 | cpu_handle = of_get_property(np, "cpus", &len); | 175 | cpu_handle = of_get_property(np, "cpus", &len); |
176 | 176 | ||
177 | /* | ||
178 | * the CAB SLOF tree is non compliant, so we just assume | ||
179 | * there is only one node | ||
180 | */ | ||
181 | if (WARN_ON_ONCE(!cpu_handle)) | ||
182 | return np; | ||
183 | |||
177 | for (i=0; i<len; i++) | 184 | for (i=0; i<len; i++) |
178 | if (of_find_node_by_phandle(cpu_handle[i]) == of_get_cpu_node(cpu_id, NULL)) | 185 | if (of_find_node_by_phandle(cpu_handle[i]) == of_get_cpu_node(cpu_id, NULL)) |
179 | return np; | 186 | return np; |