diff options
Diffstat (limited to 'arch/powerpc/kernel/prom.c')
-rw-r--r-- | arch/powerpc/kernel/prom.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index c3c6a8857544..9e3132db718b 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c | |||
@@ -364,10 +364,15 @@ static int __init early_init_dt_scan_cpus(unsigned long node, | |||
364 | return 0; | 364 | return 0; |
365 | } | 365 | } |
366 | 366 | ||
367 | void __init early_init_dt_scan_chosen_arch(unsigned long node) | 367 | int __init early_init_dt_scan_chosen_ppc(unsigned long node, const char *uname, |
368 | int depth, void *data) | ||
368 | { | 369 | { |
369 | unsigned long *lprop; | 370 | unsigned long *lprop; |
370 | 371 | ||
372 | /* Use common scan routine to determine if this is the chosen node */ | ||
373 | if (early_init_dt_scan_chosen(node, uname, depth, data) == 0) | ||
374 | return 0; | ||
375 | |||
371 | #ifdef CONFIG_PPC64 | 376 | #ifdef CONFIG_PPC64 |
372 | /* check if iommu is forced on or off */ | 377 | /* check if iommu is forced on or off */ |
373 | if (of_get_flat_dt_prop(node, "linux,iommu-off", NULL) != NULL) | 378 | if (of_get_flat_dt_prop(node, "linux,iommu-off", NULL) != NULL) |
@@ -399,6 +404,9 @@ void __init early_init_dt_scan_chosen_arch(unsigned long node) | |||
399 | if (lprop) | 404 | if (lprop) |
400 | crashk_res.end = crashk_res.start + *lprop - 1; | 405 | crashk_res.end = crashk_res.start + *lprop - 1; |
401 | #endif | 406 | #endif |
407 | |||
408 | /* break now */ | ||
409 | return 1; | ||
402 | } | 410 | } |
403 | 411 | ||
404 | #ifdef CONFIG_PPC_PSERIES | 412 | #ifdef CONFIG_PPC_PSERIES |
@@ -683,7 +691,7 @@ void __init early_init_devtree(void *params) | |||
683 | * device-tree, including the platform type, initrd location and | 691 | * device-tree, including the platform type, initrd location and |
684 | * size, TCE reserve, and more ... | 692 | * size, TCE reserve, and more ... |
685 | */ | 693 | */ |
686 | of_scan_flat_dt(early_init_dt_scan_chosen, NULL); | 694 | of_scan_flat_dt(early_init_dt_scan_chosen_ppc, NULL); |
687 | 695 | ||
688 | /* Scan memory nodes and rebuild MEMBLOCKs */ | 696 | /* Scan memory nodes and rebuild MEMBLOCKs */ |
689 | memblock_init(); | 697 | memblock_init(); |