diff options
Diffstat (limited to 'arch/ppc64/kernel/iSeries_setup.c')
-rw-r--r-- | arch/ppc64/kernel/iSeries_setup.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/arch/ppc64/kernel/iSeries_setup.c b/arch/ppc64/kernel/iSeries_setup.c index 99e4307affd6..27faf4f0967a 100644 --- a/arch/ppc64/kernel/iSeries_setup.c +++ b/arch/ppc64/kernel/iSeries_setup.c | |||
@@ -359,12 +359,6 @@ static void __init iSeries_init_early(void) | |||
359 | */ | 359 | */ |
360 | iommu_init_early_iSeries(); | 360 | iommu_init_early_iSeries(); |
361 | 361 | ||
362 | /* | ||
363 | * Initialize the table which translate Linux physical addresses to | ||
364 | * AS/400 absolute addresses | ||
365 | */ | ||
366 | build_iSeries_Memory_Map(); | ||
367 | |||
368 | iSeries_get_cmdline(); | 362 | iSeries_get_cmdline(); |
369 | 363 | ||
370 | /* Save unparsed command line copy for /proc/cmdline */ | 364 | /* Save unparsed command line copy for /proc/cmdline */ |
@@ -894,6 +888,11 @@ static int iseries_dedicated_idle(void) | |||
894 | void __init iSeries_init_IRQ(void) { } | 888 | void __init iSeries_init_IRQ(void) { } |
895 | #endif | 889 | #endif |
896 | 890 | ||
891 | static int __init iseries_probe(int platform) | ||
892 | { | ||
893 | return PLATFORM_ISERIES_LPAR == platform; | ||
894 | } | ||
895 | |||
897 | struct machdep_calls __initdata iseries_md = { | 896 | struct machdep_calls __initdata iseries_md = { |
898 | .setup_arch = iSeries_setup_arch, | 897 | .setup_arch = iSeries_setup_arch, |
899 | .get_cpuinfo = iSeries_get_cpuinfo, | 898 | .get_cpuinfo = iSeries_get_cpuinfo, |
@@ -909,6 +908,7 @@ struct machdep_calls __initdata iseries_md = { | |||
909 | .get_rtc_time = iSeries_get_rtc_time, | 908 | .get_rtc_time = iSeries_get_rtc_time, |
910 | .calibrate_decr = iSeries_calibrate_decr, | 909 | .calibrate_decr = iSeries_calibrate_decr, |
911 | .progress = iSeries_progress, | 910 | .progress = iSeries_progress, |
911 | .probe = iseries_probe, | ||
912 | /* XXX Implement enable_pmcs for iSeries */ | 912 | /* XXX Implement enable_pmcs for iSeries */ |
913 | }; | 913 | }; |
914 | 914 | ||
@@ -1047,9 +1047,17 @@ void build_flat_dt(struct iseries_flat_dt *dt) | |||
1047 | dt_push_u32(dt, OF_DT_END); | 1047 | dt_push_u32(dt, OF_DT_END); |
1048 | } | 1048 | } |
1049 | 1049 | ||
1050 | void __init iSeries_early_setup(void) | 1050 | void * __init iSeries_early_setup(void) |
1051 | { | 1051 | { |
1052 | iSeries_fixup_klimit(); | 1052 | iSeries_fixup_klimit(); |
1053 | 1053 | ||
1054 | /* | ||
1055 | * Initialize the table which translate Linux physical addresses to | ||
1056 | * AS/400 absolute addresses | ||
1057 | */ | ||
1058 | build_iSeries_Memory_Map(); | ||
1059 | |||
1054 | build_flat_dt(&iseries_dt); | 1060 | build_flat_dt(&iseries_dt); |
1061 | |||
1062 | return (void *) __pa(&iseries_dt); | ||
1055 | } | 1063 | } |