u boot從nand讀取的核心格式

2021-06-08 05:17:47 字數 553 閱讀 8311

位於nand中的核心是uimang格式,其結構為頭部加上真正的核心,頭部對應的型別為:

typedef struct image_header image_header_t;

這裡我們主要關注 uint32_t ih_load; /* data  load  address  */

和uint32_t ih_ep;  /* entry point address  */

乙個是載入位址,乙個是入口位址,用bootm命令載入核心時,會讀出這兩個位址,

如果bootm命令後面的位址與真正核心所處位址不同,則需要將真正核心移到bootm 命令後面的位址。

其中頭部image_header_t的大小為64byte.

為了不移動核心以便加快系統啟動速度,可以將nand read 記憶體位址設為bootm 命令後面的位址減去64byte.

bootm 所做的工作:

1. 根據頭部的ih_load 移動核心到合適的地方

2. 啟動核心,do_bootm_linux,此處uboot會通過約定的格式 設定一些核心的啟動引數,核心啟動時會按這種格式讀取引數。

uboot分析之通過nand命令讀核心

修改了一些個人感覺不太完整的描述 本節主要學習 詳細分析uboot環境變數中 bootcmd nand read.jffs2 0x30007fc0 kernel bootm 0x30007fc0 怎麼實現nand命令讀核心。1.nand read.jffs2 0x30007fc0 kernel 步驟...

從NAND快閃儲存器中啟動U BOOT的設計

從nand快閃儲存器中啟動u boot的設計 2007 05 12 07 48 u boot 支援arm powerpc等多種架構的處理器,也支援linux netbsd和vxworks等多種作業系統,主要用來開發嵌入式系統初始化 bootloader。bootloader是晶元復位後進入作業系統之...

從NAND快閃儲存器中啟動U BOOT的設計

bootloader是晶元復位後進入作業系統之前執行的一段 完成由硬體啟動到作業系統啟動的過渡,為執行作業系統提供基本的執行環境,如初始化cpu 堆疊 初始化儲存器系統等,其功能類似於pc機的bios。u boot執行流程圖如圖1所示。圖1 u boot啟動流程圖 nand快閃儲存器工作原理 s3c...