最終更新:2016-06-27 (月) 18:27:58 (2853d)
OMAP/ブートローダ
http://omappedia.org/wiki/Bootloader_Project
ブート順
ROMコード
- 最低限のクロック設定
- ブートデバイスを探す
- X-LoaderをSRAMにロード
- 処理
- 第1パーティションがFATフォーマット化チェック
- 第1パーティションにMLOファイルが有るかチェック
- MLOファイルをSRAMにロード・実行
- Boot ROMはSDRAMを初期化しないので、SRAM(64KB)しか使えない(u-boot のサイズは 280KB ほど。X-Loaderは22KBほど)
- 処理
- X-Loaderをアドレス 0x40200800 にロードして、その先頭である 0x40200800 にジャンプ
X-Loader
- First level bootloader for OMAP SoCs
- a stripped-down version of the u-boot, designed to run in OMAP's small on-chip SRAM.
- It initializes the main off-chip memory of the system and other necessary device drivers, and then loads the larger bootloader for Linux, u-boot.
- The x-loader configures the pin muxing, clocks, DDR, and serial console, so that it can access and load the second stage bootloader (u-boot) into the DDR
- ピン設定
- クロックとメモリの初期化
- U-BootをSRAMにロードして実行
- SDの場合:u-boot.bin
MLO
- the X-Loader binary with a header containing the memory location to load the file to and the size of the file
U-Boot
- 更に追加のプラットフォーム初期化
- カーネルの呼び出し
Linuxカーネル
- カーネルをSDRAMに展開
- 周辺回路のセットアップ
- ファイルシステムをマウント