aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot
diff options
context:
space:
mode:
authorMarek Belisko <marek@goldelico.com>2014-05-08 16:16:51 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2014-06-03 03:22:21 -0400
commitc2e138bc8ed80ae291d689917e88d2d09bf1d478 (patch)
treeb888d93216a54dd1139f17fa9ee6e43306a6a566 /arch/arm/boot
parent6ac732e49800e471074185b130aea6e6f6df797c (diff)
ARM: dts: omap3-gta04: Add display support
This patch add support for lcd display on gta04 board. Display control is connected to spi (used spi bitbang driver). Signed-off-by: Marek Belisko <marek@goldelico.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/boot')
-rw-r--r--arch/arm/boot/dts/omap3-gta04.dts90
1 files changed, 90 insertions, 0 deletions
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};