Device tree files
Device tree file types
The device tree is a set of text files in the Linux kernel source tree that describe the hardware of a certain platform. They are located at arch/arm/boot/dts/ and can have two extensions:
- *.dtsi files are device tree source include files. They describe hardware that is common to several platforms which include these files on their *.dts files.
- *.dts files are device tree source files. They describe one specific platform.
ConnectCore 6 system-on-module
The ConnectCore 6 is a system-on-module (SOM) solution that integrates:
- NXP i.MX6 system-on-chip featuring many interfaces such as UART, CAN, SPI, and I2C
- DDR3 memory
- eMMC memory
- PMIC chip
- Optional Wi-Fi chip
- Optional Bluetooth chip
- Optional Kinetis chip
The ConnectCore 6 system-on-module needs to be soldered to a carrier board. For this reason, there is not a single *.dts file for it. Instead, its hardware features are collected into *.dtsi files that can be included by a final platform *.dts.
Since the ConnectCore 6 system-on-module is offered in different variants, multiple *.dtsi files have been defined to describe the hardware inside:
File | Description |
---|---|
imx6qdl-ccimx6.dtsi | Common hardware for ConnectCore 6 system-on-chip (SOC) variants with either Quad/Dual CPU or Solo/DualLite CPU |
imx6q-ccimx6-w.dtsi | ConnectCore 6 system-on-module variant with Quad/Dual CPU and wireless (no Bluetooth) |
imx6q-ccimx6-wb.dtsi | ConnectCore 6 system-on-module variant with Quad/Dual CPU, wireless, and Bluetooth |
imx6dl-ccimx6-w.dtsi | ConnectCore 6 system-on-module variant with Solo/DualLite CPU and wireless (no Bluetooth) |
imx6dl-ccimx6-wb.dtsi | ConnectCore 6 system-on-module variant with Solo/DualLite CPU, wireless, and Bluetooth |
Depending on your ConnectCore 6 variant, your final platform *.dts file will need to include one of these files.
ConnectCore 6 SBC
The ConnectCore 6 SBC is a carrier board assembling the ConnectCore 6 system-on-module. The SBC assembles additional hardware like HDMI, Ethernet PHY, audio chip, PCIe minicard, microSD card holder, user LEDs, and so on.
As a final platform, the SBC has a *.dts file that includes one of the ConnectCore 6 system-on-module *.dtsi files.
Include files
The SBC can assemble different variants of the ConnectCore 6 system-on-module, so the common hardware of the SBC is also described in several .dtsi files:
File | Description |
---|---|
imx6qdl-ccimx6sbc.dtsi | Common hardware for ConnectCore 6 SBC assembling a Quad/Dual or Solo/DualLite ConnectCore 6 system-on-module |
imx6q-ccimx6sbc.dtsi | Common hardware for ConnectCore 6 SBC assembling a Quad/Dual ConnectCore 6 system-on-module |
imx6dl-ccimx6sbc.dtsi | Common hardware for ConnectCore 6 SBC assembling a Solo/DualLite ConnectCore 6 system-on-module |
The last two files include the common file imx6qdl-ccimx6sbc.dtsi.
Final platform files
The final ConnectCore 6 SBC platform is described in a *.dts file:
File | Digi product smart part number | CPU family | Wireless | Bluetooth |
---|---|---|---|---|
imx6q-ccimx6sbc-id129.dts | CC-SB-WMX-J97C | Quad/Dual | ✓ | ✓ |
imx6q-ccimx6sbc-id130.dts | CC-SB-WMX-L87C | Quad/Dual | ✓ | ✓ |
imx6dl-ccimx6sbc-id131.dts | CC-SB-WMX-L76C | DualLite/Solo | ✓ | ✓ |
File | Digi product smart part number | CPU family | Wireless | Bluetooth |
---|---|---|---|---|
imx6qp-ccimx6qpsbc-id160.dts | CC-WMX-KK8D-TN | QuadPlus | ✓ | ✓ |
Graphical representation
The following graphic illustrates the composition of a .dts file.
Note To learn how to create a device tree for your custom carrier board and using a custom board ID, see Customize Digi Embedded Yocto for your carrier board.