/
imx6qdl-dheva01.dtsi
214 lines (199 loc) · 5.6 KB
/
imx6qdl-dheva01.dtsi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
/*
* Copyright 2014 DH electronics GmbH
* Copyright 2012 Freescale Semiconductor, Inc.
* Copyright 2011 Linaro Ltd.
*
* The code contained herein is licensed under the GNU General Public
* License. You may obtain a copy of the GNU General Public License
* Version 2 or later at the following locations:
*
* http://www.opensource.org/licenses/gpl-license.html
* http://www.gnu.org/copyleft/gpl.html
*/
/ {
backlight {
compatible = "pwm-backlight";
pwms = <&pwm1 0 50000>;
brightness-levels = <0 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96 100>;
default-brightness-level = <10>;
enable-gpios = <&gpio2 27 0>;
};
display@di0 {
compatible = "fsl,imx-parallel-display";
crtcs = <&ipu1 0>;
interface-pix-fmt = "rgb24";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ipu1_4>;
status = "okay";
display-timings {
native-mode = <&id_13>;
id_01: DataImage_4_3inch_FG040360DSSWBG03_R05 {
clock-frequency = <11100000>;
hactive = <480>;
vactive = <272>;
hback-porch = <86>;
hfront-porch = <42>;
vback-porch = <33>;
vfront-porch = <10>;
hsync-len = <64>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>;
};
id_02: DataImage_4_3inch_FG040346DSSWBG04 {
clock-frequency = <11100000>;
hactive = <480>;
vactive = <272>;
hback-porch = <86>;
hfront-porch = <42>;
vback-porch = <33>;
vfront-porch = <10>;
hsync-len = <64>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <1>;
};
id_10: LG_7inch_LB070WV8 {
clock-frequency = <33250000>;
hactive = <800>;
vactive = <480>;
hback-porch = <64>;
hfront-porch = <64>;
vback-porch = <10>;
vfront-porch = <10>;
hsync-len = <128>;
vsync-len = <25>;
hsync-active = <1>;
vsync-active = <1>;
de-active = <1>;
pixelclk-active = <0>;
};
id_13: DataImage_7inch_FG0700G3DSSW {
clock-frequency = <33260000>;
hactive = <800>;
vactive = <480>;
hback-porch = <86>;
hfront-porch = <42>;
vback-porch = <33>;
vfront-porch = <10>;
hsync-len = <128>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <1>;
};
};
};
/* TODO GPIOs */
/*
gpio-keys {
compatible = "gpio-keys";
volume-up {
label = "Volume Up";
gpios = <&gpio1 4 0>;
gpio-key,wakeup;
linux,code = <115>; // KEY_VOLUMEUP
};
volume-down {
label = "Volume Down";
gpios = <&gpio1 5 0>;
gpio-key,wakeup;
linux,code = <114>; // KEY_VOLUMEDOWN
};
};*/
};
&ecspi1 { // ********** SPI 1 **********
spidev@2 { // ==> /dev/spidev0.2
compatible = "spidev";
reg = <2>; // SS2
spi-max-frequency = <50000000>;
spi-cpha; // Shifted clock phase (CPHA) mode
spi-cpol; // Inverse clock polarity (CPOL) mode
};
};
&ecspi2 { // ********** SPI 2 **********
spidev@0 { // ==> /dev/spidev1.0
compatible = "spidev";
reg = <0>; // SS0
spi-max-frequency = <50000000>;
spi-cpha; // Shifted clock phase (CPHA) mode
spi-cpol; // Inverse clock polarity (CPOL) mode
};
};
&i2c1 { // ********** I2C 1 **********
tmg120_ts@20 { // Touch controller "DH-Touch"
compatible = "dh,tmg120_ts";
reg = <0x20>;
interrupt-parent = <&gpio4>;
interrupts = <7 2>;
status = "disabled";
};
};
&i2c3 { // ********** I2C 3 **********
tsc2004@49 { // Touch controller TI TSC2014 (on Board)
status = "okay";
};
};
&iomuxc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hog>;
hog {
pinctrl_hog: hoggrp {
fsl,pins = <
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x120B0 // GPIO A
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x120B0 // GPIO B
MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x120B0 // GPIO C
MX6QDL_PAD_CSI0_DAT17__GPIO6_IO03 0x120B0 // GPIO D
MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x120B0 // GPIO E
MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x120B0 // GPIO F
MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x80000000 // GPIO G -> Backlight Enable
MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x80000000 // GPIO H -> Touch Interrupt picoITX dh-touch
MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x120B0 // GPIO I
MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x120B0 // GPIO J
MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x120B0 // GPIO K
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x120B0 // GPIO L
MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x120B0 // GPIO M
MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x120B0 // GPIO N
MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x120B0 // GPIO O
MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x120B0 // GPIO P
MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x120B0 // GPIO Q
MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x120B0 // GPIO R
MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x120B0 // GPIO S
MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x120B0 // GPIO T
MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x120B0 // GPIO U
MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x120B0 // GPIO V
MX6QDL_PAD_CSI0_MCLK__GPIO5_IO19 0x120B0 // GPIO W
MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x80000000 // PWM -> Backlight Enable
>;
};
};
};
/* LVDS Display */
/*
&ldb {
status = "okay";
lvds-channel@1 {
fsl,data-mapping = "spwg";
fsl,data-width = <18>;
status = "okay";
display-timings {
native-mode = <&timing0>;
timing0: hsd100pxn1 {
clock-frequency = <65000000>;
hactive = <1024>;
vactive = <768>;
hback-porch = <220>;
hfront-porch = <40>;
vback-porch = <21>;
vfront-porch = <7>;
hsync-len = <60>;
vsync-len = <10>;
};
};
};
};*/