IMX8MM 4GiB boundary issue

Marek Vasut marex at denx.de
Thu Feb 24 21:03:46 CET 2022


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.


More information about the U-Boot mailing list