Select the version of your OS from the tabs below. If you don't know the version you are using, run the command cat /etc/os-release
or cat /etc/issue
on the board.
Warning: Device Tree Overlays were introduced in BSP 5. Therefore, this information does not apply to earlier BSPs.
Device Tree Overlays (DTO) provide a way to modify the overall device tree without re-compiling the complete device tree.
Overlays are small pieces, or fragments of a complete device tree, and can be added or removed as needed, often enabling/disabling hardware components in the system.
Because of this flexible nature, overlays provide an advantageous way of describing peripheral hardware that can be added or removed from the system. It is also useful for tweaking the parameters of existing hardware before committing it to a complete device tree.
In a very brief description, the process of designing a Device Tree Overlay comprises three macro steps:
This article will explore these steps for the Toradex BSP Layers and Reference Images for Yocto Project. For information specific to Torizon, see the Device Tree Overlays on Torizon article.
The development cycle of a device tree overlay, much like many other software components that you plan to integrate into your custom Yocto Project build might have three phases. You are of course free to do it differently, but here's how this article suggests:
To reduce complexity and also to provide you with example implementations, Toradex provides pre-built Device Tree Overlays for the add-on products (Display and Touch Controllers) available in the webshop. Notice that only for the BSP 5.0 onwards, our reference images offer these Overlays as binaries (.dtbo files).
On a Toradex SoM with the Linux BSP > 5.0 installed, you can list these files available on the boot partition. As an example, using the the terminal of a Apalis iMX8:
$ ls /boot/overlays
apalis-imx8_ar0521_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo apalis-imx8_hdmi_overlay.dtbo
apalis-imx8_lvds_overlay.dtbo apalis-imx8_ov5640-2_overlay.dtbo apalis-imx8_ov5640_overlay.dtbo
display-dpi-lt170410_overlay.dtbo display-edt5.7_overlay.dtbo display-edt7_overlay.dtbo
display-fullhd-imx6_overlay.dtbo display-fullhd_overlay.dtbo display-lt161010_overlay.dtbo
display-lt170410_overlay.dtbo display-vga_overlay.dtbo
To enable these overlays, see the Enable/Disable a Device Tree Overlay section. Some overlays are pre-enabled by default, refer to the Pre-enabled Device Tree Overlays section for this.
If you want to obtain the source code of the Device Tree Overlays provided by Toradex for the products available in the webshop, see the Build U-Boot and Linux Kernel from Source Code article.
Attention: the migration to device tree overlays is currently a work-in-progress. There are some overlays or carrier board-specific device trees listed in the table below that are missing. For more information, please consult the BSP Layers and Reference Images for Yocto Project Issue Tracker.
Note: Default resolution with these overlays: 800x480
See the Capacitive Touch Display 7" Parallel in the Webshop. See the Capacitive Touch Display 7" Parallel in the Toradex Developer Center.
Module | Board | Accessory | Kernel | Overlays |
---|---|---|---|---|
Apalis iMX6 | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | apalis-imx6_lcd-lt161010_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo |
Apalis iMX6 | Ixora V1.1/1.2 | toradex_5.4-2.3.x-imx | apalis-imx6_lcd-lt161010_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo | |
Apalis iMX6 | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4.y | apalis-imx6_parallel-rgb_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo display-lt161010_overlay.dtbo |
Apalis iMX6 | Ixora V1.1/1.2 | toradex_5.4.y | apalis-imx6_parallel-rgb_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo display-lt161010_overlay.dtbo | |
Apalis iMX8 | Display is not supported by module | |||
Apalis iMX8X [1] | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | apalis-imx8x_parallel-rgb_overlay.dtbo apalis-imx8x_atmel-mxt_overlay.dtbo display-lt161010_overlay.dtbo |
Apalis iMX8X [1] | Ixora V1.1/1.2 | toradex_5.4-2.3.x-imx | apalis-imx8x_parallel-rgb_overlay.dtbo apalis-imx8x_atmel-mxt_overlay.dtbo display-lt161010_overlay.dtbo | |
Colibri iMX6 | Evaluation, Aster V1.0, Iris V1.1, Viola (Plus) V1.1/1.2 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-lt161010_overlay.dtbo colibri-imx6_atmel-mxt-adapter_overlay.dtbo |
Colibri iMX6 | Aster V1.1, Iris V2.0, Viola (Plus) V1.3 | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-lt161010_overlay.dtbo colibri-imx6_atmel-mxt-connector_overlay.dtbo | |
Colibri iMX6 | Evaluation, Aster V1.0, Iris V1.1, Viola (Plus) V1.1/1.2 | Capacitive Touch Adapter | toradex_5.4.y | colibri-imx6_parallel-rgb_overlay.dtbo colibri-imx6_atmel-mxt-adapter_overlay.dtbo display-lt161010_overlay.dtbo |
Colibri iMX6 | Aster V1.1, Iris V2.0, Viola (Plus) V1.3 | toradex_5.4.y | colibri-imx6_parallel-rgb_overlay.dtbo colibri-imx6_atmel-mxt-connector_overlay.dtbo display-lt161010_overlay.dtbo | |
Colibri iMX6ULL 256/512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX6ULL 1GB (eMMC) | Evaluation, Aster V1.0, Iris V1.1, Viola (Plus) V1.1/1.2 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | colibri-imx6ull_lcd-lt161010_overlay.dtbo colibri-imx6ull_atmel-mxt-adapter_overlay.dtbo |
Colibri iMX6ULL 1GB (eMMC) | Aster V1.1, Iris V2.0, Viola (Plus) V1.3 | toradex_5.4-2.3.x-imx | colibri-imx6ull_lcd-lt161010_overlay.dtbo colibri-imx6ull_atmel-mxt-connector_overlay.dtbo | |
Colibri iMX6ULL 1GB (eMMC) | Evaluation | Capacitive Touch Adapter | toradex_5.4.y | colibri-imx6ull_parallel-rgb_overlay.dtbo display-lt161010_overlay.dtbo colibri-imx6ull_atmel-mxt-adapter_overlay.dtbo |
Colibri iMX7 Solo 256MB/Dual 512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster V1.0, Iris V1.1, Viola (Plus) V1.1/1.2 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-lt161010_overlay.dtbo colibri-imx7_atmel-mxt-adapter_overlay.dtbo |
Colibri iMX7 Dual 1GB (eMMC) | Aster V1.1, Iris V2.0, Viola (Plus) V1.3 | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-lt161010_overlay.dtbo colibri-imx7_atmel-mxt-connector_overlay.dtbo | |
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster V1.0, Iris V1.1, Viola (Plus) V1.1/1.2 | Capacitive Touch Adapter | toradex_5.4.y | colibri-imx7_parallel-rgb_overlay.dtbo colibri-imx7_atmel-mxt-adapter_overlay.dtbo display-lt161010_overlay.dtbo |
Colibri iMX7 Dual 1GB (eMMC) | Aster V1.1, Iris V2.0, Viola (Plus) V1.3 | toradex_5.4.y | colibri-imx7_parallel-rgb_overlay.dtbo colibri-imx7_atmel-mxt-connector_overlay.dtbo display-lt161010_overlay.dtbo | |
Colibri iMX8X | Evaluation, Aster V1.0, Iris V1.1, Viola (Plus) V1.1/1.2 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_atmel-mxt-adapter_overlay.dtbo display-lt161010_overlay.dtbo |
Colibri iMX8X | Aster V1.1, Iris V2.0, Viola (Plus) V1.3 | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_atmel-mxt-connector_overlay.dtbo display-lt161010_overlay.dtbo | |
Verdin iMX8M Mini | Dahlia, Development | Verdin DSI to RGB Adapter | Display is not (yet) supported by module | |
Verdin iMX8M Plus | Dahlia, Development | Verdin DSI to RGB Adapter | Display is not (yet) supported by module |
[1] the latest supported BSP release for Apalis iMX8X is the 5.4.0 quarterly.
Note: Default resolution with these overlays: 1280x800
See the Capacitive Touch Display 10.1" LVDS in the Webshop. See the Capacitive Touch Display 10.1" LVDS in the Toradex Developer Center.
Module | Board | Accessory | Kernel | Overlays |
---|---|---|---|---|
Apalis iMX6 | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | apalis-imx6_lvds-lt170410_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo |
Apalis iMX6 | Ixora V1.1/1.2 | toradex_5.4-2.3.x-imx | apalis-imx6_lvds-lt170410_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo | |
Apalis iMX6 | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4.y | apalis-imx6_lvds_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo |
Apalis iMX6 | Ixora V1.1/1.2 | toradex_5.4.y | apalis-imx6_lvds_overlay.dtbo apalis-imx6_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo | |
Apalis iMX8 | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | apalis-imx8_lvds_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo |
Apalis iMX8 | Ixora V1.1/1.2 | toradex_5.4-2.3.x-imx | apalis-imx8_lvds_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo | |
Apalis iMX8X [1] | Evaluation, Ixora V1.0 | Capacitive Touch Adapter | toradex_5.4-2.3.x-imx | apalis-imx8x_lvds_overlay.dtbo apalis-imx8x_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo |
Apalis iMX8X [1] | Ixora V1.1/1.2 | toradex_5.4-2.3.x-imx | apalis-imx8x_lvds_overlay.dtbo apalis-imx8x_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo | |
Colibri iMX6 | Iris v2.0 | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-lt170410_overlay.dtbo colibri-imx6_atmel-mxt-connector_overlay.dtbo | |
Colibri iMX6 | Iris v2.0 | toradex_5.4.y | colibri-imx6_parallel-rgb-lvds_overlay.dtbo colibri-imx6_atmel-mxt-connector_overlay.dtbo display-dpi-lt170410_overlay.dtbo | |
Colibri iMX6ULL 256/512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX6ULL 1GB (eMMC) | Iris v2.0 | toradex_5.4-2.3.x-imx | colibri-imx6ull_atmel-mxt-connector_overlay.dtbo colibri-imx6ull_lcd-lt170410_overlay.dtbo | |
Colibri iMX6ULL 1GB (eMMC) | Iris v2.0 | toradex_5.4.y | colibri-imx6ull_parallel-rgb-lvds_overlay.dtbo display-dpi-lt170410_overlay.dtbo colibri-imx6ull_atmel-mxt-connector_overlay.dtbo | |
Colibri iMX7 Solo 256MB/Dual 512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX7 Dual 1GB (eMMC) | Iris v2.0 | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-lt170410_overlay.dtbo colibri-imx7_atmel-mxt-connector_overlay.dtbo | |
Colibri iMX7 Dual 1GB (eMMC) | Iris v2.0 | toradex_5.4.y | colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dtbo colibri-imx7_atmel-mxt-connector_overlay.dtbo display-dpi-lt170410_overlay.dtbo | |
Colibri iMX8X | Iris v2.0 | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb-lvds_overlay.dtbo colibri-imx8x_atmel-mxt-connector_overlay.dtbo display-dpi-lt170410_overlay.dtbo | |
Verdin iMX8M Mini | Dahlia, Development | Verdin DSI to LVDS Adapter | toradex_5.4-2.3.x-imx | touch-atmel-mxt_overlay.dtbo verdin-imx8mm_sn65dsi84-lt170410_overlay.dtbo verdin-imx8mm_sn65dsi84_overlay.dtbo |
Verdin iMX8M Plus | Dahlia, Development | Verdin DSI to LVDS Adapter | toradex_5.4-2.3.x-imx | touch-atmel-mxt_overlay.dtbo verdin-imx8mp_sn65dsi84-lt170410_overlay.dtbo verdin-imx8mp_sn65dsi84_overlay.dtbo |
Verdin iMX8M Plus | Development | Verdin iMX8M Plus Mezzanine | toradex_5.4-2.3.x-imx | verdin-imx8mp_mezzanine-lvds-single-channel_overlay.dtbo display-lt170410_overlay.dtbo verdin-imx8mp_mezzanine-touch-atmel-mxt_overlay.dtbo |
[1] the latest supported BSP release for Apalis iMX8X is the 5.4.0 quarterly.
Note: Default resolution with these overlays: 800x480
See the Resistive Touch Display 7" Parallel in the Webshop. See the Resistive Touch Display 7" Parallel in the Toradex Developer Center.
Module | Board | Accessory | Kernel | Overlays |
---|---|---|---|---|
Apalis iMX6 | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx6_lcd-lt161010_overlay.dtbo apalis-imx6_stmpe-ts_overlay.dtbo | |
Apalis iMX6 | Evaluation, Ixora | toradex_5.4.y | apalis-imx6_parallel-rgb_overlay.dtbo apalis-imx6_stmpe-ts_overlay.dtbo display-lt161010_overlay.dtbo | |
Apalis iMX8 | Display is not supported by module | |||
Apalis iMX8X [1] | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx8x_parallel-rgb_overlay.dtbo apalis-imx8x_ad7879_overlay.dtbo display-lt161010_overlay.dtbo | |
Colibri iMX6 | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-lt161010_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo | |
Colibri iMX6 | Evaluation, Aster, Iris, Viola | toradex_5.4.y | colibri-imx6_parallel-rgb_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo display-lt161010_overlay.dtbo | |
Colibri iMX6ULL 256/512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX6ULL 1GB (eMMC) | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx6ull_lcd-lt161010_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo | |
Colibri iMX6ULL 1GB (eMMC) | Evaluation | toradex_5.4.y | colibri-imx6ull_parallel-rgb_overlay.dtbo display-lt161010_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo | |
Colibri iMX7 Solo 256MB/Dual 512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-lt161010_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo | |
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster, Iris, Viola | toradex_5.4.y | colibri-imx7_parallel-rgb_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo display-lt161010_overlay.dtbo | |
Colibri iMX8X | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_ad7879_overlay.dtbo display-lt161010_overlay.dtbo | |
Verdin iMX8M Mini | Dahlia, Development | Verdin DSI to RGB Adapter | Display is not (yet) supported by module | |
Verdin iMX8M Plus | Dahlia, Development | Verdin DSI to RGB Adapter | Display is not (yet) supported by module |
[1] the latest supported BSP release for Apalis iMX8X is the 5.4.0 quarterly.
Note: Default resolution with these overlays: 1920x1080
This interface is built into some of Toradex boards. Also, Toradex provides special HDMI adapters (See column Accessory). If the set module+board is not on this list, it doesn't support an HDMI interface.
Module | Board | Accessory | Kernel | Overlays |
---|---|---|---|---|
Apalis iMX6 | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx6_hdmi_overlay.dtbo | |
Apalis iMX6 | Evaluation, Ixora | toradex_5.4.y | apalis-imx6_hdmi_overlay.dtbo | |
Apalis iMX8 | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx8_hdmi_overlay.dtbo | |
Apalis iMX8X [1] | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx8x_dsihdmi_overlay.dtbo | |
Colibri iMX6 | Evaluation, Iris | toradex_5.4-2.3.x-imx | colibri-imx6_hdmi_overlay.dtbo | |
Colibri iMX6 | Aster, Viola (Plus) | Colibri HDMI Adapter | toradex_5.4-2.3.x-imx | colibri-imx6_hdmi_overlay.dtbo |
Colibri iMX6 | Evaluation, Iris | toradex_5.4.y | colibri-imx6_hdmi_overlay.dtbo | |
Colibri iMX6 | Aster, Viola (Plus) | Colibri HDMI Adapter | toradex_5.4.y | colibri-imx6_hdmi_overlay.dtbo |
Colibri iMX6ULL | Interface is not supported by the module | |||
Colibri iMX7 | Interface is not supported by the module | |||
Colibri iMX8X | Evaluation, Iris | DSI to HDMI Adapter | toradex_5.4-2.3.x-imx | colibri-imx8x_dsihdmi_overlay.dtbo |
Colibri iMX8X | Aster, Viola (Plus) | Interface is not supported by the boards | ||
Verdin iMX8M Mini | Dahlia, Development | Verdin DSI to HDMI Adapter | toradex_5.4-2.3.x-imx | verdin-imx8mm_lt8912_overlay.dtbo |
Verdin iMX8M Plus | Dahlia, Development | toradex_5.4-2.3.x-imx | verdin-imx8mp_native-hdmi_overlay.dtbo | |
Verdin iMX8M Plus | Dahlia, Development | Verdin DSI to HDMI Adapter | toradex_5.4-2.3.x-imx | verdin-imx8mp_lt8912_overlay.dtbo |
[1] the latest supported BSP release for Apalis iMX8X is the 5.4.0 quarterly.
Note: Default resolution with these overlays: 640x480
This interface is built into most of Toradex boards. If the board is not on this list, it doesn't have a VGA interface.
Module | Board | Kernel | Overlays |
---|---|---|---|
Apalis iMX6 | Evaluation | toradex_5.4-2.3.x-imx | apalis-imx6_vga_overlay.dtbo |
Apalis iMX6 | Evaluation | toradex_5.4.y | apalis-imx6_vga_overlay.dtbo |
Apalis iMX8 | Interface is not supported by module | ||
Apalis iMX8X | Interface is not supported by module | ||
Colibri iMX6 | Evaluation, Aster, Iris | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-vga_overlay.dtbo |
Colibri iMX6 | Evaluation, Aster, Iris | toradex_5.4.y | colibri-imx6_parallel-rgb_overlay.dtbo display-vga_overlay.dtbo |
Colibri iMX6ULL 256/512MB | Overlays are not supported on raw NAND based modules | ||
Colibri iMX6ULL 1GB (eMMC) | Evaluation, Aster, Iris | toradex_5.4-2.3.x-imx | colibri-imx6ull_parallel-rgb_vga_overlay.dtbo |
Colibri iMX6ULL 1GB (eMMC) | Evaluation | toradex_5.4.y | display-vga_overlay.dtbo colibri-imx6ull_parallel-rgb_overlay.dtbo |
Colibri iMX7 Solo 256MB/Dual 512MB | Overlays are not supported on raw NAND based modules | ||
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster, Iris | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-vga_overlay.dtbo |
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster, Iris | toradex_5.4.y | colibri-imx7_parallel-rgb_overlay.dtbo display-vga_overlay.dtbo |
Colibri iMX8X | Evaluation, Aster, Iris | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb_overlay.dtbo display-vga_overlay.dtbo |
Verdin iMX8M Mini | Interface is not supported by module | ||
Verdin iMX8M Plus | Interface is not supported by module |
Note: Default resolution with these overlays: 800x480
See the EDT 7.0" (EOL) in the Webshop. See the EDT Display in the Toradex Developer Center.
Module | Board | Accessory | Kernel | Overlays |
---|---|---|---|---|
Apalis iMX6 | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx6_lcd-lt161010_overlay.dtbo apalis-imx6_stmpe-ts_overlay.dtbo | |
Apalis iMX6 | Evaluation, Ixora | toradex_5.4.y | apalis-imx6_parallel-rgb_overlay.dtbo apalis-imx6_stmpe-ts_overlay.dtbo display-edt7_overlay.dtbo | |
Apalis iMX8 | Display is not supported by module | |||
Apalis iMX8X [1] | Evaluation, Ixora | toradex_5.4-2.3.x-imx | apalis-imx8x_parallel-rgb_overlay.dtbo apalis-imx8x_ad7879_overlay.dtbo display-edt7_overlay.dtbo | |
Colibri iMX6 | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-lt161010_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo | |
Colibri iMX6 | Evaluation, Aster, Iris, Viola | toradex_5.4.y | colibri-imx6_parallel-rgb_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo display-edt7_overlay.dtbo | |
Colibri iMX6ULL 256/512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX6ULL 1GB (eMMC) | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx6ull_lcd-lt161010_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo | |
Colibri iMX6ULL 1GB (eMMC) | Evaluation | toradex_5.4.y | colibri-imx6ull_parallel-rgb_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo display-edt7_overlay.dtbo | |
Colibri iMX7 Solo 256MB/Dual 512MB | Overlays are not supported on raw NAND based modules | |||
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-edt7_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo | |
Colibri iMX7 Dual 1GB (eMMC) | Evaluation, Aster, Iris, Viola | toradex_5.4.y | colibri-imx7_parallel-rgb_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo display-edt7_overlay.dtbo | |
Colibri iMX8X | Evaluation, Aster, Iris, Viola | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_ad7879_overlay.dtbo display-edt7_overlay.dtbo | |
Verdin iMX8M Mini | Dahlia, Development | Verdin DSI to RGB Adapter | Display is not (yet) supported by module | |
Verdin iMX8M Plus | Dahlia, Development | Verdin DSI to RGB Adapter | Display is not (yet) supported by module |
[1] the latest supported BSP release for Apalis iMX8X is the 5.4.0 quarterly.
Toradex turns on a pre-set of Device Tree Overlays to support the default display interfaces and panels.
Module | Kernel | Overlays | Supported devices |
---|---|---|---|
Apalis iMX6 | toradex_5.4-2.3.x-imx | apalis-imx6_hdmi_overlay.dtbo | HDMI Display |
Apalis iMX6 | toradex_5.4.y | apalis-imx6_parallel-rgb_overlay.dtbo display-edt7_overlay.dtbo apalis-imx6_stmpe-ts_overlay.dtbo apalis-imx6_hdmi_overlay.dtbo | HDMI Display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Apalis iMX8 | toradex_5.4-2.3.x-imx | apalis-imx8_hdmi_overlay.dtbo | HDMI Display |
Apalis iMX8X [1] | toradex_5.4-2.3.x-imx | apalis-imx8x_dsihdmi_overlay.dtbo apalis-imx8x_parallel-rgb_overlay.dtbo display-lt161010_overlay.dtbo apalis-imx8x_ad7879_overlay.dtbo | HDMI Display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
[1] the latest supported BSP release for Apalis iMX8X is the 5.4.0 quarterly.
Module | Kernel | Overlays | Supported devices |
---|---|---|---|
Colibri iMX6 | toradex_5.4-2.3.x-imx | colibri-imx6_lcd-vga_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Colibri iMX6 | toradex_5.4.y | colibri-imx6_parallel-rgb_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo display-vga_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Colibri iMX6ULL 256/512MB | By default the capacitive touch adapter, resistive touch and VESA VGA display timings are configured via regular device tree(s) as overlays are not supported on raw NAND based modules | Capacitive Touch Adapter, Capacitive Touch Display 7" Parallel, Resistive Touch Display 7" Parallel, VGA display, EDT 7.0" (EOL) | |
Colibri iMX6ULL 1GB (eMMC) | toradex_5.4-2.3.x-imx | colibri-imx6ull_parallel-rgb_vga_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Colibri iMX6ULL 1GB (eMMC) | toradex_5.4.y | colibri-imx6ull_parallel-rgb_overlay.dtbo display-vga_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Colibri iMX7 Solo 256MB/Dual 512MB | By default the capacitive touch adapter, resistive touch and VESA VGA display timings are configured via regular device tree(s) as overlays are not supported on raw NAND based modules | Capacitive Touch Adapter, Capacitive Touch Display 7" Parallel, Resistive Touch Display 7" Parallel, VGA display, EDT 7.0" (EOL) | |
Colibri iMX7 Dual 1GB (eMMC) | toradex_5.4-2.3.x-imx | colibri-imx7_lcd-vga_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Colibri iMX7 Dual 1GB (eMMC) | toradex_5.4.y | colibri-imx7_parallel-rgb_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo display-vga_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Colibri iMX8X | toradex_5.4-2.3.x-imx | colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_ad7879_overlay.dtbo display-vga_overlay.dtbo | VGA display, EDT 7.0" (EOL), Resistive Touch Display 7" Parallel |
Module | Board | Kernel | Accessory | Overlays | Supported devices |
---|---|---|---|---|---|
Verdin iMX8M Mini | Dahlia, Development | toradex_5.4-2.3.x-imx | Verdin DSI to HDMI Adapter | verdin-imx8mm_lt8912_overlay.dtbo | HDMI Display |
Verdin iMX8M Plus | Dahlia, Development | toradex_5.4-2.3.x-imx | * native interface, no accessory required | verdin-imx8mp_native-hdmi_overlay.dtbo | HDMI Display |
Verdin iMX8M Plus | Dahlia, Development | toradex_5.4-2.3.x-imx | Verdin DSI to HDMI Adapter | verdin-imx8mp_lt8912_overlay.dtbo | HDMI Display |
To enable or disable applying a pre-built overlay on a Toradex SoM just add/remove it to/from the file overlays.txt
located on the boot partition, and reboot the system.
For example, one wants to disable a parallel RGB interface and display on Colibri-iMX8X and enable an HDMI interface (using DSI-to-HDMI adapter). The initial overlays.txt
file looks like:
# cat /boot/overlays.txt
fdt_overlays=colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_ad7879_overlay.dtbo display-edt7_overlay.dtbo
Steps to disable a parallel RGB and enable an HDMI:
overlays.txt
file with any text editor, e.g. vi
:# vi /boot/overlays.txt
# cat /boot/overlays.txt
fdt_overlays=colibri-imx8x_dsihdmi_overlay.dtbo
# sync
# reboot
Note: In case you find yourself with a non-working kernel after applying the overlays, see the Removing a conflicting DTO section.
Note: If you want to obtain the source code of the Device Tree Overlays provided by Toradex for the products available in the webshop, see the Build U-Boot and Linux Kernel from Source Code article.
The most recommended way to create a new overlay is to start looking at our evaluation boards' overlays and then adapt to your project's needs. You can find those overlays in the device-tree-overlays repository.
As with normal device trees, overlays must get explicitly written for the correct kernel version. This depends on the BSP you are using from Toradex and can be checked on Build U-Boot and Linux Kernel from Source Code article.
As an example, here is the device tree overlay for parallel RGB on a Colibri iMX8X (colibri-imx8x_parallel-rgb_overlay.dts):
// Enable the parallel RGB interface on Colibri iMX8X
/dts-v1/;
/plugin/;
/ {
compatible = "toradex,colibri-imx8x";
};
&adma_pwm {
status = "okay";
};
&backlight {
status = "okay";
};
&display_lcdif {
status = "okay";
};
&panel_dpi {
status = "okay";
};
This overlay, if loaded, is directly appended to imx8qxp-colibri-eval-v3.dts. This device tree, however, includes the "System on Module Level" device tree imx8qxp-colibri.dtsi which contains most of the device tree nodes.
If the overlay gets loaded, it gets integrated into the already loaded device tree. To add or overwrite properties can be achieved with the ampersand character the same way as described in section Overwriting_properties.
Devicetree overlays have to be denoted with /plugin/;
in the header.
For further reading on this topic, we refer to the kernel documentation: https://www.kernel.org/doc/html/latest/devicetree/overlay-notes.html?highlight=overlays
To build the Device Tree Overlay, see the Build U-Boot and Linux Kernel from Source Code article.
To deploy a custom overlay on a Toradex SoM with the Linux BSP >= 5.0 installed:
.dtbo
file to the overlays/
directory in the boot partition;.dtbo
to the overlays.txt
file. This file contains a space separated list of overlays. For example:$ cat /boot/overlays.txt
fdt_overlays=verdin-imx8mm_lt8912_overlay.dtbo verdin-imx8mm_ov5640_overlay.dtbo
After changing the overlays.txt
, run the command sync
and reboot the board. Do not power-cycle because the edits done may not sync to the file system.
Note: In case you find yourself with a non-working kernel after applying the overlay, see the Removing a conflicting DTO section
In case you find yourself with a non-working kernel (normally, stuck at the "Loading kernel..." message), you can choose the way to solve this issue:
> setenv skip_fdt_overlays 1
> boot
ums 0 mmc 0
After this command, you should see a BOOT partition show up on your PC. Delete the conflicting .dtbo and the corresponding item in the overlays.txt file.
Note: Check your carrier board datasheet to what ports and jumper configurations work with USB-OTG. With Toradex carrier boards, it requires using the correct port or a small jumper removal (like Ixora's JP2).
It is expected that you have some knowledge of Yocto Project/OpenEmbedded. The minimum prerequisite is being able to Build a Reference Image with Yocto Project.
If you decide to integrate your final changes into full device trees, read the article Custom meta layers, recipes and images in Yocto Project (hello-world examples).
If you decide to deploy the overlays, two steps are required and explained below:
overlays.txt
, making sure they are enabled.There are currently two recipes that handle device tree overlays:
You can, for instance, write your own bbappends to add your device tree overlays repository instead of ours.
The class meta-toradex-bsp-common/classes/image_type_tezi.bbclass is responsible for adding overlays that will be applied during boot time. It uses the variable TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT
that is set by default in our machine configuration files, either machine.conf
or machine.inc
.
You can find them using e.g. grep
inside the layers
directory:
$ cd <yocto projet setup>
$ grep -nre "TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT" layers/*
Then you need to either append to or override the variable. One possibility is to use a <machine>-extra.conf
file. You can find an example on Custom meta layers, recipes and images in Yocto Project (hello-world examples).