Armadilloフォーラム

DeviceTreeをコンパイルして出力されるファイル

stnz

2022年8月5日 16時32分

お世話になります。
Armadillo-610での”第10章 ビルド手順”では、arch/arm/boot/dts/ 以下に、
armadillo-610-at-dtweb.dtbと拡張ボード用のdtbが2種出力されると記載があります。
at-dtwebを使わず、デバイスツリーを編集してコンパイルする場合は、同時に出力され
るarmadillo-640.dtbを使用すればよいという事でしょうか?

コメント

溝渕です。

> Armadillo-610での”第10章 ビルド手順”では、arch/arm/boot/dts/ 以下に、
> armadillo-610-at-dtweb.dtbと拡張ボード用のdtbが2種出力されると記載があります。
> at-dtwebを使わず、デバイスツリーを編集してコンパイルする場合は、同時に出力され
> るarmadillo-640.dtbを使用すればよいという事でしょうか?

違います。armadillo-640.dtbは、Armadillo-640で利用するdtbです。

新規ボードを追加するテンプレートは次のようになると思いますので、参考にしてみてください。

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 552f558b496a..5c8d4bac9f50 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -493,7 +493,8 @@ dtb-$(CONFIG_SOC_IMX6UL) += \
        armadillo-610-at-dtweb.dtb \
        armadillo-iotg-a6.dtb \
        armadillo-iotg-a6-at-dtweb.dtb \
-       armadillo-iotg-a6-extboard.dtb
+       armadillo-iotg-a6-extboard.dtb \
+       armadillo-610-hoge.dtb
 dtb-$(CONFIG_SOC_IMX7D) += \
        imx7d-cl-som-imx7.dtb \
        imx7d-colibri-eval-v3.dtb \
diff --git a/arch/arm/boot/dts/armadillo-610-hoge.dts b/arch/arm/boot/dts/armadillo-610-hoge.dts
new file mode 100644
index 000000000000..238514f63e46
--- /dev/null
+++ b/arch/arm/boot/dts/armadillo-610-hoge.dts
@@ -0,0 +1,7 @@
+/*
+ * Copyright (C) XXX
+ *
+ * SPDX-License-Identifier: YYY
+ */
+
+#include "armadillo-610.dtsi"

溝渕様、回答ありがとうございます。
適当なファイルarmadillo-610-hoge.dtsを新たに作成してコンパイルする所迄は理解致しました。
追加質問ですが、元々のarmadillo-610内にあるa610.dtbに相当するファイルは、何れの出力ファイルにあたるのでしょうか?
また、このhogeに加算した部分が、出力ファイル3種全部に適用されるという事で間違っていないでしょうか?

溝渕です。

> 追加質問ですが、元々のarmadillo-610内にあるa610.dtbに相当するファイルは、何れの出力ファイルにあたるのでしょうか?

工場出荷時のArmadillo-610 開発セットに書き込まれているa610.dtbは、以下より取得可能な「Grove用 DTB (Device Tree Blob)」です。

[Armadillo-610 Linuxカーネル]
https://armadillo.atmark-techno.com/resources/software/armadillo-610/li…

> また、このhogeに加算した部分が、出力ファイル3種全部に適用されるという事で間違っていないでしょうか?

いえ。違います。

前提として、デバイスツリーにはハードウェアの構成情報が書かれています。

Armadillo-610 開発セットで、CON10(Groveインターフェース)を利用する場合は、"armadillo-610-extboard-eva-grove.dtb"を利用します。このソースは、"armadillo-610-extboard-eva-grove.dts"です。

Armadillo-610 開発セットで、CON11(LCDインターフェース)を利用する場合は、"armadillo-610-extboard-eva-lcd.dtb"を利用します。このソースは、"armadillo-610-extboard-eva-lcd.dts"です。

at-dtwebを使って、任意の構成を構築する場合は、"armadillo-640-at-dtweb.dtb"を利用します。このソースは、"armadillo-640-at-dtweb.dts"です。

Armadillo-610の拡張ボードを新たに作成した場合は、at-dtwebを利用するか、新しくdtb(dts)を作成する必要があります。先程お渡ししたテンプレートはこのパターンです。