diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-09 21:32:13 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-09 21:32:13 -0400 |
commit | 9894e6d9c020b754dd962960e9f7eac18282f69f (patch) | |
tree | d1f3c43d96095a9211ee0a941198be6fbb292f39 /arch/arm/boot/dts | |
parent | 82abb273d838318424644d8f02825db0fbbd400a (diff) | |
parent | 7d0fde3986c35dc1400cb552776c0a640ac354d7 (diff) |
Merge tag 'fbdev-omap-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux
Pull OMAP DT fbdev updates from Tomi Valkeinen:
"Here are display related device tree data changes for OMAP. They are
based on an already merged branch to satisfy the dependencies for the
dts file changes.
Add OMAP DT data:
- omap5 display subsystem
- display data for omap5 uEVM board
- am43xx display subsystem
- display data for am43xx ePOS and GP boards (LCD only)
- display data for GTA04 board
- display data for overo board
- display data for duovero-parlor board
- display data for omap3 evm and ldp boards"
* tag 'fbdev-omap-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
ARM: omap5.dtsi: Add audio related parameters to hdmi node
ARM: omap4.dtsi: Add audio related parametes to hdmi node
ARM: dts: duovero-parlor: Add HDMI output
ARM: dts: overo: Add support for 3.5'' LCD output
ARM: dts: overo: Add support for 4.3'' LCD output
ARM: dts: overo: Add support for DVI output
ARM: dts: Add LCD panel sharp ls037v7dw01 support for omap3-evm and ldp
ARM: dts: omap3-gta04: Add display support
ARM: dts: omap5-uevm.dts: add display nodes
ARM: dts: omap5-uevm.dts: add tca6424a
ARM: dts: omap5.dtsi: add DSS nodes
ARM: dts: am43x-epos-evm: add LCD data
ARM: dts: am437x-gp-evm: add LCD data
ARM: dts: am4372.dtsi: add DSS information
Diffstat (limited to 'arch/arm/boot/dts')
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 = <<e430_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 | ||