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.
question :
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.