[PATCH] ARM: dts: i.MX8MP: remove memory node
Marco Felsch
m.felsch at pengutronix.de
Mon Mar 13 09:08:28 PDT 2023
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 at 3d400000.of: 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 at pengutronix.de>
> >>>> ---
> >>>> 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 at 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 at 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 |
>
>
More information about the barebox
mailing list