s3c6410 START Process
First, take a look at the s3c6410 startup process
①irom supports initial boot up:initialize system clock, D-TCM, device specific controller and booting device.
②irom boot codes can load 4KB of bootloader to stepping stone. The 8KB boot loader is called BL1.
③BL1:BL1 can initialize system clock, UART, and SDRAM for user. After initializing, BL1 would load remaining boot loader which is called BL2 on the SDRAM
④finally, jump to start address of BL2. That would make good the environment to use system.
① initializing clocks, etc.
② If the Nandflash is started, the Nandflash controller will copy the Nandflash's front 4k area to the built-in SRAM (size 4k)
③BL1 This 4k, can initialize the system clock, UART, and SDRAM. After initialization is complete, the BL2 is copied into the SDRAM
④ jumps to the loading address of the BL2. Copy the OS to SDRAM and jump to the loading address of the OS
s5pv210 START Process
Increased irom size, increased built-in SRAM size
BL1 Max. Size is 16KB. BL2 Max. Size is 80KB
①irom can do initial boot up:initialize system clock, device specific controller and booting device.
②irom boot codes can load Boot-loader to SRAM. The Boot-loader is called BL1. Then Irom verify integrity of BL1 in case of secure boot mode.
③bl1 'll be EXECUTED:BL1 would load remained boot loader which is called BL2 on the SRAM then BL1 verify integrity of BL 2 in case of secure boot mode.
④bl2 'll is EXECUTED:BL2 initialize DRAM controller then load OS data to SDRAM.
⑤finally, jump to start address of OS. That would make good the environment to use system.
①...
②irom copy BL1 to SRAM
③BL1 load, and copy the BL2 into the built-in SRAM
④BL2 loading, and copying OS into SDRAM
⑤ jump to the loading address of the OS
Memory Map
As BL1 doesn ' t need header information through UART/USB boot mode, BL1 ' s code base address is 0xd002_0000. In the other cases except UART/USB boot mode, BL1 should has header information and It ' s code base address is 0xd0020010
If the SD card is started, the BL1 start address is 0xd0020010. In the first 4 bytes, the checksum is required, i.e. the checksum of the BL1 data (16kb-16byte)