On Mon, 16 Jun 2014 17:13:54 +0200 Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> wrote: Question to Sascha. Can we preserve the 'memory' dts record in situations like this? Is it possible just alter dts in early init code? Or something else? > From: Philipp Zabel <philipp.zabel@xxxxxxxxx> > > Commit 0d6392de4ad824a6553c0e3e3e18edef689a7c85 introduced a stripped > down device tree used for both white and black Beaglebone variants > that included the 256 MiB memory node from am335x-bone-common.dtsi. > This leads to the following error in the MLO: > > mmu: Critical Error: Can't request SDRAM region for ttb at 9fff4000 > > This patch removes the (for the Beaglebone black) invalid memory size > from the common device tree and instead registers the memory bank > manually in the board file. > > Signed-off-by: Philipp Zabel <philipp.zabel@xxxxxxxxx> > --- > arch/arm/boards/beaglebone/board.c | 17 +++++++++++++++++ > arch/arm/dts/am335x-bone-common.dtsi | 5 ----- > 2 files changed, 17 insertions(+), 5 deletions(-) > > diff --git a/arch/arm/boards/beaglebone/board.c b/arch/arm/boards/beaglebone/board.c > index 993d05b..3042189 100644 > --- a/arch/arm/boards/beaglebone/board.c > +++ b/arch/arm/boards/beaglebone/board.c > @@ -51,6 +51,23 @@ static int beaglebone_coredevice_init(void) > } > coredevice_initcall(beaglebone_coredevice_init); > > +static int beaglebone_mem_init(void) > +{ > + uint32_t sdram_size; > + > + if (!of_machine_is_compatible("ti,am335x-bone")) > + return 0; > + > + if (is_beaglebone_black()) > + sdram_size = SZ_512M; > + else > + sdram_size = SZ_256M; > + > + arm_add_mem_device("ram0", 0x80000000, sdram_size); > + return 0; > +} > +mem_initcall(beaglebone_mem_init); > + > static int beaglebone_devices_init(void) > { > int black; > diff --git a/arch/arm/dts/am335x-bone-common.dtsi b/arch/arm/dts/am335x-bone-common.dtsi > index 00271c4..4cf7fdb 100644 > --- a/arch/arm/dts/am335x-bone-common.dtsi > +++ b/arch/arm/dts/am335x-bone-common.dtsi > @@ -17,11 +17,6 @@ > }; > }; > > - memory { > - device_type = "memory"; > - reg = <0x80000000 0x10000000>; /* 256 MB */ > - }; > - > leds { > pinctrl-names = "default"; > pinctrl-0 = <&user_leds_s0>; > -- > 2.0.0 > > > _______________________________________________ > barebox mailing list > barebox@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/barebox -- -- Best regards, Antony Pavlov _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox