インテルのみ表示可能 — GUID: pde1458167545277
Ixiasoft
5.1.1. 目的
5.1.2. ソフトウェア開発プラットフォームのコンポーネントの構築
5.1.3. アプリケーションに向けたオペレーティング・システムの選択
5.1.4. Linuxに向けたソフトウェア開発プラットフォームの構築
5.1.5. ベアメタル・アプリケーションに向けたソフトウェア開発プラットフォームの構築
5.1.6. パートナーOSまたはRTOSに向けたソフトウェア開発プラットフォームの構築
5.1.7. ブート・ローダー・ソフトウェアの選択
5.1.8. 開発、デバッグおよびトレースに向けたソフトウェア・ツールの選択
5.1.9. ボードの立ち上げに関する考慮事項
5.1.10. ブートおよびコンフィグレーションに関するデザインの考慮事項
5.1.11. フラッシュ・デバイス・ドライバーに関するデザインの考慮事項
5.1.12. HPS ECCに関するデザインの考慮事項
5.1.13. セキュリティーに関するデザインの考慮事項
5.1.14. エンベデッド・ソフトウェアのデバッグとトレース
インテルのみ表示可能 — GUID: pde1458167545277
Ixiasoft
5.1.4.4. Linuxのデバイスツリーに関するデザインの考慮事項
Linuxのデバイスツリーは、Linuxオペレーティング・システムのカーネルに基盤となるハードウェアを記述するデータ構造です。このデータ構造をOSのカーネルへ渡すことで、単一のOSバイナリーでハードウェアの多くのバリエーションをサポートすることが可能になります。この柔軟性は、ハードウェアにFPGAが含まれている場合に、特に重要になります。
Linuxのデバイスツリーを管理するために推奨される手順は、次のとおりです。
- インテルSoC開発キットを対象とするLinuxカーネル・ソース・コードで提供されているSoC FPGAリファレンス・デバイス・ツリーから開始します。これらは、デバイスのHPS部分をカバーしますが、プロジェクトごとに異なるFPGA部分はカバーしません。SD/MMC、QSPI、NANDの各バージョンが、カーネル・ソース・コードとともに提供されています。
- 必要に応じてデバイスツリーを編集し、インテルSoC開発キットからのボードの変更に対応します。
- 必要に応じてデバイスツリーを編集し、FPGAソフトIPをターゲットとするLinuxドライバーに対応します。
注: Linux Device Tree Generatorは、SoC EDSの一部として提供されるカスタムツールであり、関連するGSRDでターゲットにしているLinuxカーネルのバージョンのみをサポートします。
図 18. Linuxに向けたGSRDのデバイスツリー生成フロー
注: Linux Device Tree Generatorは、関連するGSRDがターゲットにしているLinuxカーネルのバージョンでのみテストされ、そのバージョンのみをサポートします。デザインが異なるLinuxカーネルのバージョンをターゲットにしている場合、インテルでは、Linux Device Tree Generatorを使用しないことを推奨しています。代わりに、デバイスツリーを手動で管理します。カーネルとともに提供されるデバイス・ツリー・ファイルをベースラインとして使用し、FPGA IPおよびボード情報を手動で追加します。
詳細に関しては、LinuxのDevice Tree Generator User Guideを参照してください。