具體分析參見另一篇blog:
第一階段的啟動在./cpu/arm920t/start.s檔案中完成,之後執行c程式,對硬體進行更細緻的初始化操作:
硬體初始化:
設定svc模式;
關閉watch dog;
禁止irq;
設定時鐘:fclk、hclk、pclk;
禁止i-cache、d-cache;
禁止mmu和cache;
配置memory control。
**拷貝:
若當前**不在連線檔案指定的位址上,要把u-boot拷貝到指定的ram位址。
設定堆疊:
進入c函式前需要完成堆疊設定。
清bss區:
這部分的流程圖為:
u boot第一階段
u boot 第一階段 位置 cpu arm920t start.s 流程分析 1.儲存一些全域性變數,用於啟動程式將 從flash拷貝到ram或其他使用。有一些變數的值是通過鏈結指令碼得到的,如 text base 位於board 2440 config.mk 中 bss start end 位於...
uboot移植(四) uboot啟動第一階段
1 bl0 bl1 bl2分別是什麼 1 bl0 s5pv210的irom中固化的 作用 初始化系統時鐘,設定看門狗,初始化棧,載入bl1 2 bl1 從外部啟動介質 nand sd卡 中載入的uboot.bin的前16k 作用 初始化ram,關閉cache,初始化ddr,設定棧,載入bl2 3 b...
UBOOT第一階段分析
感覺不錯的乙個圖就轉過來了!u boot第一階段的啟動流程。這個階段主要是初始化硬體裝置,為載入u boot的第二階段 準備ram空間最後跳轉到lib arm board.c中start armboot函式,這是第二階段的入口點。u boot第一階段的儲存器布局。上圖中u boot安裝在nand f...