Show Contents

# 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 6UL system-on-module

The ConnectCore 6UL is a system-on-module (SOM) solution that integrates:

- NXP i.MX6 UltraLite system-on-chip featuring many interfaces such as UART, CAN, SPI, and I2C
- DDR3 memory
- NAND flash memory
- PMIC chip
- Micro Controller Assist (MCA) chip

- Optional Wi-Fi + Bluetooth chip

The ConnectCore 6UL 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 6UL system-on-module is offered in different variants, multiple *.dtsi files have been defined to describe the hardware inside:

File | Description
--- | ---
imx6ul-ccimx6ul.dtsi | Common hardware for ConnectCore 6UL system-on-module (SOM) variants
imx6ul-ccimx6ul-wb.dtsi | ConnectCore 6UL system-on-module variant with wireless and Bluetooth

Depending on your ConnectCore 6UL variant, your final platform *.dts file will need to include one of these files.

## ConnectCore 6UL SBC Express and ConnectCore 6UL SBC Pro

The ConnectCore 6UL SBC Express and ConnectCore 6UL SBC Pro are carrier boards assembling the ConnectCore 6UL system-on-module. Both boards assemble additional hardware such as Ethernet PHY, microSD card holder, or user LEDs.

As final platforms, both boards have *.dts files that include one of the ConnectCore 6UL system-on-module *.dtsi files.

### Include files

Both the SBC Express and the SBC Pro boards can assemble different variants of the ConnectCore 6UL system-on-module, so the common hardware for the carrier boards is described in a board-specific .dtsi file:

File | Description
--- | ---
imx6ul-ccimx6ulstarter.dtsi | Common hardware for ConnectCore 6UL SBC Express
imx6ul-ccimx6ulsbc.dtsi | Common hardware for ConnectCore 6UL SBC Pro

### Final platform files

The final platforms are described in board-specific *.dts files:

File | Digi product smart part number | Wireless | Bluetooth
--- | --- | --- | ---
imx6ul-ccimx6ulstarter-id129.dts | CC-WMX6UL-START | ✓ | ✓
imx6ul-ccimx6ulsbc-id135.dts | CC-WMX6UL-KIT | ✓ | ✓

Note The device tree files without ID number are not linked to any Digi product. They correspond to:

- imx6ul-ccimx6ulsbc-wb.dts: generic device tree file for an SBC Pro with a wireless+Bluetooth SOM
- imx6ul-ccimx6ulsbc.dts: generic device tree file for an SBC Pro with a non-wireless SOM
- imx6ul-ccimx6ulstarter-wb.dts: generic device tree file for an SBC Express with a wireless+Bluetooth SOM
- imx6ul-ccimx6ulstarter.dts: generic device tree file for an SBC Express with a non-wireless SOM

### Graphical representation

The following graphic illustrates the composition of a .dts file.

### Device tree selection during boot process

Digi Embedded Yocto builds the different device tree files (*.dts) for different boards and SOM variants into binary device tree blobs (*.dtb). The device tree blobs are placed inside the linux partition along with the kernel binary.

The bootloader uses the BOARD_ID variable to determine which device tree blob to use when booting the system. See Carrier board version and ID.

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.

© 2018 Digi International Inc. All rights reserved.
Device tree files updated on 22 January 2018 02:43:37 PM