Commit | Line | Data |
---|---|---|
c6135a6f UM |
1 | /* |
2 | * am335x-sbc-t335.dts - Device Tree file for Compulab SBC-T335 | |
3 | * | |
4 | * Copyright (C) 2014 - 2015 CompuLab Ltd. - http://www.compulab.co.il/ | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License version 2 as | |
8 | * published by the Free Software Foundation. | |
9 | */ | |
10 | ||
11 | #include "am335x-cm-t335.dts" | |
12 | ||
13 | / { | |
14 | model = "CompuLab CM-T335 on SB-T335"; | |
15 | compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx"; | |
3089e40e UM |
16 | |
17 | /* DRM display driver */ | |
18 | panel { | |
19 | compatible = "ti,tilcdc,panel"; | |
20 | status = "okay"; | |
21 | pinctrl-names = "default", "sleep"; | |
22 | pinctrl-0 = <&lcd_pins_default>; | |
23 | pinctrl-1 = <&lcd_pins_sleep>; | |
24 | ||
25 | panel-info { | |
26 | ac-bias = <255>; | |
27 | ac-bias-intrpt = <0>; | |
28 | dma-burst-sz = <16>; | |
29 | bpp = <32>; | |
30 | fdd = <0x80>; | |
31 | sync-edge = <0>; | |
32 | sync-ctrl = <1>; | |
33 | raster-order = <0>; | |
34 | fifo-th = <0>; | |
35 | }; | |
36 | display-timings { | |
37 | /* Timing selection performed by U-Boot */ | |
38 | timing0: lcd {/* 800x480p62 */ | |
39 | clock-frequency = <30000000>; | |
40 | hactive = <800>; | |
41 | vactive = <480>; | |
42 | hfront-porch = <39>; | |
43 | hback-porch = <39>; | |
44 | hsync-len = <47>; | |
45 | vback-porch = <29>; | |
46 | vfront-porch = <13>; | |
47 | vsync-len = <2>; | |
48 | hsync-active = <1>; | |
49 | vsync-active = <1>; | |
50 | }; | |
51 | timing1: dvi { /* 1024x768p60 */ | |
52 | clock-frequency = <65000000>; | |
53 | hactive = <1024>; | |
54 | hfront-porch = <24>; | |
55 | hback-porch = <160>; | |
56 | hsync-len = <136>; | |
57 | vactive = <768>; | |
58 | vfront-porch = <3>; | |
59 | vback-porch = <29>; | |
60 | vsync-len = <6>; | |
61 | hsync-active = <0>; | |
62 | vsync-active = <0>; | |
63 | }; | |
64 | }; | |
65 | }; | |
66 | }; | |
67 | ||
68 | &am33xx_pinmux { | |
69 | /* Display */ | |
70 | lcd_pins_default: lcd_pins_default { | |
71 | pinctrl-single,pins = < | |
72 | /* gpmc_ad8.lcd_data23 */ | |
73 | AM33XX_IOPAD(0x820, PIN_OUTPUT | MUX_MODE1) | |
74 | /* gpmc_ad9.lcd_data22 */ | |
75 | AM33XX_IOPAD(0x824, PIN_OUTPUT | MUX_MODE1) | |
76 | /* gpmc_ad10.lcd_data21 */ | |
77 | AM33XX_IOPAD(0x828, PIN_OUTPUT | MUX_MODE1) | |
78 | /* gpmc_ad11.lcd_data20 */ | |
79 | AM33XX_IOPAD(0x82c, PIN_OUTPUT | MUX_MODE1) | |
80 | /* gpmc_ad12.lcd_data19 */ | |
81 | AM33XX_IOPAD(0x830, PIN_OUTPUT | MUX_MODE1) | |
82 | /* gpmc_ad13.lcd_data18 */ | |
83 | AM33XX_IOPAD(0x834, PIN_OUTPUT | MUX_MODE1) | |
84 | /* gpmc_ad14.lcd_data17 */ | |
85 | AM33XX_IOPAD(0x838, PIN_OUTPUT | MUX_MODE1) | |
86 | /* gpmc_ad15.lcd_data16 */ | |
87 | AM33XX_IOPAD(0x83c, PIN_OUTPUT | MUX_MODE1) | |
88 | /* lcd_data0.lcd_data0 */ | |
89 | AM33XX_IOPAD(0x8a0, PIN_OUTPUT | MUX_MODE0) | |
90 | /* lcd_data1.lcd_data1 */ | |
91 | AM33XX_IOPAD(0x8a4, PIN_OUTPUT | MUX_MODE0) | |
92 | /* lcd_data2.lcd_data2 */ | |
93 | AM33XX_IOPAD(0x8a8, PIN_OUTPUT | MUX_MODE0) | |
94 | /* lcd_data3.lcd_data3 */ | |
95 | AM33XX_IOPAD(0x8ac, PIN_OUTPUT | MUX_MODE0) | |
96 | /* lcd_data4.lcd_data4 */ | |
97 | AM33XX_IOPAD(0x8b0, PIN_OUTPUT | MUX_MODE0) | |
98 | /* lcd_data5.lcd_data5 */ | |
99 | AM33XX_IOPAD(0x8b4, PIN_OUTPUT | MUX_MODE0) | |
100 | /* lcd_data6.lcd_data6 */ | |
101 | AM33XX_IOPAD(0x8b8, PIN_OUTPUT | MUX_MODE0) | |
102 | /* lcd_data7.lcd_data7 */ | |
103 | AM33XX_IOPAD(0x8bc, PIN_OUTPUT | MUX_MODE0) | |
104 | /* lcd_data8.lcd_data8 */ | |
105 | AM33XX_IOPAD(0x8c0, PIN_OUTPUT | MUX_MODE0) | |
106 | /* lcd_data9.lcd_data9 */ | |
107 | AM33XX_IOPAD(0x8c4, PIN_OUTPUT | MUX_MODE0) | |
108 | /* lcd_data10.lcd_data10 */ | |
109 | AM33XX_IOPAD(0x8c8, PIN_OUTPUT | MUX_MODE0) | |
110 | /* lcd_data11.lcd_data11 */ | |
111 | AM33XX_IOPAD(0x8cc, PIN_OUTPUT | MUX_MODE0) | |
112 | /* lcd_data12.lcd_data12 */ | |
113 | AM33XX_IOPAD(0x8d0, PIN_OUTPUT | MUX_MODE0) | |
114 | /* lcd_data13.lcd_data13 */ | |
115 | AM33XX_IOPAD(0x8d4, PIN_OUTPUT | MUX_MODE0) | |
116 | /* lcd_data14.lcd_data14 */ | |
117 | AM33XX_IOPAD(0x8d8, PIN_OUTPUT | MUX_MODE0) | |
118 | /* lcd_data15.lcd_data15 */ | |
119 | AM33XX_IOPAD(0x8dc, PIN_OUTPUT | MUX_MODE0) | |
120 | /* lcd_vsync.lcd_vsync */ | |
121 | AM33XX_IOPAD(0x8e0, PIN_OUTPUT | MUX_MODE0) | |
122 | /* lcd_hsync.lcd_hsync */ | |
123 | AM33XX_IOPAD(0x8e4, PIN_OUTPUT | MUX_MODE0) | |
124 | /* lcd_pclk.lcd_pclk */ | |
125 | AM33XX_IOPAD(0x8e8, PIN_OUTPUT | MUX_MODE0) | |
126 | /* lcd_ac_bias_en.lcd_ac_bias_en */ | |
127 | AM33XX_IOPAD(0x8ec, PIN_OUTPUT | MUX_MODE0) | |
128 | >; | |
129 | }; | |
130 | ||
131 | lcd_pins_sleep: lcd_pins_sleep { | |
132 | pinctrl-single,pins = < | |
133 | /* gpmc_ad8.lcd_data23 */ | |
134 | AM33XX_IOPAD(0x820, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
135 | /* gpmc_ad9.lcd_data22 */ | |
136 | AM33XX_IOPAD(0x824, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
137 | /* gpmc_ad10.lcd_data21 */ | |
138 | AM33XX_IOPAD(0x828, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
139 | /* gpmc_ad11.lcd_data20 */ | |
140 | AM33XX_IOPAD(0x82c, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
141 | /* gpmc_ad12.lcd_data19 */ | |
142 | AM33XX_IOPAD(0x830, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
143 | /* gpmc_ad13.lcd_data18 */ | |
144 | AM33XX_IOPAD(0x834, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
145 | /* gpmc_ad14.lcd_data17 */ | |
146 | AM33XX_IOPAD(0x838, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
147 | /* gpmc_ad15.lcd_data16 */ | |
148 | AM33XX_IOPAD(0x83c, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
149 | /* lcd_data0.lcd_data0 */ | |
150 | AM33XX_IOPAD(0x8a0, PULL_DISABLE | MUX_MODE7) | |
151 | /* lcd_data1.lcd_data1 */ | |
152 | AM33XX_IOPAD(0x8a4, PULL_DISABLE | MUX_MODE7) | |
153 | /* lcd_data2.lcd_data2 */ | |
154 | AM33XX_IOPAD(0x8a8, PULL_DISABLE | MUX_MODE7) | |
155 | /* lcd_data3.lcd_data3 */ | |
156 | AM33XX_IOPAD(0x8ac, PULL_DISABLE | MUX_MODE7) | |
157 | /* lcd_data4.lcd_data4 */ | |
158 | AM33XX_IOPAD(0x8b0, PULL_DISABLE | MUX_MODE7) | |
159 | /* lcd_data5.lcd_data5 */ | |
160 | AM33XX_IOPAD(0x8b4, PULL_DISABLE | MUX_MODE7) | |
161 | /* lcd_data6.lcd_data6 */ | |
162 | AM33XX_IOPAD(0x8b8, PULL_DISABLE | MUX_MODE7) | |
163 | /* lcd_data7.lcd_data7 */ | |
164 | AM33XX_IOPAD(0x8bc, PULL_DISABLE | MUX_MODE7) | |
165 | /* lcd_data8.lcd_data8 */ | |
166 | AM33XX_IOPAD(0x8c0, PULL_DISABLE | MUX_MODE7) | |
167 | /* lcd_data9.lcd_data9 */ | |
168 | AM33XX_IOPAD(0x8c4, PULL_DISABLE | MUX_MODE7) | |
169 | /* lcd_data10.lcd_data10 */ | |
170 | AM33XX_IOPAD(0x8c8, PULL_DISABLE | MUX_MODE7) | |
171 | /* lcd_data11.lcd_data11 */ | |
172 | AM33XX_IOPAD(0x8cc, PULL_DISABLE | MUX_MODE7) | |
173 | /* lcd_data12.lcd_data12 */ | |
174 | AM33XX_IOPAD(0x8d0, PULL_DISABLE | MUX_MODE7) | |
175 | /* lcd_data13.lcd_data13 */ | |
176 | AM33XX_IOPAD(0x8d4, PULL_DISABLE | MUX_MODE7) | |
177 | /* lcd_data14.lcd_data14 */ | |
178 | AM33XX_IOPAD(0x8d8, PULL_DISABLE | MUX_MODE7) | |
179 | /* lcd_data15.lcd_data15 */ | |
180 | AM33XX_IOPAD(0x8dc, PULL_DISABLE | MUX_MODE7) | |
181 | /* lcd_vsync.lcd_vsync */ | |
182 | AM33XX_IOPAD(0x8e0, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
183 | /* lcd_hsync.lcd_hsync */ | |
184 | AM33XX_IOPAD(0x8e4, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
185 | /* lcd_pclk.lcd_pclk */ | |
186 | AM33XX_IOPAD(0x8e8, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
187 | /* lcd_ac_bias_en.lcd_ac_bias_en */ | |
188 | AM33XX_IOPAD(0x8ec, PIN_INPUT_PULLDOWN | MUX_MODE7) | |
189 | >; | |
190 | }; | |
c6135a6f | 191 | }; |
98e5d898 UM |
192 | |
193 | &i2c0 { | |
194 | /* GPIO extender */ | |
195 | gpio_ext: pca9555@26 { | |
196 | compatible = "nxp,pca9555"; | |
197 | pinctrl-names = "default"; | |
198 | gpio-controller; | |
199 | #gpio-cells = <2>; | |
200 | reg = <0x26>; | |
3089e40e UM |
201 | dvi_ena { |
202 | gpio-hog; | |
203 | gpios = <13 GPIO_ACTIVE_HIGH>; | |
204 | output-high; | |
205 | line-name = "dvi-enable"; | |
206 | }; | |
207 | lcd_ena { | |
208 | gpio-hog; | |
209 | gpios = <11 GPIO_ACTIVE_HIGH>; | |
210 | output-high; | |
211 | line-name = "lcd-enable"; | |
212 | }; | |
98e5d898 UM |
213 | }; |
214 | }; | |
3089e40e UM |
215 | |
216 | /* Display */ | |
217 | &lcdc { | |
218 | status = "okay"; | |
219 | }; |