1 // SPDX-License-Identifier: (GPL-2.0+)
3 * Copyright (C) 2015 DH electronics GmbH
4 * Copyright (C) 2018 Marek Vasut <marex@denx.de>
9 #include "imx6q-dhcom-som.dtsi"
10 #include <dt-bindings/leds/common.h>
13 model = "Freescale i.MX6 Quad DHCOM Premium Developer Kit (2)";
14 compatible = "dh,imx6q-dhcom-pdk2", "dh,imx6q-dhcom-som", "fsl,imx6q";
17 stdout-path = "serial0:115200n8";
20 clk_ext_audio_codec: clock-codec {
21 compatible = "fixed-clock";
23 clock-frequency = <24000000>;
26 display_bl: display-bl {
27 compatible = "pwm-backlight";
28 pwms = <&pwm1 0 50000 PWM_POLARITY_INVERTED>;
29 brightness-levels = <0 16 22 30 40 55 75 102 138 188 255>;
30 default-brightness-level = <8>;
31 enable-gpios = <&gpio3 27 GPIO_ACTIVE_HIGH>;
36 compatible = "fsl,imx-parallel-display";
39 interface-pix-fmt = "rgb24";
40 pinctrl-names = "default";
41 pinctrl-0 = <&pinctrl_ipu1_lcdif>;
47 lcd_display_in: endpoint {
48 remote-endpoint = <&ipu1_di0_disp0>;
55 lcd_display_out: endpoint {
56 remote-endpoint = <&lcd_panel_in>;
63 compatible = "gpio-keys";
64 pinctrl-names = "default";
65 pinctrl-0 = <&pinctrl_keys_pdk2>;
70 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
77 gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
84 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
91 gpios = <&gpio6 3 GPIO_ACTIVE_LOW>;
97 compatible = "gpio-leds";
98 pinctrl-names = "default";
99 pinctrl-0 = <&pinctrl_leds_pdk2>;
102 * Disable led-5, because GPIO E is
103 * already used as touch interrupt.
106 color = <LED_COLOR_ID_GREEN>;
107 function = LED_FUNCTION_INDICATOR;
108 gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* GPIO E */
109 default-state = "off";
114 color = <LED_COLOR_ID_GREEN>;
115 function = LED_FUNCTION_INDICATOR;
116 gpios = <&gpio4 20 GPIO_ACTIVE_HIGH>; /* GPIO F */
117 default-state = "off";
121 color = <LED_COLOR_ID_GREEN>;
122 function = LED_FUNCTION_INDICATOR;
123 gpios = <&gpio4 7 GPIO_ACTIVE_HIGH>; /* GPIO H */
124 default-state = "off";
128 color = <LED_COLOR_ID_GREEN>;
129 function = LED_FUNCTION_INDICATOR;
130 gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* GPIO I */
131 default-state = "off";
136 compatible = "edt,etm0700g0edh6";
137 ddc-i2c-bus = <&i2c2>;
138 backlight = <&display_bl>;
141 lcd_panel_in: endpoint {
142 remote-endpoint = <&lcd_display_out>;
148 compatible = "fsl,imx-audio-sgtl5000";
149 model = "imx-sgtl5000";
150 ssi-controller = <&ssi1>;
151 audio-codec = <&sgtl5000>;
153 "MIC_IN", "Mic Jack",
154 "Mic Jack", "Mic Bias",
155 "LINE_IN", "Line In Jack",
156 "Headphone Jack", "HP_OUT";
163 pinctrl-names = "default";
164 pinctrl-0 = <&pinctrl_audmux_ext>;
177 ddc-i2c-bus = <&i2c2>;
183 compatible = "fsl,sgtl5000";
185 #sound-dai-cells = <0>;
186 clocks = <&clk_ext_audio_codec>;
187 VDDA-supply = <®_3p3v>;
188 VDDIO-supply = <&sw2_reg>;
192 pinctrl-names = "default";
193 pinctrl-0 = <&pinctrl_touchscreen>;
194 compatible = "edt,edt-ft5406";
196 interrupt-parent = <&gpio4>;
197 interrupts = <5 IRQ_TYPE_EDGE_FALLING>; /* GPIO E */
202 pinctrl-names = "default";
203 pinctrl-0 = <&pinctrl_hog_base &pinctrl_hog>;
205 pinctrl_hog: hog-grp {
207 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x400120b0
208 MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x400120b0
209 MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x400120b0
210 MX6QDL_PAD_CSI0_DAT17__GPIO6_IO03 0x400120b0
211 MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x400120b0
212 MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x120b0
213 MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x400120b0
214 MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x400120b0
215 MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x400120b0
216 MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x400120b0
217 MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x400120b0
218 MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x400120b0
219 MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x400120b0
220 MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x400120b0
221 MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x400120b0
222 MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x400120b0
223 MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x400120b0
224 MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x400120b0
225 MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x400120b0
226 MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x400120b0
227 MX6QDL_PAD_CSI0_MCLK__GPIO5_IO19 0x400120b0
228 MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x400120b0
232 pinctrl_audmux_ext: audmux-ext-grp {
234 MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
235 MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
236 MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
237 MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
241 pinctrl_enet_1G: enet-1G-grp {
243 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x100b0
244 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x100b0
245 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x100b0
246 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x100b0
247 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x100b0
248 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x100b0
249 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x100b0
250 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x100b0
251 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x100b0
252 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
253 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
254 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
255 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
256 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
257 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
258 MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x000b0
259 MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x000b1
260 MX6QDL_PAD_EIM_D26__GPIO3_IO26 0x000b1
264 pinctrl_ipu1_lcdif: ipu1-lcdif-grp {
266 MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x38
267 MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x38
268 MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x38
269 MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x38
270 MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x38
271 MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x38
272 MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x38
273 MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x38
274 MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x38
275 MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x38
276 MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x38
277 MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x38
278 MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x38
279 MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x38
280 MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x38
281 MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x38
282 MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x38
283 MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x38
284 MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x38
285 MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x38
286 MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x38
287 MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x38
288 MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x38
289 MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x38
290 MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x38
291 MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x38
292 MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x38
293 MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x38
294 MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x120b0
298 pinctrl_pwm1: pwm1-grp {
300 MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1
304 pinctrl_touchscreen: touchscreen-grp {
306 MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b0b1
310 pinctrl_pcie_reset: pcie-reset-grp {
312 MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x120b0
316 pinctrl_keys_pdk2: keys-pdk2-grp {
318 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x120b0 /* TA1 */
319 MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x120b0 /* TA2 */
320 MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x120b0 /* TA3 */
321 MX6QDL_PAD_CSI0_DAT17__GPIO6_IO03 0x120b0 /* TA4 */
325 pinctrl_leds_pdk2: leds-pdk2-grp {
327 MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x120b0 /* led6 */
328 MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x120b0 /* led7 */
329 MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x120b0 /* led8 */
336 remote-endpoint = <&lcd_display_in>;
340 pinctrl-0 = <&pinctrl_pcie &pinctrl_pcie_reset>;
341 reset-gpio = <&gpio6 14 GPIO_ACTIVE_LOW>;
346 pinctrl-names = "default";
347 pinctrl-0 = <&pinctrl_pwm1>;