ppc64 iSeries: Move memory setup into iSeries device tree

This patch adds the required nodes to the iSeries device tree to allow
early_init_devtree() to do the lmb setup for us.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
This commit is contained in:
Michael Ellerman 2005-09-23 15:00:20 +10:00 committed by Stephen Rothwell
parent 4762713a93
commit 3ab42407fe
1 changed files with 15 additions and 5 deletions

View File

@ -376,11 +376,6 @@ static void __init iSeries_init_early(void)
}
}
lmb_init();
lmb_add(0, systemcfg->physicalMemorySize);
lmb_analyze();
lmb_reserve(0, __pa(klimit));
/* Initialize machine-dependency vectors */
#ifdef CONFIG_SMP
smp_init_iSeries();
@ -1039,9 +1034,24 @@ void dt_prop_empty(struct iseries_flat_dt *dt, char *name)
void build_flat_dt(struct iseries_flat_dt *dt)
{
u64 tmp[2];
dt_init(dt);
dt_start_node(dt, "");
dt_prop_u32(dt, "#address-cells", 2);
dt_prop_u32(dt, "#size-cells", 2);
/* /memory */
dt_start_node(dt, "memory@0");
dt_prop_str(dt, "name", "memory");
dt_prop_str(dt, "device_type", "memory");
tmp[0] = 0;
tmp[1] = systemcfg->physicalMemorySize;
dt_prop_u64_list(dt, "reg", tmp, 2);
dt_end_node(dt);
dt_end_node(dt);
dt_push_u32(dt, OF_DT_END);