uboot啟動(dòng)流程
作者:曹忠明,華清遠(yuǎn)見嵌入式學(xué)院講師。
U-boot(universal bootloader)是德國(guó)DENX小組開發(fā)的用于多嵌入式CPU的bootloader程序,遵循GPL條款。
以s3c2410為例Uboot的啟動(dòng)過(guò)程大體可分為兩個(gè)部分,第一部分是初始化系統(tǒng)為第二部分做準(zhǔn)備,多用匯編實(shí)現(xiàn),第二部分實(shí)現(xiàn)外圍設(shè)備的初始化和內(nèi)核的下載及參數(shù)的傳遞,開始用C實(shí)現(xiàn)。
下面是uboot啟動(dòng)流程
Uboot啟動(dòng)后的內(nèi)存分配情況。
34000000
33f80000 boot搬移地址
……
33f40000 堆棧開始地址
……
33f3ff80 全局變量存放位置
……
33f3ff7d abort棧
……
30008000 內(nèi)核下載地址
……
30004000 一級(jí)頁(yè)表地址
……
30000100 uboot傳遞參數(shù)存放地址
……
30000000 SDRAM開始地址
上面這個(gè)就是基于s3c2410,uboot的啟動(dòng)過(guò)程及內(nèi)存分配。
“本文由華清遠(yuǎn)見http://www.embedu.org/index.htm提供”
華清遠(yuǎn)見