ブログ

Armadillo-X1, Armadillo-IoT G3/G3L: Device Treeの概要

at_ito
2017年4月3日 5時40分

Armadillo-X1, Armadillo-IoT G3/G3Lでは、拡張ボードのマルチプレクスの設定や、ドライバーの設定を行うにはDevice Treeの設定が必要になります。

ここではDevice Treeの概要と、Device Treeについての調べ方について簡単に紹介します。

1. Device Treeとは

従来のLinuxカーネルで、ドライバー等に記述されていたハードウェアの細かい情報を、ドライバーではなく別のデータ構造体として記述するようにしたものです。

Linuxカーネルのソースコードアーカイブ内部にあるファイルに記述されており、そのファイルを修正することで設定を行います。

Armadilloでは主に以下の内容を記述します。

  • 各ピンのマルチプレクス設定
  • 各ドライバーで使用するハードウェア情報

2. Device Tree関連のファイルについて

Device Treeに関連するファイルの種類について以下に説明します。

ファイルの種類拡張子説明
Device Tree Source(DTS) .dts .dtsi ハードウェア情報を記述するファイル
Device Tree Blob(DTB) .dtb DTSをDevice Tree Compiler(DTC)にてコンパイルするとできるバイナリファイル
Armadillo起動時にLinuxカーネルから読み込まれる

Armadilloに関係するファイルは以下の通りです。

ファイル名説明
arch/arm/boot/dts/armadillo_x1.dts
arch/arm/boot/dts/armadillo_iotg_g3.dts
arch/arm/boot/dts/armadillo_iotg_g3l.dts
各製品毎のDTS
Device Treeを修正する場合は基本的にはこのファイルを修正する
arch/arm/boot/dts/armadillo_x1_*.dts
arch/arm/boot/dts/armadillo_iotg_g3_*.dts
arch/arm/boot/dts/armadillo_iotg_g3l_*.dts
各製品毎のDTSにHowto用の設定を追加したもの
arch/arm/boot/dts/armadillo_x1.dtb
arch/arm/boot/dts/armadillo_iotg_g3.dtb
arch/arm/boot/dts/armadillo_iotg_g3l.dtb
各製品毎のDTSをコンパイルしてDTBにしたもの
Armadilloに配置して使用するファイル