Hi,
I want to use a custom device tree in my meta-layer to add names for different GPIO lines to the system. I use this guide from Toradex as a reference but my GPIO names aren´t exported to the system.
I did the following steps
- I add a file
gpio_verdin_plus.dts
to arecipes-kernel/linux/linux-toradex/Verdin-Plus
directory in my meta-layer. The file looks like this:
&gpio3 {
gpio-line-names = "chrg-fault",
"Signal1",
"",
"",
"",
"",
"Signal2",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"";
};
- I add a file
verdin_plus.dts
to arecipes-kernel/linux/linux-toradex/Verdin-Plus
directory in my meta-layer. The file looks like this:
/dts-v1/;
#include "imx8mp-verdin.dtsi"
#include "imx8mp-verdin-wifi.dtsi"
#include "imx8mp-verdin-dev.dtsi"
#include "gpio.dts"
/ {
model = "Toradex Verdin iMX8M Mini WB on Verdin Development Board";
compatible = "toradex,verdin-imx8mp-wifi-dev",
"toradex,verdin-imx8mp-wifi",
"toradex,verdin-imx8mp",
"fsl,imx8mp";
};
- I add a
linux-toradex_%.bbappend
file torecipes-kernel/linux
with the following content:
SRC_URI += " \
file://Verdin-Plus/verdin_plus.dts \
file://Verdin-Plus/gpio_verdin_plus.dts \
"
do_configure:append:verdin-imx8mp () {
cp ${WORKDIR}/Verdin-Plus/gpio_verdin_plus.dts ${S}/arch/arm64/boot/dts/freescale/gpio.dts
cp ${WORKDIR}/Verdin-Plus/verdin_plus.dts ${S}/arch/arm64/boot/dts/freescale/verdin_plus.dts
}
- I add a
verdin-imx8mp-extra.conf
to theconf/machine
directory in my meta-layer with the following content:
KERNEL_DEVICETREE:append = " freescale/verdin_plus.dtb"
- Now I build everything for the Verdin Plus
- After the build I check the file
/proc/device-tree/soc@0/bus@30000000/gpio@30220000/gpio-line-names
and get the following output:
SODIMM_52SODIMM_54SODIMM_56SODIMM_58SODIMM_60SODIMM_62SODIMM_66SODIMM_64SODIMM_34SODIMM_19SODIMM_32SODIMM_30SODIMM_59SODIMM_57SODIMM_63SODIMM_61
So it looks that my Device Tree isn´t used. Where is my mistake?