Skip to content

Commit 0037d16

Browse files
Marek Vasutnxpfrankli
authored andcommitted
ARM: dts: imx: Add DT overlays for DH i.MX6 DHCOM SoM and boards
Add DT overlays to support DH i.MX6 DHCOM SoM carrier board expansion modules. The following DT overlays are implemented: - PDK2: - DH 497-200 Display board in edge connector X12 - DH 505-200 Display board in edge connector X12 - DH 531-100 SPI/I2C board in header X21 - DH 531-200 SPI/I2C board in header X22 - DH 560-200 Display board in edge connector X12 - PicoITX: - DH 626-100 Display board in edge connector X2 Signed-off-by: Marek Vasut <marex@nabladev.com> Signed-off-by: Frank Li <Frank.Li@nxp.com>
1 parent c59ebeb commit 0037d16

10 files changed

Lines changed: 341 additions & 3 deletions

arch/arm/boot/dts/nxp/imx/Makefile

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,31 @@ dtb-$(CONFIG_SOC_IMX53) += \
5858
imx53-voipac-bsb.dtb
5959
imx53-qsb-hdmi-dtbs := imx53-qsb.dtb imx53-qsb-hdmi.dtbo
6060
imx53-qsrb-hdmi-dtbs := imx53-qsrb.dtb imx53-qsb-hdmi.dtbo
61+
62+
imx6qdl-dhcom-pdk2-overlay-497-200-x12-dtbs := \
63+
imx6q-dhcom-pdk2.dtb \
64+
imx6qdl-dhcom-pdk2-overlay-497-200-x12.dtbo
65+
66+
imx6qdl-dhcom-pdk2-overlay-505-200-x12-ch101olhlwh-dtbs := \
67+
imx6q-dhcom-pdk2.dtb \
68+
imx6qdl-dhcom-pdk2-overlay-505-200-x12-ch101olhlwh.dtbo
69+
70+
imx6qdl-dhcom-pdk2-overlay-531-100-x21-dtbs := \
71+
imx6q-dhcom-pdk2.dtb \
72+
imx6qdl-dhcom-pdk2-overlay-531-100-x21.dtbo
73+
74+
imx6qdl-dhcom-pdk2-overlay-531-100-x22-dtbs := \
75+
imx6q-dhcom-pdk2.dtb \
76+
imx6qdl-dhcom-pdk2-overlay-531-100-x22.dtbo
77+
78+
imx6qdl-dhcom-pdk2-overlay-560-200-x12-dtbs := \
79+
imx6q-dhcom-pdk2.dtb \
80+
imx6qdl-dhcom-pdk2-overlay-560-200-x12.dtbo
81+
82+
imx6qdl-dhcom-picoitx-overlay-626-100-x2-ch101olhlwh-dtbs := \
83+
imx6q-dhcom-pdk2.dtb \
84+
imx6qdl-dhcom-picoitx-overlay-626-100-x2-ch101olhlwh.dtbo
85+
6186
dtb-$(CONFIG_SOC_IMX6Q) += \
6287
imx6dl-alti6p.dtb \
6388
imx6dl-apf6dev.dtb \
@@ -179,6 +204,18 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
179204
imx6q-cubox-i-som-v15.dtb \
180205
imx6q-dfi-fs700-m60.dtb \
181206
imx6q-dhcom-pdk2.dtb \
207+
imx6qdl-dhcom-pdk2-overlay-497-200-x12.dtb \
208+
imx6qdl-dhcom-pdk2-overlay-497-200-x12.dtbo \
209+
imx6qdl-dhcom-pdk2-overlay-505-200-x12-ch101olhlwh.dtb \
210+
imx6qdl-dhcom-pdk2-overlay-505-200-x12-ch101olhlwh.dtbo \
211+
imx6qdl-dhcom-pdk2-overlay-531-100-x21.dtb \
212+
imx6qdl-dhcom-pdk2-overlay-531-100-x21.dtbo \
213+
imx6qdl-dhcom-pdk2-overlay-531-100-x22.dtb \
214+
imx6qdl-dhcom-pdk2-overlay-531-100-x22.dtbo \
215+
imx6qdl-dhcom-pdk2-overlay-560-200-x12.dtb \
216+
imx6qdl-dhcom-pdk2-overlay-560-200-x12.dtbo \
217+
imx6qdl-dhcom-picoitx-overlay-626-100-x2-ch101olhlwh.dtb \
218+
imx6qdl-dhcom-picoitx-overlay-626-100-x2-ch101olhlwh.dtbo \
182219
imx6q-display5-tianma-tm070-1280x768.dtb \
183220
imx6q-dmo-edmqmx6.dtb \
184221
imx6q-dms-ba16.dtb \
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
#include "imx6qdl-dhcom-overlay-panel-dpi.dtsi"
9+
10+
&{/} {
11+
lvds-encoder {
12+
compatible = "onnn,fin3385", "lvds-encoder";
13+
pclk-sample = <1>;
14+
15+
ports {
16+
#address-cells = <1>;
17+
#size-cells = <0>;
18+
19+
port@0 {
20+
reg = <0>;
21+
22+
lvds_bridge_in: endpoint {
23+
remote-endpoint = <&ipu1_dpi0_out>;
24+
};
25+
};
26+
27+
port@1 {
28+
reg = <1>;
29+
30+
lvds_bridge_out: endpoint {
31+
remote-endpoint = <&panel_in>;
32+
};
33+
};
34+
};
35+
};
36+
};
37+
38+
&display_bl {
39+
pwms = <&pwm1 0 5000000 0>;
40+
};
41+
42+
&i2c2 {
43+
#address-cells = <1>;
44+
#size-cells = <0>;
45+
46+
touchscreen@41 {
47+
compatible = "ilitek,ili251x";
48+
reg = <0x41>;
49+
interrupt-parent = <&gpio4>;
50+
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
51+
reset-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
52+
touchscreen-size-x = <16384>;
53+
touchscreen-size-y = <9600>;
54+
touchscreen-inverted-x;
55+
touchscreen-inverted-y;
56+
};
57+
58+
eeprom@50 {
59+
compatible = "atmel,24c04";
60+
reg = <0x50>;
61+
pagesize = <16>;
62+
};
63+
};
64+
65+
&ipu1_dpi0_out {
66+
remote-endpoint = <&lvds_bridge_in>;
67+
};
68+
69+
&panel {
70+
compatible = "chefree,ch101olhlwh-002";
71+
};
72+
73+
&panel_in {
74+
remote-endpoint = <&lvds_bridge_out>;
75+
};
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
#include <dt-bindings/gpio/gpio.h>
6+
#include <dt-bindings/input/input.h>
7+
#include <dt-bindings/interrupt-controller/arm-gic.h>
8+
#include <dt-bindings/pwm/pwm.h>
9+
10+
&{/} {
11+
display_bl: display-bl {
12+
compatible = "pwm-backlight";
13+
brightness-levels = <0 16 22 30 40 55 75 102 138 188 255>;
14+
default-brightness-level = <8>;
15+
enable-gpios = <&gpio3 27 GPIO_ACTIVE_HIGH>;
16+
status = "okay";
17+
};
18+
19+
lcd_display: disp0 {
20+
compatible = "fsl,imx-parallel-display";
21+
#address-cells = <1>;
22+
#size-cells = <0>;
23+
interface-pix-fmt = "rgb24";
24+
pinctrl-names = "default";
25+
pinctrl-0 = <&pinctrl_ipu1_lcdif>;
26+
status = "okay";
27+
28+
port@0 {
29+
reg = <0>;
30+
31+
ipu1_display_in: endpoint {
32+
remote-endpoint = <&ipu1_di0_disp0>;
33+
};
34+
};
35+
36+
port@1 {
37+
reg = <1>;
38+
39+
ipu1_dpi0_out: endpoint {
40+
remote-endpoint = <&panel_in>;
41+
};
42+
};
43+
};
44+
45+
panel: panel {
46+
backlight = <&display_bl>;
47+
48+
port {
49+
panel_in: endpoint {
50+
};
51+
};
52+
};
53+
};
54+
55+
&ipu1_di0_disp0 {
56+
remote-endpoint = <&ipu1_display_in>;
57+
};
58+
59+
&pwm1 {
60+
status = "okay";
61+
};
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
#include "imx6qdl-dhcom-overlay-panel-dpi.dtsi"
9+
10+
&display_bl {
11+
pwms = <&pwm1 0 50000 PWM_POLARITY_INVERTED>;
12+
};
13+
14+
&ipu1_dpi0_out {
15+
remote-endpoint = <&panel_in>;
16+
};
17+
18+
&panel {
19+
compatible = "dataimage,scf0700c48ggu18";
20+
};
21+
22+
&panel_in {
23+
remote-endpoint = <&ipu1_dpi0_out>;
24+
};
25+
26+
&touch_som { /* TSC2004 */
27+
status = "okay";
28+
};
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
#include "imx6qdl-dhcom-overlay-panel-dpi-ch101olhlwh.dtsi"
9+
10+
&{/} {
11+
gpio-keys {
12+
/* BUTTON1 GPIO-B conflicts with touchscreen reset */
13+
button-1 {
14+
/* Use status as /delete-node/ does not work in DTOs */
15+
status = "disabled";
16+
};
17+
};
18+
19+
led {
20+
/* LED7 GPIO-H conflicts with touchscreen IRQ */
21+
led-7 {
22+
/* Use status as /delete-node/ does not work in DTOs */
23+
status = "disabled";
24+
};
25+
};
26+
};
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
&ecspi1 {
9+
#address-cells = <1>;
10+
#size-cells = <0>;
11+
status = "okay";
12+
13+
eeprom@1 {
14+
compatible = "microchip,25aa010a", "atmel,at25";
15+
reg = <1>;
16+
address-width = <8>;
17+
pagesize = <16>;
18+
size = <128>;
19+
spi-max-frequency = <5000000>;
20+
};
21+
};
22+
23+
&i2c2 {
24+
#address-cells = <1>;
25+
#size-cells = <0>;
26+
27+
eeprom@56 {
28+
compatible = "atmel,24c04";
29+
reg = <0x56>;
30+
pagesize = <16>;
31+
};
32+
};
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
&ecspi2 {
9+
#address-cells = <1>;
10+
#size-cells = <0>;
11+
status = "okay";
12+
13+
eeprom@0 {
14+
compatible = "microchip,25aa010a", "atmel,at25";
15+
reg = <0>;
16+
address-width = <8>;
17+
pagesize = <16>;
18+
size = <128>;
19+
spi-max-frequency = <5000000>;
20+
};
21+
};
22+
23+
&i2c1 {
24+
#address-cells = <1>;
25+
#size-cells = <0>;
26+
27+
eeprom@56 {
28+
compatible = "atmel,24c04";
29+
reg = <0x56>;
30+
pagesize = <16>;
31+
};
32+
};
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2021-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
#include "imx6qdl-dhcom-overlay-panel-dpi.dtsi"
9+
10+
&display_bl {
11+
pwms = <&pwm1 0 50000 PWM_POLARITY_INVERTED>;
12+
};
13+
14+
&i2c2 {
15+
#address-cells = <1>;
16+
#size-cells = <0>;
17+
18+
touchscreen@38 {
19+
compatible = "edt,edt-ft5406";
20+
reg = <0x38>;
21+
pinctrl-names = "default";
22+
pinctrl-0 = <&pinctrl_dhcom_e>;
23+
/* Touchscreen IRQ GPIO-E conflicts with LED5 GPIO */
24+
interrupt-parent = <&gpio4>;
25+
interrupts = <5 IRQ_TYPE_EDGE_FALLING>; /* GPIO E */
26+
};
27+
};
28+
29+
&ipu1_dpi0_out {
30+
remote-endpoint = <&panel_in>;
31+
};
32+
33+
&panel {
34+
compatible = "edt,etm0700g0edh6";
35+
};
36+
37+
&panel_in {
38+
remote-endpoint = <&ipu1_dpi0_out>;
39+
};
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2+
/*
3+
* Copyright (C) 2023-2026 Marek Vasut
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
#include "imx6qdl-dhcom-overlay-panel-dpi-ch101olhlwh.dtsi"

arch/arm/boot/dts/nxp/imx/imx6qdl-dhcom-som.dtsi

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// SPDX-License-Identifier: GPL-2.0+
22
/*
3-
* Copyright (C) 2015-2021 DH electronics GmbH
4-
* Copyright (C) 2018 Marek Vasut <marex@denx.de>
3+
* Copyright (C) 2015-2026 DH electronics GmbH
4+
* Copyright (C) 2018-2026 Marek Vasut
55
*/
66

77
#include <dt-bindings/pwm/pwm.h>
@@ -303,7 +303,7 @@
303303
};
304304
};
305305

306-
touchscreen@49 { /* TSC2004 */
306+
touch_som: touchscreen@49 { /* TSC2004 */
307307
compatible = "ti,tsc2004";
308308
interrupts-extended = <&gpio4 14 IRQ_TYPE_EDGE_FALLING>;
309309
pinctrl-0 = <&pinctrl_tsc2004>;

0 commit comments

Comments
 (0)