aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/boot/dts')
-rw-r--r--arch/arm/boot/dts/am4372.dtsi29
-rw-r--r--arch/arm/boot/dts/am437x-gp-evm.dts97
-rw-r--r--arch/arm/boot/dts/am43x-epos-evm.dts96
-rw-r--r--arch/arm/boot/dts/omap3-evm-37xx.dts50
-rw-r--r--arch/arm/boot/dts/omap3-evm-common.dtsi26
-rw-r--r--arch/arm/boot/dts/omap3-gta04.dts90
-rw-r--r--arch/arm/boot/dts/omap3-ldp.dts29
-rw-r--r--arch/arm/boot/dts/omap3-overo-alto35-common.dtsi1
-rw-r--r--arch/arm/boot/dts/omap3-overo-chestnut43-common.dtsi1
-rw-r--r--arch/arm/boot/dts/omap3-overo-common-dvi.dtsi111
-rw-r--r--arch/arm/boot/dts/omap3-overo-common-lcd35.dtsi165
-rw-r--r--arch/arm/boot/dts/omap3-overo-common-lcd43.dtsi178
-rw-r--r--arch/arm/boot/dts/omap3-overo-gallop43-common.dtsi1
-rw-r--r--arch/arm/boot/dts/omap3-overo-palo43-common.dtsi1
-rw-r--r--arch/arm/boot/dts/omap3-overo-summit-common.dtsi1
-rw-r--r--arch/arm/boot/dts/omap3-overo-tobi-common.dtsi1
-rw-r--r--arch/arm/boot/dts/omap3-panel-sharp-ls037v7dw01.dtsi71
-rw-r--r--arch/arm/boot/dts/omap4-duovero-parlor.dts44
-rw-r--r--arch/arm/boot/dts/omap4.dtsi2
-rw-r--r--arch/arm/boot/dts/omap5-uevm.dts87
-rw-r--r--arch/arm/boot/dts/omap5.dtsi62
21 files changed, 1138 insertions, 5 deletions
diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
index 794c73e5c4e4..db464d7eaca8 100644
--- a/arch/arm/boot/dts/am4372.dtsi
+++ b/arch/arm/boot/dts/am4372.dtsi
@@ -857,6 +857,35 @@
857 ti,hwmods = "hdq1w"; 857 ti,hwmods = "hdq1w";
858 status = "disabled"; 858 status = "disabled";
859 }; 859 };
860
861 dss: dss@4832a000 {
862 compatible = "ti,omap3-dss";
863 reg = <0x4832a000 0x200>;
864 status = "disabled";
865 ti,hwmods = "dss_core";
866 clocks = <&disp_clk>;
867 clock-names = "fck";
868 #address-cells = <1>;
869 #size-cells = <1>;
870 ranges;
871
872 dispc@4832a400 {
873 compatible = "ti,omap3-dispc";
874 reg = <0x4832a400 0x400>;
875 interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
876 ti,hwmods = "dss_dispc";
877 clocks = <&disp_clk>;
878 clock-names = "fck";
879 };
880
881 rfbi: rfbi@4832a800 {
882 compatible = "ti,omap3-rfbi";
883 reg = <0x4832a800 0x100>;
884 ti,hwmods = "dss_rfbi";
885 clocks = <&disp_clk>;
886 clock-names = "fck";
887 };
888 };
860 }; 889 };
861}; 890};
862 891
diff --git a/arch/arm/boot/dts/am437x-gp-evm.dts b/arch/arm/boot/dts/am437x-gp-evm.dts
index c25d15837ce9..003766c47bbf 100644
--- a/arch/arm/boot/dts/am437x-gp-evm.dts
+++ b/arch/arm/boot/dts/am437x-gp-evm.dts
@@ -19,6 +19,10 @@
19 model = "TI AM437x GP EVM"; 19 model = "TI AM437x GP EVM";
20 compatible = "ti,am437x-gp-evm","ti,am4372","ti,am43"; 20 compatible = "ti,am437x-gp-evm","ti,am4372","ti,am43";
21 21
22 aliases {
23 display0 = &lcd0;
24 };
25
22 vmmcsd_fixed: fixedregulator-sd { 26 vmmcsd_fixed: fixedregulator-sd {
23 compatible = "regulator-fixed"; 27 compatible = "regulator-fixed";
24 regulator-name = "vmmcsd_fixed"; 28 regulator-name = "vmmcsd_fixed";
@@ -64,6 +68,44 @@
64 0x02000069 /* LEFT */ 68 0x02000069 /* LEFT */
65 0x0201006c>; /* DOWN */ 69 0x0201006c>; /* DOWN */
66 }; 70 };
71
72 lcd0: display {
73 compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";
74 label = "lcd";
75
76 pinctrl-names = "default";
77 pinctrl-0 = <&lcd_pins>;
78
79 /*
80 * SelLCDorHDMI, LOW to select HDMI. This is not really the
81 * panel's enable GPIO, but we don't have HDMI driver support nor
82 * support to switch between two displays, so using this gpio as
83 * panel's enable should be safe.
84 */
85 enable-gpios = <&gpio5 8 GPIO_ACTIVE_HIGH>;
86
87 panel-timing {
88 clock-frequency = <33000000>;
89 hactive = <800>;
90 vactive = <480>;
91 hfront-porch = <210>;
92 hback-porch = <16>;
93 hsync-len = <30>;
94 vback-porch = <10>;
95 vfront-porch = <22>;
96 vsync-len = <13>;
97 hsync-active = <0>;
98 vsync-active = <0>;
99 de-active = <1>;
100 pixelclk-active = <1>;
101 };
102
103 port {
104 lcd_in: endpoint {
105 remote-endpoint = <&dpi_out>;
106 };
107 };
108 };
67}; 109};
68 110
69&am43xx_pinmux { 111&am43xx_pinmux {
@@ -171,6 +213,47 @@
171 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */ 213 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
172 >; 214 >;
173 }; 215 };
216
217 dss_pins: dss_pins {
218 pinctrl-single,pins = <
219 0x020 (PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
220 0x024 (PIN_OUTPUT_PULLUP | MUX_MODE1)
221 0x028 (PIN_OUTPUT_PULLUP | MUX_MODE1)
222 0x02c (PIN_OUTPUT_PULLUP | MUX_MODE1)
223 0x030 (PIN_OUTPUT_PULLUP | MUX_MODE1)
224 0x034 (PIN_OUTPUT_PULLUP | MUX_MODE1)
225 0x038 (PIN_OUTPUT_PULLUP | MUX_MODE1)
226 0x03c (PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
227 0x0a0 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
228 0x0a4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
229 0x0a8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
230 0x0ac (PIN_OUTPUT_PULLUP | MUX_MODE0)
231 0x0b0 (PIN_OUTPUT_PULLUP | MUX_MODE0)
232 0x0b4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
233 0x0b8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
234 0x0bc (PIN_OUTPUT_PULLUP | MUX_MODE0)
235 0x0c0 (PIN_OUTPUT_PULLUP | MUX_MODE0)
236 0x0c4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
237 0x0c8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
238 0x0cc (PIN_OUTPUT_PULLUP | MUX_MODE0)
239 0x0d0 (PIN_OUTPUT_PULLUP | MUX_MODE0)
240 0x0d4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
241 0x0d8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
242 0x0dc (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
243 0x0e0 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
244 0x0e4 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
245 0x0e8 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
246 0x0ec (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
247
248 >;
249 };
250
251 lcd_pins: lcd_pins {
252 pinctrl-single,pins = <
253 /* GPIO 5_8 to select LCD / HDMI */
254 0x238 (PIN_OUTPUT_PULLUP | MUX_MODE7)
255 >;
256 };
174}; 257};
175 258
176&i2c0 { 259&i2c0 {
@@ -359,3 +442,17 @@
359 }; 442 };
360 }; 443 };
361}; 444};
445
446&dss {
447 status = "ok";
448
449 pinctrl-names = "default";
450 pinctrl-0 = <&dss_pins>;
451
452 port {
453 dpi_out: endpoint@0 {
454 remote-endpoint = <&lcd_in>;
455 data-lines = <24>;
456 };
457 };
458};
diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index ad362c50e32e..19f1f7e87597 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -19,6 +19,10 @@
19 model = "TI AM43x EPOS EVM"; 19 model = "TI AM43x EPOS EVM";
20 compatible = "ti,am43x-epos-evm","ti,am4372","ti,am43"; 20 compatible = "ti,am43x-epos-evm","ti,am4372","ti,am43";
21 21
22 aliases {
23 display0 = &lcd0;
24 };
25
22 vmmcsd_fixed: fixedregulator-sd { 26 vmmcsd_fixed: fixedregulator-sd {
23 compatible = "regulator-fixed"; 27 compatible = "regulator-fixed";
24 regulator-name = "vmmcsd_fixed"; 28 regulator-name = "vmmcsd_fixed";
@@ -27,6 +31,44 @@
27 enable-active-high; 31 enable-active-high;
28 }; 32 };
29 33
34 lcd0: display {
35 compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";
36 label = "lcd";
37
38 pinctrl-names = "default";
39 pinctrl-0 = <&lcd_pins>;
40
41 /*
42 * SelLCDorHDMI, LOW to select HDMI. This is not really the
43 * panel's enable GPIO, but we don't have HDMI driver support nor
44 * support to switch between two displays, so using this gpio as
45 * panel's enable should be safe.
46 */
47 enable-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
48
49 panel-timing {
50 clock-frequency = <33000000>;
51 hactive = <800>;
52 vactive = <480>;
53 hfront-porch = <210>;
54 hback-porch = <16>;
55 hsync-len = <30>;
56 vback-porch = <10>;
57 vfront-porch = <22>;
58 vsync-len = <13>;
59 hsync-active = <0>;
60 vsync-active = <0>;
61 de-active = <1>;
62 pixelclk-active = <1>;
63 };
64
65 port {
66 lcd_in: endpoint {
67 remote-endpoint = <&dpi_out>;
68 };
69 };
70 };
71
30 am43xx_pinmux: pinmux@44e10800 { 72 am43xx_pinmux: pinmux@44e10800 {
31 cpsw_default: cpsw_default { 73 cpsw_default: cpsw_default {
32 pinctrl-single,pins = < 74 pinctrl-single,pins = <
@@ -161,6 +203,46 @@
161 0x234 (PIN_INPUT_PULLUP | MUX_MODE1) /* cam1_wen.hdq_gpio */ 203 0x234 (PIN_INPUT_PULLUP | MUX_MODE1) /* cam1_wen.hdq_gpio */
162 >; 204 >;
163 }; 205 };
206
207 dss_pins: dss_pins {
208 pinctrl-single,pins = <
209 0x020 (PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
210 0x024 (PIN_OUTPUT_PULLUP | MUX_MODE1)
211 0x028 (PIN_OUTPUT_PULLUP | MUX_MODE1)
212 0x02C (PIN_OUTPUT_PULLUP | MUX_MODE1)
213 0x030 (PIN_OUTPUT_PULLUP | MUX_MODE1)
214 0x034 (PIN_OUTPUT_PULLUP | MUX_MODE1)
215 0x038 (PIN_OUTPUT_PULLUP | MUX_MODE1)
216 0x03C (PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
217 0x0A0 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
218 0x0A4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
219 0x0A8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
220 0x0AC (PIN_OUTPUT_PULLUP | MUX_MODE0)
221 0x0B0 (PIN_OUTPUT_PULLUP | MUX_MODE0)
222 0x0B4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
223 0x0B8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
224 0x0BC (PIN_OUTPUT_PULLUP | MUX_MODE0)
225 0x0C0 (PIN_OUTPUT_PULLUP | MUX_MODE0)
226 0x0C4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
227 0x0C8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
228 0x0CC (PIN_OUTPUT_PULLUP | MUX_MODE0)
229 0x0D0 (PIN_OUTPUT_PULLUP | MUX_MODE0)
230 0x0D4 (PIN_OUTPUT_PULLUP | MUX_MODE0)
231 0x0D8 (PIN_OUTPUT_PULLUP | MUX_MODE0)
232 0x0DC (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
233 0x0E0 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
234 0x0E4 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
235 0x0E8 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
236 0x0EC (PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
237 >;
238 };
239
240 lcd_pins: lcd_pins {
241 pinctrl-single,pins = <
242 /* GPMC CLK -> GPIO 2_1 to select LCD / HDMI */
243 0x08C (PIN_OUTPUT_PULLUP | MUX_MODE7)
244 >;
245 };
164 }; 246 };
165 247
166 matrix_keypad: matrix_keypad@0 { 248 matrix_keypad: matrix_keypad@0 {
@@ -468,3 +550,17 @@
468 pinctrl-names = "default"; 550 pinctrl-names = "default";
469 pinctrl-0 = <&hdq_pins>; 551 pinctrl-0 = <&hdq_pins>;
470}; 552};
553
554&dss {
555 status = "ok";
556
557 pinctrl-names = "default";
558 pinctrl-0 = <&dss_pins>;
559
560 port {
561 dpi_out: endpoint@0 {
562 remote-endpoint = <&lcd_in>;
563 data-lines = <24>;
564 };
565 };
566};
diff --git a/arch/arm/boot/dts/omap3-evm-37xx.dts b/arch/arm/boot/dts/omap3-evm-37xx.dts
index 9cba94bed7ad..a8bd4349c7d2 100644
--- a/arch/arm/boot/dts/omap3-evm-37xx.dts
+++ b/arch/arm/boot/dts/omap3-evm-37xx.dts
@@ -26,7 +26,44 @@
26 }; 26 };
27}; 27};
28 28
29&dss {
30 pinctrl-names = "default";
31 pinctrl-0 = <
32 &dss_dpi_pins1
33 &dss_dpi_pins2
34 >;
35};
36
29&omap3_pmx_core { 37&omap3_pmx_core {
38 dss_dpi_pins1: pinmux_dss_dpi_pins2 {
39 pinctrl-single,pins = <
40 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
41 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
42 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
43 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
44
45 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
46 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
47 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
48 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
49 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
50 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
51 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
52 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
53 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
54 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
55 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
56 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
57
58 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE3) /* dss_data18.dss_data0 */
59 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE3) /* dss_data19.dss_data1 */
60 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE3) /* dss_data20.dss_data2 */
61 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE3) /* dss_data21.dss_data3 */
62 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE3) /* dss_data22.dss_data4 */
63 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE3) /* dss_data23.dss_data5 */
64 >;
65 };
66
30 mmc1_pins: pinmux_mmc1_pins { 67 mmc1_pins: pinmux_mmc1_pins {
31 pinctrl-single,pins = < 68 pinctrl-single,pins = <
32 0x114 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */ 69 0x114 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
@@ -75,6 +112,19 @@
75 }; 112 };
76}; 113};
77 114
115&omap3_pmx_wkup {
116 dss_dpi_pins2: pinmux_dss_dpi_pins1 {
117 pinctrl-single,pins = <
118 0x0a (PIN_OUTPUT | MUX_MODE3) /* sys_boot0.dss_data18 */
119 0x0c (PIN_OUTPUT | MUX_MODE3) /* sys_boot1.dss_data19 */
120 0x10 (PIN_OUTPUT | MUX_MODE3) /* sys_boot3.dss_data20 */
121 0x12 (PIN_OUTPUT | MUX_MODE3) /* sys_boot4.dss_data21 */
122 0x14 (PIN_OUTPUT | MUX_MODE3) /* sys_boot5.dss_data22 */
123 0x16 (PIN_OUTPUT | MUX_MODE3) /* sys_boot6.dss_data23 */
124 >;
125 };
126};
127
78&mmc1 { 128&mmc1 {
79 pinctrl-names = "default"; 129 pinctrl-names = "default";
80 pinctrl-0 = <&mmc1_pins>; 130 pinctrl-0 = <&mmc1_pins>;
diff --git a/arch/arm/boot/dts/omap3-evm-common.dtsi b/arch/arm/boot/dts/omap3-evm-common.dtsi
index 3007e79c9cd6..8ae8f007c8ad 100644
--- a/arch/arm/boot/dts/omap3-evm-common.dtsi
+++ b/arch/arm/boot/dts/omap3-evm-common.dtsi
@@ -44,6 +44,11 @@
44 44
45#include "twl4030.dtsi" 45#include "twl4030.dtsi"
46#include "twl4030_omap3.dtsi" 46#include "twl4030_omap3.dtsi"
47#include "omap3-panel-sharp-ls037v7dw01.dtsi"
48
49&backlight0 {
50 gpios = <&twl_gpio 18 GPIO_ACTIVE_LOW>;
51};
47 52
48&i2c2 { 53&i2c2 {
49 clock-frequency = <400000>; 54 clock-frequency = <400000>;
@@ -61,6 +66,27 @@
61 }; 66 };
62}; 67};
63 68
69&lcd_3v3 {
70 gpio = <&gpio5 25 GPIO_ACTIVE_LOW>; /* gpio153 */
71 enable-active-low;
72};
73
74&lcd0 {
75 enable-gpios = <&gpio5 24 GPIO_ACTIVE_HIGH>; /* gpio152, lcd INI */
76 reset-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd RESB */
77 mode-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH /* gpio154, lcd MO */
78 &gpio1 2 GPIO_ACTIVE_HIGH /* gpio2, lcd LR */
79 &gpio1 3 GPIO_ACTIVE_HIGH>; /* gpio3, lcd UD */
80};
81
82&mcspi1 {
83 tsc2046@0 {
84 interrupt-parent = <&gpio6>;
85 interrupts = <15 0>; /* gpio175 */
86 pendown-gpio = <&gpio6 15 0>;
87 };
88};
89
64&mmc1 { 90&mmc1 {
65 vmmc-supply = <&vmmc1>; 91 vmmc-supply = <&vmmc1>;
66 vmmc_aux-supply = <&vsim>; 92 vmmc_aux-supply = <&vsim>;
diff --git a/arch/arm/boot/dts/omap3-gta04.dts b/arch/arm/boot/dts/omap3-gta04.dts
index f8ad125fa46f..021311f7964b 100644
--- a/arch/arm/boot/dts/omap3-gta04.dts
+++ b/arch/arm/boot/dts/omap3-gta04.dts
@@ -44,6 +44,36 @@
44 ti,mcbsp = <&mcbsp2>; 44 ti,mcbsp = <&mcbsp2>;
45 ti,codec = <&twl_audio>; 45 ti,codec = <&twl_audio>;
46 }; 46 };
47
48 spi_lcd {
49 compatible = "spi-gpio";
50 #address-cells = <0x1>;
51 #size-cells = <0x0>;
52 pinctrl-names = "default";
53 pinctrl-0 = <&spi_gpio_pins>;
54
55 gpio-sck = <&gpio1 12 0>;
56 gpio-miso = <&gpio1 18 0>;
57 gpio-mosi = <&gpio1 20 0>;
58 cs-gpios = <&gpio1 19 0>;
59 num-chipselects = <1>;
60
61 /* lcd panel */
62 lcd: td028ttec1@0 {
63 compatible = "toppoly,td028ttec1";
64 reg = <0>;
65 spi-max-frequency = <100000>;
66 spi-cpol;
67 spi-cpha;
68
69 label = "lcd";
70 port {
71 lcd_in: endpoint {
72 remote-endpoint = <&dpi_out>;
73 };
74 };
75 };
76 };
47}; 77};
48 78
49&omap3_pmx_core { 79&omap3_pmx_core {
@@ -78,6 +108,47 @@
78 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */ 108 0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
79 >; 109 >;
80 }; 110 };
111
112 dss_dpi_pins: pinmux_dss_dpi_pins {
113 pinctrl-single,pins = <
114 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
115 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
116 0x0a8 (PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
117 0x0aa (PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
118 0x0ac (PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */
119 0x0ae (PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */
120 0x0b0 (PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */
121 0x0b2 (PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */
122 0x0b4 (PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */
123 0x0b6 (PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */
124 0x0b8 (PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
125 0x0ba (PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
126 0x0bc (PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
127 0x0be (PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
128 0x0c0 (PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
129 0x0c2 (PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
130 0x0c4 (PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
131 0x0c6 (PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
132 0x0c8 (PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
133 0x0ca (PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
134 0x0cc (PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
135 0x0ce (PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
136 0x0d0 (PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */
137 0x0d2 (PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */
138 0x0d4 (PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */
139 0x0d6 (PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */
140 0x0d8 (PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */
141 0x0da (PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */
142 >;
143 };
144
145 spi_gpio_pins: spi_gpio_pinmux {
146 pinctrl-single,pins = <0x5a8 (PIN_OUTPUT | MUX_MODE4) /* clk */
147 0x5b6 (PIN_OUTPUT | MUX_MODE4) /* cs */
148 0x5b8 (PIN_OUTPUT | MUX_MODE4) /* tx */
149 0x5b4 (PIN_INPUT | MUX_MODE4) /* rx */
150 >;
151 };
81}; 152};
82 153
83&i2c1 { 154&i2c1 {
@@ -219,3 +290,22 @@
219 regulator-min-microvolt = <2800000>; 290 regulator-min-microvolt = <2800000>;
220 regulator-max-microvolt = <3150000>; 291 regulator-max-microvolt = <3150000>;
221}; 292};
293
294/* Needed to power the DPI pins */
295&vpll2 {
296 regulator-always-on;
297};
298
299&dss {
300 pinctrl-names = "default";
301 pinctrl-0 = < &dss_dpi_pins >;
302
303 status = "okay";
304
305 port {
306 dpi_out: endpoint {
307 remote-endpoint = <&lcd_in>;
308 data-lines = <24>;
309 };
310 };
311};
diff --git a/arch/arm/boot/dts/omap3-ldp.dts b/arch/arm/boot/dts/omap3-ldp.dts
index 476ff158ddb3..af272c156e21 100644
--- a/arch/arm/boot/dts/omap3-ldp.dts
+++ b/arch/arm/boot/dts/omap3-ldp.dts
@@ -164,6 +164,11 @@
164 164
165#include "twl4030.dtsi" 165#include "twl4030.dtsi"
166#include "twl4030_omap3.dtsi" 166#include "twl4030_omap3.dtsi"
167#include "omap3-panel-sharp-ls037v7dw01.dtsi"
168
169&backlight0 {
170 gpios = <&twl_gpio 7 GPIO_ACTIVE_HIGH>;
171};
167 172
168&i2c2 { 173&i2c2 {
169 clock-frequency = <400000>; 174 clock-frequency = <400000>;
@@ -173,6 +178,25 @@
173 clock-frequency = <400000>; 178 clock-frequency = <400000>;
174}; 179};
175 180
181/* tps61130rsa enabled by twl4030 regen */
182&lcd_3v3 {
183 regulator-always-on;
184};
185
186&lcd0 {
187 enable-gpios = <&twl_gpio 15 GPIO_ACTIVE_HIGH>; /* lcd INI */
188 reset-gpios = <&gpio2 23 GPIO_ACTIVE_HIGH>; /* gpio55, lcd RESB */
189 mode-gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>; /* gpio56, lcd MO */
190};
191
192&mcspi1 {
193 tsc2046@0 {
194 interrupt-parent = <&gpio2>;
195 interrupts = <22 0>; /* gpio54 */
196 pendown-gpio = <&gpio2 22 0>;
197 };
198};
199
176&mmc1 { 200&mmc1 {
177 /* See 35xx errata 2.1.1.128 in SPRZ278F */ 201 /* See 35xx errata 2.1.1.128 in SPRZ278F */
178 compatible = "ti,omap3-pre-es3-hsmmc"; 202 compatible = "ti,omap3-pre-es3-hsmmc";
@@ -251,8 +275,3 @@
251 /* Needed for ads7846 */ 275 /* Needed for ads7846 */
252 regulator-name = "vcc"; 276 regulator-name = "vcc";
253}; 277};
254
255&vpll2 {
256 /* Needed for DSS */
257 regulator-name = "vdds_dsi";
258};
diff --git a/arch/arm/boot/dts/omap3-overo-alto35-common.dtsi b/arch/arm/boot/dts/omap3-overo-alto35-common.dtsi
index 19d64864a109..7aae8fb82c1f 100644
--- a/arch/arm/boot/dts/omap3-overo-alto35-common.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-alto35-common.dtsi
@@ -11,6 +11,7 @@
11 */ 11 */
12 12
13#include "omap3-overo-common-peripherals.dtsi" 13#include "omap3-overo-common-peripherals.dtsi"
14#include "omap3-overo-common-lcd35.dtsi"
14 15
15#include <dt-bindings/input/input.h> 16#include <dt-bindings/input/input.h>
16 17
diff --git a/arch/arm/boot/dts/omap3-overo-chestnut43-common.dtsi b/arch/arm/boot/dts/omap3-overo-chestnut43-common.dtsi
index 19de6ff79686..17b82f82638a 100644
--- a/arch/arm/boot/dts/omap3-overo-chestnut43-common.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-chestnut43-common.dtsi
@@ -11,6 +11,7 @@
11 */ 11 */
12 12
13#include "omap3-overo-common-peripherals.dtsi" 13#include "omap3-overo-common-peripherals.dtsi"
14#include "omap3-overo-common-lcd43.dtsi"
14 15
15#include <dt-bindings/input/input.h> 16#include <dt-bindings/input/input.h>
16 17
diff --git a/arch/arm/boot/dts/omap3-overo-common-dvi.dtsi b/arch/arm/boot/dts/omap3-overo-common-dvi.dtsi
new file mode 100644
index 000000000000..802f704f67e5
--- /dev/null
+++ b/arch/arm/boot/dts/omap3-overo-common-dvi.dtsi
@@ -0,0 +1,111 @@
1/*
2 * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9/*
10 * DVI output for some Gumstix Overo boards (Tobi and Summit)
11 */
12
13&omap3_pmx_core {
14 dss_dpi_pins: pinmux_dss_dpi_pins {
15 pinctrl-single,pins = <
16 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
17 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
18 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
19 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
20 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */
21 OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */
22 OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */
23 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */
24 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */
25 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */
26 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
27 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
28 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
29 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
30 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
31 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
32 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
33 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
34 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
35 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
36 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
37 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
38 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */
39 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */
40 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */
41 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */
42 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */
43 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */
44 >;
45 };
46};
47
48/* Needed to power the DPI pins */
49&vpll2 {
50 regulator-always-on;
51};
52
53&dss {
54 status = "ok";
55
56 pinctrl-names = "default";
57 pinctrl-0 = <&dss_dpi_pins>;
58
59 port {
60 dpi_out: endpoint {
61 remote-endpoint = <&tfp410_in>;
62 data-lines = <24>;
63 };
64 };
65};
66
67/ {
68 aliases {
69 display0 = &dvi0;
70 };
71
72 tfp410: encoder@0 {
73 compatible = "ti,tfp410";
74
75 ports {
76 #address-cells = <1>;
77 #size-cells = <0>;
78
79 port@0 {
80 reg = <0>;
81
82 tfp410_in: endpoint@0 {
83 remote-endpoint = <&dpi_out>;
84 };
85 };
86
87 port@1 {
88 reg = <1>;
89
90 tfp410_out: endpoint@0 {
91 remote-endpoint = <&dvi_connector_in>;
92 };
93 };
94 };
95 };
96
97 dvi0: connector@0 {
98 compatible = "dvi-connector";
99 label = "dvi";
100
101 digital;
102 ddc-i2c-bus = <&i2c3>;
103
104 port {
105 dvi_connector_in: endpoint {
106 remote-endpoint = <&tfp410_out>;
107 };
108 };
109 };
110};
111
diff --git a/arch/arm/boot/dts/omap3-overo-common-lcd35.dtsi b/arch/arm/boot/dts/omap3-overo-common-lcd35.dtsi
new file mode 100644
index 000000000000..233c69e50ae3
--- /dev/null
+++ b/arch/arm/boot/dts/omap3-overo-common-lcd35.dtsi
@@ -0,0 +1,165 @@
1/*
2 * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9/*
10 * 4.3'' LCD panel output for some Gumstix Overo boards (Gallop43, Chestnut43)
11 */
12
13&omap3_pmx_core {
14 dss_dpi_pins: pinmux_dss_dpi_pins {
15 pinctrl-single,pins = <
16 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
17 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
18 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
19 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
20 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */
21 OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */
22 OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */
23 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */
24 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */
25 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */
26 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
27 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
28 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
29 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
30 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
31 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
32 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
33 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
34 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
35 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
36 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
37 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
38 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */
39 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */
40 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */
41 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */
42 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */
43 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */
44 >;
45 };
46
47 lb035_pins: pinmux_lb035_pins {
48 pinctrl-single,pins = <
49 OMAP3_CORE1_IOPAD(0x2174, PIN_OUTPUT | MUX_MODE4) /* uart2_cts.gpio_144 */
50 >;
51 };
52
53 backlight_pins: pinmux_backlight_pins {
54 pinctrl-single,pins = <
55 OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE4) /* uart2_rts.gpio_145 */
56 >;
57 };
58
59 mcspi1_pins: pinmux_mcspi1_pins {
60 pinctrl-single,pins = <
61 OMAP3_CORE1_IOPAD(0x21c8, PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */
62 OMAP3_CORE1_IOPAD(0x21ca, PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */
63 OMAP3_CORE1_IOPAD(0x21cc, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
64 OMAP3_CORE1_IOPAD(0x21ce, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */
65 >;
66 };
67
68 ads7846_pins: pinmux_ads7846_pins {
69 pinctrl-single,pins = <
70 OMAP3_CORE1_IOPAD(0x2138, PIN_INPUT_PULLDOWN | MUX_MODE4) /* csi2_dx1.gpio_114 */
71 >;
72 };
73};
74
75/* Needed to power the DPI pins */
76&vpll2 {
77 regulator-always-on;
78};
79
80&dss {
81 status = "ok";
82
83 pinctrl-names = "default";
84 pinctrl-0 = <&dss_dpi_pins>;
85
86 port {
87 dpi_out: endpoint {
88 remote-endpoint = <&lcd_in>;
89 data-lines = <24>;
90 };
91 };
92};
93
94/ {
95 aliases {
96 display0 = &lcd0;
97 };
98
99 ads7846reg: ads7846-reg {
100 compatible = "regulator-fixed";
101 regulator-name = "ads7846-reg";
102 regulator-min-microvolt = <3300000>;
103 regulator-max-microvolt = <3300000>;
104 };
105
106 backlight {
107 compatible = "gpio-backlight";
108
109 pinctrl-names = "default";
110 pinctrl-0 = <&backlight_pins>;
111 gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>; /* gpio_145 */
112
113 default-on;
114 };
115};
116
117&mcspi1 {
118 pinctrl-names = "default";
119 pinctrl-0 = <&mcspi1_pins>;
120
121 lcd0: display@0 {
122 compatible = "lgphilips,lb035q02";
123 label = "lcd";
124
125 reg = <1>; /* CS1 */
126 spi-max-frequency = <10000000>;
127 spi-cpol;
128 spi-cpha;
129
130 pinctrl-names = "default";
131 pinctrl-0 = <&lb035_pins>;
132 enable-gpios = <&gpio5 16 GPIO_ACTIVE_HIGH>; /* gpio_144 */
133
134 port {
135 lcd_in: endpoint {
136 remote-endpoint = <&dpi_out>;
137 };
138 };
139 };
140
141 /* touch controller */
142 ads7846@0 {
143 pinctrl-names = "default";
144 pinctrl-0 = <&ads7846_pins>;
145
146 compatible = "ti,ads7846";
147 vcc-supply = <&ads7846reg>;
148
149 reg = <0>; /* CS0 */
150 spi-max-frequency = <1500000>;
151
152 interrupt-parent = <&gpio4>;
153 interrupts = <18 0>; /* gpio_114 */
154 pendown-gpio = <&gpio4 18 0>;
155
156 ti,x-min = /bits/ 16 <0x0>;
157 ti,x-max = /bits/ 16 <0x0fff>;
158 ti,y-min = /bits/ 16 <0x0>;
159 ti,y-max = /bits/ 16 <0x0fff>;
160 ti,x-plate-ohms = /bits/ 16 <180>;
161 ti,pressure-max = /bits/ 16 <255>;
162
163 linux,wakeup;
164 };
165};
diff --git a/arch/arm/boot/dts/omap3-overo-common-lcd43.dtsi b/arch/arm/boot/dts/omap3-overo-common-lcd43.dtsi
new file mode 100644
index 000000000000..f5395b7da912
--- /dev/null
+++ b/arch/arm/boot/dts/omap3-overo-common-lcd43.dtsi
@@ -0,0 +1,178 @@
1/*
2 * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9/*
10 * 4.3'' LCD panel output for some Gumstix Overo boards (Gallop43, Chestnut43)
11 */
12
13&omap3_pmx_core {
14 dss_dpi_pins: pinmux_dss_dpi_pins {
15 pinctrl-single,pins = <
16 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
17 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
18 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
19 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
20 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */
21 OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */
22 OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */
23 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */
24 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */
25 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */
26 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
27 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
28 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
29 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
30 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
31 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
32 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
33 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
34 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
35 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
36 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
37 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
38 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */
39 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */
40 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */
41 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */
42 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */
43 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */
44 >;
45 };
46
47 lte430_pins: pinmux_lte430_pins {
48 pinctrl-single,pins = <
49 OMAP3_CORE1_IOPAD(0x2174, PIN_OUTPUT | MUX_MODE4) /* uart2_cts.gpio_144 */
50 >;
51 };
52
53 backlight_pins: pinmux_backlight_pins {
54 pinctrl-single,pins = <
55 OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE4) /* uart2_rts.gpio_145 */
56 >;
57 };
58
59 mcspi1_pins: pinmux_mcspi1_pins {
60 pinctrl-single,pins = <
61 OMAP3_CORE1_IOPAD(0x21c8, PIN_INPUT | MUX_MODE0) /* mcspi1_clk.mcspi1_clk */
62 OMAP3_CORE1_IOPAD(0x21ca, PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */
63 OMAP3_CORE1_IOPAD(0x21cc, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
64 OMAP3_CORE1_IOPAD(0x21ce, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */
65 >;
66 };
67
68 ads7846_pins: pinmux_ads7846_pins {
69 pinctrl-single,pins = <
70 OMAP3_CORE1_IOPAD(0x2138, PIN_INPUT_PULLDOWN | MUX_MODE4) /* csi2_dx1.gpio_114 */
71 >;
72 };
73};
74
75/* Needed to power the DPI pins */
76&vpll2 {
77 regulator-always-on;
78};
79
80&dss {
81 status = "ok";
82
83 pinctrl-names = "default";
84 pinctrl-0 = <&dss_dpi_pins>;
85
86 port {
87 dpi_out: endpoint {
88 remote-endpoint = <&lcd_in>;
89 data-lines = <24>;
90 };
91 };
92};
93
94/ {
95 aliases {
96 display0 = &lcd0;
97 };
98
99 lcd0: display@0 {
100 compatible = "samsung,lte430wq-f0c", "panel-dpi";
101 label = "lcd";
102
103 pinctrl-names = "default";
104 pinctrl-0 = <&lte430_pins>;
105 enable-gpios = <&gpio5 16 GPIO_ACTIVE_HIGH>; /* gpio_144 */
106
107 port {
108 lcd_in: endpoint {
109 remote-endpoint = <&dpi_out>;
110 };
111 };
112
113 panel-timing {
114 clock-frequency = <9200000>;
115 hactive = <480>;
116 vactive = <272>;
117 hfront-porch = <8>;
118 hback-porch = <4>;
119 hsync-len = <41>;
120 vback-porch = <2>;
121 vfront-porch = <4>;
122 vsync-len = <10>;
123
124 hsync-active = <0>;
125 vsync-active = <0>;
126 de-active = <1>;
127 pixelclk-active = <1>;
128 };
129 };
130
131 ads7846reg: ads7846-reg {
132 compatible = "regulator-fixed";
133 regulator-name = "ads7846-reg";
134 regulator-min-microvolt = <3300000>;
135 regulator-max-microvolt = <3300000>;
136 };
137
138 backlight {
139 compatible = "gpio-backlight";
140
141 pinctrl-names = "default";
142 pinctrl-0 = <&backlight_pins>;
143 gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>; /* gpio_145 */
144
145 default-on;
146 };
147};
148
149&mcspi1 {
150 pinctrl-names = "default";
151 pinctrl-0 = <&mcspi1_pins>;
152
153 /* touch controller */
154 ads7846@0 {
155 pinctrl-names = "default";
156 pinctrl-0 = <&ads7846_pins>;
157
158 compatible = "ti,ads7846";
159 vcc-supply = <&ads7846reg>;
160
161 reg = <0>; /* CS0 */
162 spi-max-frequency = <1500000>;
163
164 interrupt-parent = <&gpio4>;
165 interrupts = <18 0>; /* gpio_114 */
166 pendown-gpio = <&gpio4 18 0>;
167
168 ti,x-min = /bits/ 16 <0x0>;
169 ti,x-max = /bits/ 16 <0x0fff>;
170 ti,y-min = /bits/ 16 <0x0>;
171 ti,y-max = /bits/ 16 <0x0fff>;
172 ti,x-plate-ohms = /bits/ 16 <180>;
173 ti,pressure-max = /bits/ 16 <255>;
174
175 linux,wakeup;
176 };
177};
178
diff --git a/arch/arm/boot/dts/omap3-overo-gallop43-common.dtsi b/arch/arm/boot/dts/omap3-overo-gallop43-common.dtsi
index 5e848c26986b..49d2254a99b0 100644
--- a/arch/arm/boot/dts/omap3-overo-gallop43-common.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-gallop43-common.dtsi
@@ -11,6 +11,7 @@
11 */ 11 */
12 12
13#include "omap3-overo-common-peripherals.dtsi" 13#include "omap3-overo-common-peripherals.dtsi"
14#include "omap3-overo-common-lcd43.dtsi"
14 15
15#include <dt-bindings/input/input.h> 16#include <dt-bindings/input/input.h>
16 17
diff --git a/arch/arm/boot/dts/omap3-overo-palo43-common.dtsi b/arch/arm/boot/dts/omap3-overo-palo43-common.dtsi
index abea232825b9..087aedf5b902 100644
--- a/arch/arm/boot/dts/omap3-overo-palo43-common.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-palo43-common.dtsi
@@ -11,6 +11,7 @@
11 */ 11 */
12 12
13#include "omap3-overo-common-peripherals.dtsi" 13#include "omap3-overo-common-peripherals.dtsi"
14#include "omap3-overo-common-lcd43.dtsi"
14 15
15#include <dt-bindings/input/input.h> 16#include <dt-bindings/input/input.h>
16 17
diff --git a/arch/arm/boot/dts/omap3-overo-summit-common.dtsi b/arch/arm/boot/dts/omap3-overo-summit-common.dtsi
index 999d1cd4a09f..0ac97ba98549 100644
--- a/arch/arm/boot/dts/omap3-overo-summit-common.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-summit-common.dtsi
@@ -11,6 +11,7 @@
11 */ 11 */
12 12
13#include "omap3-overo-common-peripherals.dtsi" 13#include "omap3-overo-common-peripherals.dtsi"
14#include "omap3-overo-common-dvi.dtsi"
14 15
15/ { 16/ {
16 leds { 17 leds {
diff --git a/arch/arm/boot/dts/omap3-overo-tobi-common.dtsi b/arch/arm/boot/dts/omap3-overo-tobi-common.dtsi
index 13df50b39442..9e24b6a1d07b 100644
--- a/arch/arm/boot/dts/omap3-overo-tobi-common.dtsi
+++ b/arch/arm/boot/dts/omap3-overo-tobi-common.dtsi
@@ -11,6 +11,7 @@
11 */ 11 */
12 12
13#include "omap3-overo-common-peripherals.dtsi" 13#include "omap3-overo-common-peripherals.dtsi"
14#include "omap3-overo-common-dvi.dtsi"
14 15
15/ { 16/ {
16 leds { 17 leds {
diff --git a/arch/arm/boot/dts/omap3-panel-sharp-ls037v7dw01.dtsi b/arch/arm/boot/dts/omap3-panel-sharp-ls037v7dw01.dtsi
new file mode 100644
index 000000000000..f4b1a61853e3
--- /dev/null
+++ b/arch/arm/boot/dts/omap3-panel-sharp-ls037v7dw01.dtsi
@@ -0,0 +1,71 @@
1/*
2 * Common file for omap dpi panels with QVGA and reset pins
3 *
4 * Note that the board specifc DTS file needs to specify
5 * at minimum the GPIO enable-gpios for display, and
6 * gpios for gpio-backlight.
7 */
8
9/ {
10 aliases {
11 display0 = &lcd0;
12 };
13
14 backlight0: backlight {
15 compatible = "gpio-backlight";
16 default-on;
17 };
18
19 /* 3.3V GPIO controlled regulator for LCD_ENVDD */
20 lcd_3v3: regulator-lcd-3v3 {
21 compatible = "regulator-fixed";
22 regulator-name = "lcd_3v3";
23 regulator-min-microvolt = <3300000>;
24 regulator-max-microvolt = <3300000>;
25 startup-delay-us = <70000>;
26 };
27
28 lcd0: display {
29 compatible = "sharp,ls037v7dw01";
30 label = "lcd";
31 power-supply = <&lcd_3v3>;
32
33 port {
34 lcd_in: endpoint {
35 remote-endpoint = <&dpi_out>;
36 };
37 };
38 };
39};
40
41/* Needed to power the DPI pins */
42&vpll2 {
43 regulator-always-on;
44};
45
46&dss {
47 status = "ok";
48 port {
49 dpi_out: endpoint {
50 remote-endpoint = <&lcd_in>;
51 data-lines = <18>;
52 };
53 };
54};
55
56&mcspi1 {
57 tsc2046@0 {
58 reg = <0>; /* CS0 */
59 compatible = "ti,tsc2046";
60 spi-max-frequency = <1000000>;
61 vcc-supply = <&lcd_3v3>;
62 ti,x-min = /bits/ 16 <0>;
63 ti,x-max = /bits/ 16 <8000>;
64 ti,y-min = /bits/ 16 <0>;
65 ti,y-max = /bits/ 16 <4800>;
66 ti,x-plate-ohms = /bits/ 16 <40>;
67 ti,pressure-max = /bits/ 16 <255>;
68 ti,swap-xy;
69 linux,wakeup;
70 };
71};
diff --git a/arch/arm/boot/dts/omap4-duovero-parlor.dts b/arch/arm/boot/dts/omap4-duovero-parlor.dts
index cd53a64d8f2e..6dc84d9f9b4c 100644
--- a/arch/arm/boot/dts/omap4-duovero-parlor.dts
+++ b/arch/arm/boot/dts/omap4-duovero-parlor.dts
@@ -15,6 +15,10 @@
15 model = "OMAP4430 Gumstix Duovero on Parlor"; 15 model = "OMAP4430 Gumstix Duovero on Parlor";
16 compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4"; 16 compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";
17 17
18 aliases {
19 display0 = &hdmi0;
20 };
21
18 leds { 22 leds {
19 compatible = "gpio-leds"; 23 compatible = "gpio-leds";
20 led0 { 24 led0 {
@@ -35,6 +39,21 @@
35 gpio-key,wakeup; 39 gpio-key,wakeup;
36 }; 40 };
37 }; 41 };
42
43 hdmi0: connector@0 {
44 compatible = "hdmi-connector";
45 label = "hdmi";
46
47 type = "d";
48
49 hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; /* gpio_63 */
50
51 port {
52 hdmi_connector_in: endpoint {
53 remote-endpoint = <&hdmi_out>;
54 };
55 };
56 };
38}; 57};
39 58
40&omap4_pmx_core { 59&omap4_pmx_core {
@@ -77,6 +96,15 @@
77 OMAP4_IOPAD(0x070, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48: amdix enabled */ 96 OMAP4_IOPAD(0x070, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48: amdix enabled */
78 >; 97 >;
79 }; 98 };
99
100 dss_hdmi_pins: pinmux_dss_hdmi_pins {
101 pinctrl-single,pins = <
102 OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3) /* hdmi_hpd.gpio_63 */
103 OMAP4_IOPAD(0x09a, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
104 OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_ddc_scl.hdmi_ddc_scl */
105 OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_ddc_sda.hdmi_ddc_sda */
106 >;
107 };
80}; 108};
81 109
82&i2c2 { 110&i2c2 {
@@ -143,4 +171,20 @@
143 }; 171 };
144}; 172};
145 173
174&dss {
175 status = "ok";
176};
177
178&hdmi {
179 status = "ok";
180
181 pinctrl-names = "default";
182 pinctrl-0 = <&dss_hdmi_pins>;
183
184 port {
185 hdmi_out: endpoint {
186 remote-endpoint = <&hdmi_connector_in>;
187 };
188 };
189};
146 190
diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
index 43a587e097d4..7e26d222bfe3 100644
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -922,6 +922,8 @@
922 ti,hwmods = "dss_hdmi"; 922 ti,hwmods = "dss_hdmi";
923 clocks = <&dss_48mhz_clk>, <&dss_sys_clk>; 923 clocks = <&dss_48mhz_clk>, <&dss_sys_clk>;
924 clock-names = "fck", "sys_clk"; 924 clock-names = "fck", "sys_clk";
925 dmas = <&sdma 76>;
926 dma-names = "audio_tx";
925 }; 927 };
926 }; 928 };
927 }; 929 };
diff --git a/arch/arm/boot/dts/omap5-uevm.dts b/arch/arm/boot/dts/omap5-uevm.dts
index 3b99ec25b748..1e1b05768cec 100644
--- a/arch/arm/boot/dts/omap5-uevm.dts
+++ b/arch/arm/boot/dts/omap5-uevm.dts
@@ -20,6 +20,10 @@
20 reg = <0x80000000 0x7F000000>; /* 2032 MB */ 20 reg = <0x80000000 0x7F000000>; /* 2032 MB */
21 }; 21 };
22 22
23 aliases {
24 display0 = &hdmi0;
25 };
26
23 vmmcsd_fixed: fixedregulator-mmcsd { 27 vmmcsd_fixed: fixedregulator-mmcsd {
24 compatible = "regulator-fixed"; 28 compatible = "regulator-fixed";
25 regulator-name = "vmmcsd_fixed"; 29 regulator-name = "vmmcsd_fixed";
@@ -51,6 +55,51 @@
51 default-state = "off"; 55 default-state = "off";
52 }; 56 };
53 }; 57 };
58
59 tpd12s015: encoder@0 {
60 compatible = "ti,tpd12s015";
61
62 pinctrl-names = "default";
63 pinctrl-0 = <&tpd12s015_pins>;
64
65 gpios = <&gpio9 0 GPIO_ACTIVE_HIGH>, /* TCA6424A P01, CT CP HPD */
66 <&gpio9 1 GPIO_ACTIVE_HIGH>, /* TCA6424A P00, LS OE */
67 <&gpio7 1 GPIO_ACTIVE_HIGH>; /* GPIO 193, HPD */
68
69 ports {
70 #address-cells = <1>;
71 #size-cells = <0>;
72
73 port@0 {
74 reg = <0>;
75
76 tpd12s015_in: endpoint@0 {
77 remote-endpoint = <&hdmi_out>;
78 };
79 };
80
81 port@1 {
82 reg = <1>;
83
84 tpd12s015_out: endpoint@0 {
85 remote-endpoint = <&hdmi_connector_in>;
86 };
87 };
88 };
89 };
90
91 hdmi0: connector@0 {
92 compatible = "hdmi-connector";
93 label = "hdmi";
94
95 type = "b";
96
97 port {
98 hdmi_connector_in: endpoint {
99 remote-endpoint = <&tpd12s015_out>;
100 };
101 };
102 };
54}; 103};
55 104
56&omap5_pmx_core { 105&omap5_pmx_core {
@@ -183,6 +232,19 @@
183 >; 232 >;
184 }; 233 };
185 234
235 dss_hdmi_pins: pinmux_dss_hdmi_pins {
236 pinctrl-single,pins = <
237 0x0fc (PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
238 0x100 (PIN_INPUT | MUX_MODE0) /* hdmi_ddc_scl.hdmi_ddc_scl */
239 0x102 (PIN_INPUT | MUX_MODE0) /* hdmi_ddc_sda.hdmi_ddc_sda */
240 >;
241 };
242
243 tpd12s015_pins: pinmux_tpd12s015_pins {
244 pinctrl-single,pins = <
245 0x0fe (PIN_INPUT_PULLDOWN | MUX_MODE6) /* hdmi_hpd.gpio7_193 */
246 >;
247 };
186}; 248};
187 249
188&omap5_pmx_wkup { 250&omap5_pmx_wkup {
@@ -434,6 +496,13 @@
434 pinctrl-0 = <&i2c5_pins>; 496 pinctrl-0 = <&i2c5_pins>;
435 497
436 clock-frequency = <400000>; 498 clock-frequency = <400000>;
499
500 gpio9: gpio@22 {
501 compatible = "ti,tca6424";
502 reg = <0x22>;
503 gpio-controller;
504 #gpio-cells = <2>;
505 };
437}; 506};
438 507
439&mcbsp3 { 508&mcbsp3 {
@@ -491,3 +560,21 @@
491&cpu0 { 560&cpu0 {
492 cpu0-supply = <&smps123_reg>; 561 cpu0-supply = <&smps123_reg>;
493}; 562};
563
564&dss {
565 status = "ok";
566};
567
568&hdmi {
569 status = "ok";
570 vdda-supply = <&ldo4_reg>;
571
572 pinctrl-names = "default";
573 pinctrl-0 = <&dss_hdmi_pins>;
574
575 port {
576 hdmi_out: endpoint {
577 remote-endpoint = <&tpd12s015_in>;
578 };
579 };
580};
diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
index e58be57984ab..3bfda16c8b52 100644
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -924,6 +924,68 @@
924 ti,hwmods = "sata"; 924 ti,hwmods = "sata";
925 }; 925 };
926 926
927 dss: dss@58000000 {
928 compatible = "ti,omap5-dss";
929 reg = <0x58000000 0x80>;
930 status = "disabled";
931 ti,hwmods = "dss_core";
932 clocks = <&dss_dss_clk>;
933 clock-names = "fck";
934 #address-cells = <1>;
935 #size-cells = <1>;
936 ranges;
937
938 dispc@58001000 {
939 compatible = "ti,omap5-dispc";
940 reg = <0x58001000 0x1000>;
941 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
942 ti,hwmods = "dss_dispc";
943 clocks = <&dss_dss_clk>;
944 clock-names = "fck";
945 };
946
947 dsi1: encoder@58004000 {
948 compatible = "ti,omap5-dsi";
949 reg = <0x58004000 0x200>,
950 <0x58004200 0x40>,
951 <0x58004300 0x40>;
952 reg-names = "proto", "phy", "pll";
953 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
954 status = "disabled";
955 ti,hwmods = "dss_dsi1";
956 clocks = <&dss_dss_clk>, <&dss_sys_clk>;
957 clock-names = "fck", "sys_clk";
958 };
959
960 dsi2: encoder@58005000 {
961 compatible = "ti,omap5-dsi";
962 reg = <0x58009000 0x200>,
963 <0x58009200 0x40>,
964 <0x58009300 0x40>;
965 reg-names = "proto", "phy", "pll";
966 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
967 status = "disabled";
968 ti,hwmods = "dss_dsi2";
969 clocks = <&dss_dss_clk>, <&dss_sys_clk>;
970 clock-names = "fck", "sys_clk";
971 };
972
973 hdmi: encoder@58060000 {
974 compatible = "ti,omap5-hdmi";
975 reg = <0x58040000 0x200>,
976 <0x58040200 0x80>,
977 <0x58040300 0x80>,
978 <0x58060000 0x19000>;
979 reg-names = "wp", "pll", "phy", "core";
980 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
981 status = "disabled";
982 ti,hwmods = "dss_hdmi";
983 clocks = <&dss_48mhz_clk>, <&dss_sys_clk>;
984 clock-names = "fck", "sys_clk";
985 dmas = <&sdma 76>;
986 dma-names = "audio_tx";
987 };
988 };
927 }; 989 };
928}; 990};
929 991