JADA262 July   2026 TDA4VE-Q1

 

  1.   1
  2.   概要
  3.   商標
  4. 1 概要
    1. 1.1 疑問
    2. 1.2 範囲
    3. 1.3 ターゲット ブート アーキテクチャ
  5. 2 背景
    1. 2.1 J721S2 のブート フロー
    2. 2.2 OSPI NOR フラッシュの概要
    3. 2.3 UBI と UBIFS の概要
  6. 3 OSPI フラッシュ レイアウト
    1. 3.1 パーティション レイアウト
    2. 3.2 ブートローダーのパーティション
    3. 3.3 ルート ファイルシステム パーティション
  7. 4 ブート コンポーネントの書き込み
    1. 4.1 ブート コンポーネントの概要
    2. 4.2 OSPI MTD パーティションの識別
    3. 4.3 ブート コンポーネントの OSPI NOR フラッシュへの書き込み
    4. 4.4 ブート コンポーネントの確認
  8. 5 UBIFS ルート ファイルシステムの作成
    1. 5.1 RootFS パーティションの準備
    2. 5.2 UBI デバイスの作成
    3. 5.3 UBIFS ボリュームの作成
    4. 5.4 UBIFS の動作の確認
  9. 6 Linux ブート アーティファクトの UBIFS への保存
    1. 6.1 UBIFS ルート ファイルシステム ボリュームのマウント
    2. 6.2 BusyBox を使用したルート ファイルシステム構造の作成
    3. 6.3 BusyBox 実行の確認
    4. 6.4 BusyBox コマンド リンクの作成
    5. 6.5 init スクリプトの作成
    6. 6.6 chroot を使用したルート ファイルシステムのテスト
    7. 6.7 Linux カーネル イメージと DTB のコピー
  10. 7 UBIFS からの Linux ブートの構成
    1. 7.1 ブート引数の構成
    2. 7.2 UBIFS からカーネルと DTB をロード
    3. 7.3 Linux ブートのテスト
    4. 7.4 再利用可能なブート コマンドの作成
  11. 8 全面的な OSPI NOR フラッシュからの Linux ブート
    1. 8.1 U-Boot のブート シーケンスの自動化
    2. 8.2 エンド ツー エンドのブート フロー
  12. 9 まとめ
  13. 10参考資料

ルート ファイルシステム パーティション

ospi.rootfs パーティションは、システム ブートに必要な Linux 関連ソフトウェア コンポーネントすべてを格納するために使用されます。

カーネル イメージ、DTB、ルート ファイルシステムを eMMC に格納する従来の J721S2 Linux システムとは異なり、この実装ではすべての Linux アーティファクトが OSPI NOR フラッシュ内の UBIFS ボリューム内に格納されます。

 ルート ファイルシステムの構造図 3-2 ルート ファイルシステムの構造

パーティションは UBI デバイスとしてフォーマットされ、rootfs という名前の UBIFS ボリュームが含まれます。ボリュームには以下の内容が格納されます。

  • Linux カーネル イメージ (Image)
  • デバイス ツリー ブロブ (*.dtb)
  • Linux ルート ファイルシステム
  • 起動スクリプトとランタイム ライブラリ

U-Boot と Linux は両方とも、ブート プロセス中にこの同じ UBIFS ボリュームにアクセスします。U-Boot はカーネル イメージと DTB をそのボリュームからロードしますが、Linux はその後、そのボリュームをルート ファイルシステムとしてマウントします。

このアプリケーション ノートで説明されている実装が完了すると、OSPI NOR フラッシュには Linux ブートに必要なすべてのソフトウェア コンポーネントが含まれるようになります。

  • tiboot3.bin
  • tispl.bin
  • U-Boot
  • Linux カーネル イメージ
  • デバイス ツリー ブロブ (DTB)
  • Linux ルート ファイルシステム

このアーキテクチャにより、SD/eMMC ストレージに依存しない Linux ブートが可能になります。