[PATCH 6/19] ppc64: Build iSeries memory map and bolt mappings earlier
Michael Ellerman
michael at ellerman.id.au
Tue Jul 26 18:58:40 EST 2005
Move the building of the iSeries memory map and the call to
iSeries_bolt_kernel() into iSeries_early_setup(). This allows us to make
Hypervisor calls much earlier during boot.
---
arch/ppc64/kernel/iSeries_setup.c | 18 +++++++++---------
1 files changed, 9 insertions(+), 9 deletions(-)
Index: work/arch/ppc64/kernel/iSeries_setup.c
===================================================================
--- work.orig/arch/ppc64/kernel/iSeries_setup.c
+++ work/arch/ppc64/kernel/iSeries_setup.c
@@ -355,12 +355,6 @@ static void __init iSeries_init_early(vo
*/
iommu_init_early_iSeries();
- /*
- * Initialize the table which translate Linux physical addresses to
- * AS/400 absolute addresses
- */
- build_iSeries_Memory_Map();
-
iSeries_get_cmdline();
/* Save unparsed command line copy for /proc/cmdline */
@@ -378,9 +372,6 @@ static void __init iSeries_init_early(vo
}
}
- /* Bolt kernel mappings for all of memory (or just a bit if we've got a limit) */
- iSeries_bolt_kernel(0, systemcfg->physicalMemorySize);
-
lmb_init();
lmb_add(0, systemcfg->physicalMemorySize);
lmb_analyze();
@@ -954,5 +945,14 @@ void __init iSeries_early_setup(void)
iSeries_fixup_klimit();
ppc_md = iseries_md;
+
+ /*
+ * Initialize the table which translate Linux physical addresses to
+ * AS/400 absolute addresses
+ */
+ build_iSeries_Memory_Map();
+
+ /* Bolt mappings for all of memory (or some if we've got a limit) */
+ iSeries_bolt_kernel(0, systemcfg->physicalMemorySize);
}
More information about the Linuxppc64-dev
mailing list