chip : i.mx6q
I think after reading the datasheetchip startup process is as follows:
1、When the chip start-up(boot from SD card) , Chip will copy the SD card code from 0x400 to the internal RAM.(copy length is 4K)
2、Internal ROM code will check IVT and DCD , and then perform DCD to initialize the DDR.
3、Internal ROM code will copy boot_data->length specifies the length of the data to boot_data specified address , and then jump to entry the specified address.
1、The above view is correct?
2、How do Internal ROM code find the DCD?
In my code ,the address offset is 0x27800000(As long as the memory address range , For example : 0x10000000 ) :
boot_data->start = 0x27800000
DCD(Absolute address) = 0x2780042C
entry = 0x278006E0
I try change the DCD(Absolute address) , but code is not working .
The DDR initialization after finding DCD , Why DCD(Absolute address) in the memory address ? How do Internal ROM code find the DCD? Internal ROM should not find DCD according to the address in memory.
Forgive my English is not good , thanks.