Hi,
My customer used AM4378 with 1GB DDR and went to production in several years ago.
Now they are trying to modify the existing system and want to increase DDR size to 2GB.
Of course customer changed DDR registers configuration accordingly.
DDR read/write tests are PASS for all region.
But Linux boot fails while Linux RAMDISK image is relocated to DDR. The system freezes.
Customer checked the issue and found the address range of RAMDISK relocation area and u-boot stack region are overlapped.
Q1)
The u-boot version customer uses is very old (2014.07).
Is this the one in u-boot git repository "ti-u-boot-2014" branch?
Q2)
Customer also found the root cause of the issue is address calculation done in function "__lmb_alloc_base".
If DDR size is larger than or equal to 2GB, calculated value is overflown and an incorrect address is used.
This issue was fixed in the latest u-boot (2021.10-rc5).
https://source.denx.de/u-boot/u-boot/-/commit/ad3fda521b1557fb0ecc95959e88a79fd0c6b30b
Is this OK to apply the same patch to u-boot(2014.07)?
Are there any other patch required for 2GB DDR?
Thanks and regards,
Koichiro Tashiro