IMX8MM 4GiB boundary issue
Tim Harvey
tharvey at gateworks.com
Thu Feb 24 21:19:48 CET 2022
On Thu, Feb 24, 2022 at 12:03 PM Marek Vasut <marex at denx.de> wrote:
>
> On 2/24/22 20:50, Fabio Estevam wrote:
> > Hi Tim,
> >
> > Sorry for resurrecting such an old thread.
> >
> > On Fri, Sep 25, 2020 at 11:52 AM Tim Harvey <tharvey at gateworks.com> wrote:
> >>
> >> Greetings,
> >>
> >> I'm working with an IMX8MM board that has 4GiB of DRAM. I've found
> >> that in this configuration the MMC driver and FEC network driver
> >> appear to have some issues with crossing the 4GiB address space. If I
> >> tell U-Boot I have 3GiB everything is ok, but when I set it to 4GiB I
> >> see the following:
> >>
> >> MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
> >> Loading Environment from MMC... Error found for upper 32 bits
> >> Error found for upper 32 bits
> >> Error found for upper 32 bits
> >> *** Warning - No block device, using default environment
> >>
> >> In: serial
> >> Out: serial
> >> Err: serial
> >> Net: DP83867
> >> Warning: ethernet at 30be0000 (eth0) using random MAC address - ea:22:3a:4d:8f:d5
> >> eth0: ethernet at 30be0000 [PRIME]
> >> Hit any key to stop autoboot: 0
> >>
> >> On the FEC ethernet side I don't see any errors reported but ping's
> >> fail with 4GiB DRAM.
> >
> > Yes, just noticed the "Error found for upper 32 bits" and FEC breakage
> > on an imx8mm iotgate board.
> >
> > Is there any progress with regards to the support of 4GB of RAM on imx8mm?
>
> If the IP doesn't support access above 32bit bus addresses, but
> mmc_data->src/dst is above 4 GiB, use 'struct bounce_buffer' on that
> buffer and let U-Boot "bounce" into 32bit space which the IP can handle
> . Same thing for ethernet and other IPs with such limitations.
Fabio,
As Marek points out the individual peripheral drivers have not been
updated properly but this should be worked around with commit
e27bddff4b97 ("imx8m: Restrict usable memory to space below 4G
boundary").
Best regards,
Tim
More information about the U-Boot
mailing list