Our own board uses the ls1043 chip, the lsdk version is 2004, and the sdk supports 2G by default DDR, I want to know how to support 4G DDR, how to modify ATF and uboot, and whether there is a patch.
LSDK is written for specific LS1043ARDB DDR configuration.
In TFA case you need to modify following file in accordance with your specific SDRAM configuration:
ddr_init.c\ls1043ardb\soc-ls1043\nxp\plat - qoriq-components/atf - ARM Trusted Firmware
Regards,
Bulat
The starting address of ddr regions0 of ls1043ardb is 0x80000000, and the size is 2G. If I use 4G DDR when the kernel accesses an address greater than 2G, will there be problems?
4GB memory will be remapped to 08_8000_0000 address.
Regards,
Bulat
1. How to understand The chip address and Remapped DRAM address in Table 2-2. LS1043A Memory Address Remapping.
2. If ddr is greater than 4G, is it necessary to specify the base address of DDR as 08_8000_0000 in ATF?
thanks!
1. The table shows possible remapping variants.
2. You don't have to specify base address.
Could you give an example to explain the process of CPU accessing 0x80000000 address and accessing 100000000, thank you!
I do not understand what kind of "example" you mean. If it relates to ARM architecture, you have to forward request to www.arm.com. From the DDR4 perspective all accesses are the same with different address patterns.
This has nothing to do with the ARM architecture, it is the DDR address remap done by LS1043. The base address of ddr in atf is 0x80000000, but the maximum of DRAM1 is only 2G. If you have accessed the entire 4G DDR in ATF, what will happen? You said that 4G will be remapped to 08_8000_0000 is the hardware automatic mapping, or when the memory information is passed to the Linux kernel, the software has been modified.