Hello. I am trying to understand the s3c6410 booting process(IROM method) and here what I believe is happening: 1) The pc is set to address 0x0 where the Internal ROM is mapped at this point. 2) The Internal ROM is unmodifiable and contains some manufacturer's firmware with defined initialisation sequence (BL0). 3) The BL0 fetches first 4KB of the boot device (NAND or SD) and copies it to the 0x0C000000 address (on-chip RAM - SteppingStone), and sets pc to that address. 4) The Steppingstone code is written by the programmer, and actually can perform any task fitting within these 4Kb. Correct me if I am wrong. If not, I conclude that if I am burning my testing program (linked at address 0) to the beginning of the NAND flash, setting breakpoint on the address 0x0C000000 and resetting the processor, the execution should break exactly at the beginning of my program ? I've tested that, but the execution never breaks. I would appreciate any comments and corrections. * Sorry if my English is not as perfect as you expect
tiny6410 boot sequence
OK. Read in the Application Note that the BL1 on the NAND should have some kind of signature for integrity check. But I can't figure out how the signature is calculated.
The booting sequence is explained quite clearly in the App notes as attached. See the section 2. Operation for booting sequence.
http://www.rasterman.com/files/man-6410-apn.pdf /* ------------------------------------------------- */ So the format of the SD card is on page 602? Which one do I use? SD/MMC or SDHC?
Thanks for the pointers. Took me a long while to figure out. Now I can write a script that does this. I use Linux, so "just run sdflasher.exe" doesn't work for me. Does anybody know what the "signature" is? I've found a block-with-all-zeroes just beyond the 8k BL1 block.... And... I've taken an image of a bootable 2G SD card, and put it on an 8G SD card. As the signature and BL1 code is now in the wrong spot (referenced to the LAST block of the device) it should not be bootable. But it is: It boots just fine.... So still there is something we don't know!