1270866Simp/*
2270866Simp * Copyright 2013 Lothar Wa��mann <LW@KARO-electronics.de>
3270866Simp *
4270866Simp * The code contained herein is licensed under the GNU General Public
5270866Simp * License. You may obtain a copy of the GNU General Public License
6270866Simp * Version 2 at the following locations:
7270866Simp *
8270866Simp * http://www.opensource.org/licenses/gpl-license.html
9270866Simp * http://www.gnu.org/copyleft/gpl.html
10270866Simp */
11270866Simp
12270866Simp/dts-v1/;
13270866Simp#include "imx53-tx53.dtsi"
14270866Simp#include <dt-bindings/input/input.h>
15270866Simp
16270866Simp/ {
17270866Simp	model = "Ka-Ro electronics TX53 module (LVDS)";
18270866Simp	compatible = "karo,tx53", "fsl,imx53";
19270866Simp
20270866Simp	aliases {
21270866Simp		display = &lvds0;
22270866Simp		lvds0 = &lvds0;
23270866Simp		lvds1 = &lvds1;
24270866Simp	};
25270866Simp
26270866Simp	backlight0: backlight0 {
27270866Simp		compatible = "pwm-backlight";
28270866Simp		pwms = <&pwm2 0 500000 0>;
29270866Simp		power-supply = <&reg_3v3>;
30270866Simp		brightness-levels = <
31270866Simp			  0  1  2  3  4  5  6  7  8  9
32270866Simp			 10 11 12 13 14 15 16 17 18 19
33270866Simp			 20 21 22 23 24 25 26 27 28 29
34270866Simp			 30 31 32 33 34 35 36 37 38 39
35270866Simp			 40 41 42 43 44 45 46 47 48 49
36270866Simp			 50 51 52 53 54 55 56 57 58 59
37270866Simp			 60 61 62 63 64 65 66 67 68 69
38270866Simp			 70 71 72 73 74 75 76 77 78 79
39270866Simp			 80 81 82 83 84 85 86 87 88 89
40270866Simp			 90 91 92 93 94 95 96 97 98 99
41270866Simp			100
42270866Simp		>;
43270866Simp		default-brightness-level = <50>;
44270866Simp	};
45270866Simp
46270866Simp	backlight1: backlight1 {
47270866Simp		compatible = "pwm-backlight";
48270866Simp		pwms = <&pwm1 0 500000 0>;
49270866Simp		power-supply = <&reg_3v3>;
50270866Simp		brightness-levels = <
51270866Simp			  0  1  2  3  4  5  6  7  8  9
52270866Simp			 10 11 12 13 14 15 16 17 18 19
53270866Simp			 20 21 22 23 24 25 26 27 28 29
54270866Simp			 30 31 32 33 34 35 36 37 38 39
55270866Simp			 40 41 42 43 44 45 46 47 48 49
56270866Simp			 50 51 52 53 54 55 56 57 58 59
57270866Simp			 60 61 62 63 64 65 66 67 68 69
58270866Simp			 70 71 72 73 74 75 76 77 78 79
59270866Simp			 80 81 82 83 84 85 86 87 88 89
60270866Simp			 90 91 92 93 94 95 96 97 98 99
61270866Simp			100
62270866Simp		>;
63270866Simp		default-brightness-level = <50>;
64270866Simp	};
65270866Simp
66270866Simp	regulators {
67270866Simp		reg_lcd_pwr0: regulator@5 {
68270866Simp			compatible = "regulator-fixed";
69270866Simp			reg = <5>;
70270866Simp			regulator-name = "LVDS0 POWER";
71270866Simp			regulator-min-microvolt = <3300000>;
72270866Simp			regulator-max-microvolt = <3300000>;
73270866Simp			gpio = <&gpio3 29 GPIO_ACTIVE_HIGH>;
74270866Simp			enable-active-high;
75270866Simp			regulator-boot-on;
76270866Simp		};
77270866Simp
78270866Simp		reg_lcd_pwr1: regulator@6 {
79270866Simp			compatible = "regulator-fixed";
80270866Simp			reg = <6>;
81270866Simp			regulator-name = "LVDS1 POWER";
82270866Simp			regulator-min-microvolt = <3300000>;
83270866Simp			regulator-max-microvolt = <3300000>;
84270866Simp			gpio = <&gpio2 31 GPIO_ACTIVE_HIGH>;
85270866Simp			enable-active-high;
86270866Simp			regulator-boot-on;
87270866Simp		};
88270866Simp	};
89270866Simp};
90270866Simp
91270866Simp&i2c2 {
92270866Simp	pinctrl-names = "default";
93270866Simp	pinctrl-0 = <&pinctrl_i2c2>;
94270866Simp	status = "okay";
95270866Simp
96270866Simp	touchscreen2: eeti@04 {
97270866Simp		compatible = "eeti,egalax_ts";
98270866Simp		reg = <0x04>;
99270866Simp		pinctrl-names = "default";
100270866Simp		pinctrl-0 = <&pinctrl_eeti2>;
101270866Simp		interrupt-parent = <&gpio3>;
102270866Simp		interrupts = <23 0>;
103270866Simp		wakeup-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
104270866Simp		linux,wakeup;
105270866Simp	};
106270866Simp};
107270866Simp
108270866Simp&i2c3 {
109270866Simp	pinctrl-names = "default";
110270866Simp	pinctrl-0 = <&pinctrl_i2c3>;
111270866Simp	status = "okay";
112270866Simp
113270866Simp	sgtl5000: codec@0a {
114270866Simp		compatible = "fsl,sgtl5000";
115270866Simp		reg = <0x0a>;
116270866Simp		VDDA-supply = <&reg_2v5>;
117270866Simp		VDDIO-supply = <&reg_3v3>;
118270866Simp		clocks = <&mclk>;
119270866Simp	};
120270866Simp
121270866Simp	touchscreen1: eeti@04 {
122270866Simp		compatible = "eeti,egalax_ts";
123270866Simp		reg = <0x04>;
124270866Simp		pinctrl-names = "default";
125270866Simp		pinctrl-0 = <&pinctrl_eeti1>;
126270866Simp		interrupt-parent = <&gpio3>;
127270866Simp		interrupts = <22 0>;
128270866Simp		wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
129270866Simp		linux,wakeup;
130270866Simp	};
131270866Simp};
132270866Simp
133270866Simp&iomuxc {
134270866Simp	imx53-tx53-x13x {
135270866Simp		pinctrl_i2c2: i2c2-grp1 {
136270866Simp			fsl,pins = <
137270866Simp				MX53_PAD_KEY_ROW3__I2C2_SDA		0xc0000000
138270866Simp				MX53_PAD_KEY_COL3__I2C2_SCL		0xc0000000
139270866Simp			>;
140270866Simp		};
141270866Simp
142270866Simp		pinctrl_lvds0: lvds0grp {
143270866Simp			fsl,pins = <
144270866Simp				MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3 0x80000000
145270866Simp				MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK 0x80000000
146270866Simp				MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2 0x80000000
147270866Simp				MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1 0x80000000
148270866Simp				MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0 0x80000000
149270866Simp			>;
150270866Simp		};
151270866Simp
152270866Simp		pinctrl_lvds1: lvds1grp {
153270866Simp			fsl,pins = <
154270866Simp				MX53_PAD_LVDS1_TX3_P__LDB_LVDS1_TX3 0x80000000
155270866Simp				MX53_PAD_LVDS1_TX2_P__LDB_LVDS1_TX2 0x80000000
156270866Simp				MX53_PAD_LVDS1_CLK_P__LDB_LVDS1_CLK 0x80000000
157270866Simp				MX53_PAD_LVDS1_TX1_P__LDB_LVDS1_TX1 0x80000000
158270866Simp				MX53_PAD_LVDS1_TX0_P__LDB_LVDS1_TX0 0x80000000
159270866Simp			>;
160270866Simp		};
161270866Simp
162270866Simp		pinctrl_pwm1: pwm1grp {
163270866Simp			fsl,pins = <MX53_PAD_GPIO_9__PWM1_PWMO 0x04>;
164270866Simp		};
165270866Simp
166270866Simp		pinctrl_eeti1: eeti1grp {
167270866Simp			fsl,pins = <
168270866Simp				MX53_PAD_EIM_D22__GPIO3_22 0x1f0 /* Interrupt */
169270866Simp			>;
170270866Simp		};
171270866Simp
172270866Simp		pinctrl_eeti2: eeti2grp {
173270866Simp			fsl,pins = <
174270866Simp				MX53_PAD_EIM_D23__GPIO3_23 0x1f0 /* Interrupt */
175270866Simp			>;
176270866Simp		};
177270866Simp	};
178270866Simp};
179270866Simp
180270866Simp&ldb {
181270866Simp	pinctrl-names = "default";
182270866Simp	pinctrl-0 = <&pinctrl_lvds0 &pinctrl_lvds1>;
183270866Simp	status = "okay";
184270866Simp
185270866Simp	lvds0: lvds-channel@0 {
186270866Simp		fsl,data-mapping = "jeida";
187270866Simp		fsl,data-width = <24>;
188270866Simp		status = "okay";
189270866Simp
190270866Simp		display-timings {
191270866Simp			native-mode = <&lvds_timing0>;
192270866Simp			lvds_timing0: hsd100pxn1 {
193270866Simp				clock-frequency = <65000000>;
194270866Simp				hactive = <1024>;
195270866Simp				vactive = <768>;
196270866Simp				hback-porch = <220>;
197270866Simp				hsync-len = <60>;
198270866Simp				hfront-porch = <40>;
199270866Simp				vback-porch = <21>;
200270866Simp				vsync-len = <10>;
201270866Simp				vfront-porch = <7>;
202270866Simp				hsync-active = <0>;
203270866Simp				vsync-active = <0>;
204270866Simp				de-active = <1>;
205270866Simp				pixelclk-active = <0>;
206270866Simp			};
207270866Simp		};
208270866Simp	};
209270866Simp
210270866Simp	lvds1: lvds-channel@1 {
211270866Simp		fsl,data-mapping = "jeida";
212270866Simp		fsl,data-width = <24>;
213270866Simp		status = "okay";
214270866Simp
215270866Simp		display-timings {
216270866Simp			native-mode = <&lvds_timing1>;
217270866Simp			lvds_timing1: hsd100pxn1 {
218270866Simp				clock-frequency = <65000000>;
219270866Simp				hactive = <1024>;
220270866Simp				vactive = <768>;
221270866Simp				hback-porch = <220>;
222270866Simp				hsync-len = <60>;
223270866Simp				hfront-porch = <40>;
224270866Simp				vback-porch = <21>;
225270866Simp				vsync-len = <10>;
226270866Simp				vfront-porch = <7>;
227270866Simp				hsync-active = <0>;
228270866Simp				vsync-active = <0>;
229270866Simp				de-active = <1>;
230270866Simp				pixelclk-active = <0>;
231270866Simp			};
232270866Simp		};
233270866Simp	};
234270866Simp};
235270866Simp
236270866Simp&pwm1 {
237270866Simp	pinctrl-names = "default";
238270866Simp	pinctrl-0 = <&pinctrl_pwm1>;
239270866Simp};
240270866Simp
241270866Simp&sata {
242270866Simp	status = "okay";
243270866Simp};
244