On 23-03-13, Ahmad Fatoum wrote: > On 13.03.23 14:58, Ahmad Fatoum wrote: > > On 13.03.23 14:49, Marco Felsch wrote: > >> On 23-03-13, Ahmad Fatoum wrote: > >>> On 12.03.23 17:29, Marco Felsch wrote: > >>>> since commit f083fffe52 ("ARM: dts: i.MX8MP: add DDRC compatibles") we > >>>> make use of the esdctl driver. This cause the below error since barebox > >>>> try to add the memory twice. > >>>> > >>>> | imx-esdctl 3d400000.memory-controller@xxxxxxxxxxx: probe failed: Device or resource busy > >>>> | initcall imx_esdctl_driver_init+0x0/0x2c failed: No such device > >>> > >>> Starting with commit 0a78ac84e9fe ("memory: fuse overlapping memory banks"), > >>> this should not be leading to errors. Can you increase debugging in > >>> common/resource.c and see why you run into this error? > >> > >> I did this and saw that memory bank ram0 is added added twice: > >> - first by generic of > >> - 2nd by esdctl > > > > See the first loop in barebox_add_memory_bank(). If you add > > two overlapping IORESOURCE_MEM banks, the function will not > > s/overlapping/region fully within the other region/ Thanks for the hint, I checked this and now see the issue: - 1st) of_add_memory_bank() add two banks for the 6G option: - ram0: 0x40000000 0xc0000000 - ram1: 0x100000000 0xc0000000 - 2nd) the esdctl dirver try to add only one bank for the 6G: - ram0: 0x40000000 0x180000000 The overlap mechanism is triggered and we enter the barebox_grow_memory_bank() but since we already requested ram1 we can't grow ram0. So the tqm8 board isn't effected and a 'lacy' approach is to remvoe the memory node as suggested by Lucas. Regards, Marco > > > return an error. I think there might be a problem if you run > > into an error. > > > >> > >> Regards, > >> Marco > >> > >> > >>> > >>> > >>>> > >>>> Remove the memory node to fix this. > >>>> > >>>> This behaviour was seen on a i.mx8mp-evk but the > >>>> imx8mp-tqma8mpql-mba8mpxl also has a memory node and includes the > >>>> barebox.dtsi. > >>>> > >>>> Fixes: f083fffe52 ("ARM: dts: i.MX8MP: add DDRC compatibles") > >>>> Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> > >>>> --- > >>>> arch/arm/dts/imx8mp-evk.dts | 2 ++ > >>>> arch/arm/dts/imx8mp-tqma8mpql-mba8mpxl.dts | 2 ++ > >>>> 2 files changed, 4 insertions(+) > >>>> > >>>> diff --git a/arch/arm/dts/imx8mp-evk.dts b/arch/arm/dts/imx8mp-evk.dts > >>>> index 0acc3731d5..c7e1f35d2d 100644 > >>>> --- a/arch/arm/dts/imx8mp-evk.dts > >>>> +++ b/arch/arm/dts/imx8mp-evk.dts > >>>> @@ -30,6 +30,8 @@ > >>>> }; > >>>> }; > >>>> > >>>> +/delete-node/ &{/memory@40000000}; > >>>> + > >>>> ðphy1 { > >>>> reset-assert-us = <15000>; > >>>> reset-deassert-us = <100000>; > >>>> diff --git a/arch/arm/dts/imx8mp-tqma8mpql-mba8mpxl.dts b/arch/arm/dts/imx8mp-tqma8mpql-mba8mpxl.dts > >>>> index 6e81f58e27..bf23e40489 100644 > >>>> --- a/arch/arm/dts/imx8mp-tqma8mpql-mba8mpxl.dts > >>>> +++ b/arch/arm/dts/imx8mp-tqma8mpql-mba8mpxl.dts > >>>> @@ -24,6 +24,8 @@ > >>>> }; > >>>> }; > >>>> > >>>> +/delete-node/ &{/memory@40000000}; > >>>> + > >>>> &usdhc2 { > >>>> #address-cells = <1>; > >>>> #size-cells = <1>; > >>> > >>> -- > >>> Pengutronix e.K. | | > >>> Steuerwalder Str. 21 | http://www.pengutronix.de/ | > >>> 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > >>> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | > >>> > >>> > >> > > > > -- > Pengutronix e.K. | | > Steuerwalder Str. 21 | http://www.pengutronix.de/ | > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | > >