Merge branch 'ras-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / imx6q-var-dt6customboard.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Support for Variscite DART-MX6 Carrier-board
4  *
5  * Copyright 2017 BayLibre, SAS
6  * Author: Neil Armstrong <narmstrong@baylibre.com>
7  */
8
9 /dts-v1/;
10
11 #include "imx6q.dtsi"
12 #include "imx6qdl-var-dart.dtsi"
13 #include <dt-bindings/input/linux-event-codes.h>
14
15 / {
16         model = "Variscite DART-MX6 Carrier-board";
17         compatible = "variscite,dt6customboard", "fsl,imx6q";
18
19         backlight_lvds: backlight {
20                 compatible = "pwm-backlight";
21                 pwms = <&pwm2 0 50000>;
22                 brightness-levels = <0 4 8 16 32 64 128 248>;
23                 default-brightness-level = <7>;
24                 status = "okay";
25         };
26
27         gpio-keys {
28                 compatible = "gpio-keys";
29                 autorepeat;
30
31                 back {
32                         gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
33                         linux,code = <KEY_BACK>;
34                         label = "Key Back";
35                         linux,input-type = <1>;
36                         debounce-interval = <100>;
37                         wakeup-source;
38                 };
39
40                 home {
41                         gpios = <&gpio5 11 GPIO_ACTIVE_LOW>;
42                         linux,code = <KEY_HOME>;
43                         label = "Key Home";
44                         linux,input-type = <1>;
45                         debounce-interval = <100>;
46                         wakeup-source;
47                 };
48
49                 menu {
50                         gpios = <&gpio4 25 GPIO_ACTIVE_LOW>;
51                         linux,code = <KEY_MENU>;
52                         label = "Key Menu";
53                         linux,input-type = <1>;
54                         debounce-interval = <100>;
55                         wakeup-source;
56                 };
57         };
58
59         gpio-leds {
60                 compatible = "gpio-leds";
61
62                 led1 {
63                         gpios = <&gpio4 27 GPIO_ACTIVE_HIGH>;
64                         linux,default-trigger = "heartbeat";
65                 };
66
67                 led2 {
68                         gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>;
69                         linux,default-trigger = "default-on";
70                 };
71         };
72
73         panel1: lvds-panel {
74                 compatible = "sgd,gktw70sdae4se", "panel-lvds";
75                 backlight = <&backlight_lvds>;
76                 width-mm = <153>;
77                 height-mm = <86>;
78                 label = "gktw70sdae4se";
79                 data-mapping = "jeida-18";
80
81                 panel-timing {
82                         clock-frequency = <32000000>;
83                         hactive = <800>;
84                         vactive = <480>;
85                         hback-porch = <39>;
86                         hfront-porch = <39>;
87                         vback-porch = <29>;
88                         vfront-porch = <13>;
89                         hsync-len = <47>;
90                         vsync-len = <2>;
91                 };
92
93                 port {
94                         panel_in: endpoint {
95                                 remote-endpoint = <&lvds1_out>;
96                         };
97                 };
98         };
99
100         reg_usb_h1_vbus: regulator-usbh1vbus {
101                 compatible = "regulator-fixed";
102                 regulator-name = "usb_h1_vbus";
103                 regulator-min-microvolt = <5000000>;
104                 regulator-max-microvolt = <5000000>;
105                 gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
106                 enable-active-high;
107         };
108
109         reg_usb_otg_vbus: regulator-usbotgvbus {
110                 compatible = "regulator-fixed";
111                 regulator-name = "usb_otg_vbus";
112                 regulator-min-microvolt = <5000000>;
113                 regulator-max-microvolt = <5000000>;
114                 gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
115                 enable-active-high;
116         };
117
118         sound {
119                 compatible = "simple-audio-card";
120                 simple-audio-card,name = "dt6-customboard-audio";
121                 simple-audio-card,format = "i2s";
122                 simple-audio-card,bitclock-master = <&sound_codec>;
123                 simple-audio-card,frame-master = <&sound_codec>;
124                 simple-audio-card,widgets = "Headphone", "Headphone Jack",
125                                             "Line", "Line In";
126                 simple-audio-card,routing = "Headphone Jack", "HPLOUT",
127                                             "Headphone Jack", "HPROUT",
128                                             "LINE1L", "Line In",
129                                             "LINE1R", "Line In";
130
131                 sound_cpu: simple-audio-card,cpu {
132                         sound-dai = <&ssi2>;
133                 };
134
135                 sound_codec: simple-audio-card,codec {
136                         sound-dai = <&tlv320aic3106>;
137                         clocks = <&clks IMX6QDL_CLK_CKO>;
138                 };
139         };
140 };
141
142 &can1 {
143         status = "okay";
144 };
145
146 &ecspi1 {
147         cs-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>,
148                    <&gpio4 10 GPIO_ACTIVE_HIGH>;
149         status = "okay";
150 };
151
152 &fec {
153         status = "okay";
154         phy-mode = "rgmii";
155         phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
156 };
157
158 &hdmi {
159         status = "okay";
160 };
161
162 &i2c1 {
163         clock-frequency = <100000>;
164         status = "okay";
165 };
166
167 &i2c3 {
168         clock-frequency = <100000>;
169         status = "okay";
170
171         touchscreen@38 {
172                 compatible = "edt,edt-ft5x06";
173                 reg = <0x38>;
174                 interrupt-parent = <&gpio1>;
175                 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
176                 touchscreen-size-x = <800>;
177                 touchscreen-size-y = <480>;
178                 touchscreen-inverted-x;
179                 touchscreen-inverted-y;
180         };
181
182         rtc@68 {
183                 compatible = "isil,isl12057";
184                 reg = <0x68>;
185         };
186 };
187
188 &ldb {
189         status = "okay";
190
191         lvds-channel@1 {
192                 status = "okay";
193
194                 port@4 {
195                         reg = <4>;
196
197                         lvds1_out: endpoint {
198                                 remote-endpoint = <&panel_in>;
199                         };
200                 };
201         };
202 };
203
204 &pwm2 {
205         status = "okay";
206 };
207
208 &uart1 {
209         status = "okay";
210 };
211
212 &uart3 {
213         status = "okay";
214 };
215
216 &usbh1 {
217         vbus-supply = <&reg_usb_h1_vbus>;
218         status = "okay";
219 };
220
221 &usbotg {
222         vbus-supply = <&reg_usb_otg_vbus>;
223         dr_mode = "otg";
224         srp-disable;
225         hnp-disable;
226         adp-disable;
227         status = "okay";
228 };
229
230 &usdhc2 {
231         cd-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
232         status = "okay";
233 };