S5PV210啟動方式
有IROM,且隻能從IROM啟動,不再支援原來的直接從外部媒體啟動方式。
IROM代碼(BL0)運作完畢後,根據OM[5:0]确定外部啟動媒體(BL1和BL2)完成啟動。S5PV210支援的外部啟動媒體包括:NAND Flash、OneNAND、SD/MMC、eMMC、eSSD、UART/USB。
BL0
1. 關看門狗
2. 初始化指令cache
3. 初始化棧(stack)
4. 初始化堆區(heap)
5. 初始化塊裝置拷貝函數(IROM自帶各種塊裝置讀取函數,詳見IROM application note).
6. 初始化PLL并設定系統時鐘.
7. 拷貝BL1到SRAM
8. 檢測BL1校驗和,若校驗失敗則嘗試從第二啟動裝置(SD/MMC通道2)啟動。.
9. 檢測是否為安全啟動模式。如果是安全啟動模式,檢查BL1的校驗和。
10. 跳轉到BL1繼續執行。
BL1
1、判斷複位模式是否為deep idle或sleep。若是則直接跳轉到BL2繼續執行。
2、若複位模式不是deep idle或sleep,則加載BL2到SRAM。
3、檢查是否為安全啟動模式。若是,則檢測BL2的校驗和是否正确。若否則直接跳轉到BL2執行。
4、BL2校驗校驗正确,則跳轉到BL2執行,否則Boot失敗,結果boot流程。
BL2
1、判斷複位模式是否為deep idle或sleep。若是則直接跳轉到DRAM繼續執行。
2、初始化DRAM
3、加載OS代碼到DRAM
4、跳轉到DRAM運作
UART /USB啟動模式
OM[5:4] = 0b10即可選擇UART/USB啟動模式此時IROM代碼運作完畢後,會先嘗試從UART 啟動,若失敗則會嘗試從USB啟動。若失敗則會根據OM[3:0]選擇相應的啟動媒體再次嘗試啟動。
UART啟動時,必須在S5PV210上電前将序列槽連接配接好,上位機使用dnw工具來發送啟動代碼可執行檔案。本教材中使用USB啟動方式作為調試,是以不詳細探讨UART啟動方式。
1、USB啟動方式必須借助dnw工具,教材中使用dnw v0.60c。
2、打開dnw軟體,将dnw中USB下載下傳位址設定為0xd0020010。
3、複位開發闆。
4、若是初次使用則Windows會彈出發現新硬體圖示,索引安裝開發闆dnw USB驅動即可。若已經安裝驅動,則dnw會顯示USB:OK,表示USB連接配接已經成功。
5、dnw菜單中USB Port->Transmit,選擇編譯好的bin檔案即可。USB download完成後S5PV210會即刻跳轉到0xd0020010處執行。