[U-boot][itop4412]移植前傳
阿新 • • 發佈:2018-12-19
4412啟動的步驟:
以下都是在三星Exynos4412情況(有誤請指正,謝謝),其他晶片僅供參考
1. iROM
稱為:BL0,內部程式由晶片廠商提供,固化啟動程式碼 a.iROM提供了執行arm程式碼的基本環境:關閉IRQ和MMU,初始化系統時鐘,設定看門狗,初始化堆和棧 b.載入BL1,從引導裝置中:SD/MMC、eMMC4.3、eMMC4.4和NAND。 c.iROM檢查下載的BL1的完整性。 詳細需要看流程圖
2. BL1:(BootLoader1 = Header + Encrypted BL1 + Signature)
a.在iRAM中執行(IRAM上電就能用) b.初始化IRQ和SVC堆疊 c.BL1程式碼將BL2映像複製到內部RAM,並檢查BL2映像的完整性。 d.為了安全考慮,有祕鑰,校驗下一個檔案 () 注:8k或者15K(iROM寫死了)
3. BL2:(BootLoader2 = BL2 + Checksum + Signature + Padding)
a.在iRAM中執行 b. BL2的前部分是u-boot的前14K c.初始化IRQ和SVC堆疊,設定系統時鐘,初始化DRAM,初始化某些裝置 d.載入OS image(BL3)
4. u-boot
a. 最大的裸機程式
u-boot.bin
cat E4412_N.bl1.SCP2G.bin bl2.bin all00_padding.bin u-boot.bin tzsw_SMDK4412_SCP_2GB.bin > u-boot-iTOP-4412.bin
(未完待續)