Merge tag 'drm-next-2019-11-27' of git://anongit.freedesktop.org/drm/drm
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / pxa300-raumfeld-controller.dts
1 // SPDX-License-Identifier: GPL-2.0
2
3 /dts-v1/;
4
5 #include "pxa300-raumfeld-common.dtsi"
6
7 / {
8         model = "Raumfeld Controller (PXA3xx)";
9         compatible = "raumfeld,raumfeld-controller-pxa303", "marvell,pxa300";
10
11         reg_vbatt: regulator-vbatt {
12                 compatible = "regulator-fixed";
13                 regulator-name = "vbatt-fixed-supply";
14                 regulator-min-microvolt = <3700000>;
15                 regulator-max-microvolt = <3700000>;
16                 regulator-always-on;
17         };
18
19         lcd_supply: regulator-va-tft {
20                 compatible = "regulator-fixed";
21                 regulator-name = "va-tft-fixed-supply";
22                 regulator-min-microvolt = <5000000>;
23                 regulator-max-microvolt = <5000000>;
24                 gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
25                 enable-active-high;
26         };
27
28         onewire {
29                 compatible = "w1-gpio";
30                 pinctrl-names = "default";
31                 pinctrl-0 = <&w1_pins>;
32                 gpios = <
33                         &gpio 126 GPIO_OPEN_DRAIN       /* W1 I/O       */
34                         &gpio 105 GPIO_ACTIVE_HIGH      /* pullup       */
35                 >;
36
37                 w1_ds2760: slave-ds2760 {
38                         compatible = "maxim,ds2760";
39                         power-supplies = <&charger>;
40                 };
41         };
42
43         charger: charger {
44                 pinctrl-names = "default";
45                 pinctrl-0 = <&charger_pins>;
46                 compatible = "gpio-charger";
47                 charger-type = "mains";
48                 gpios = <&gpio 101 GPIO_ACTIVE_LOW>;
49         };
50
51         /*
52          * One of the following two will be set to "okay" by the bootloader,
53          * depending on the hardware revision.
54          */
55         backlight-controller-pwm {
56                 compatible = "pwm-backlight";
57                 pinctrl-names = "default";
58                 pinctrl-0 = <&pwm0_pins>;
59                 pwms = <&pwm0 10000>;
60                 power-supply = <&reg_vbatt>;
61                 status = "disabled";
62
63                 brightness-levels = <
64                          0  1  2  3  4  5  6  7  8  9
65                         10 11 12 13 14 15 16 17 18 19
66                         20 21 22 23 24 25 26 27 28 29
67                         30 31 32 33 34 35 36 37 38 39
68                         40 41 42 43 44 45 46 47 48 49
69                         50 51 52 53 54 55 56 57 58 59
70                         60 61 62 63 64 65 66 67 68 69
71                         70 71 72 73 74 75 76 77 78 79
72                         80 81 82 83 84 85 86 87 88 89
73                         90 91 92 93 94 95 96 97 98 99
74                         100
75                 >;
76                 default-brightness-level = <100>;
77         };
78
79         backlight-controller {
80                 compatible = "lltc,lt3593";
81                 pinctrl-names = "default";
82                 pinctrl-0 = <&lt3593_pins>;
83                 lltc,ctrl-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
84                 status = "disabled";
85
86                 led {
87                         label = "backlight";
88                         default-state = "on";
89                 };
90         };
91 };
92
93 &reg_va_5v0 {
94         status = "disabled";
95 };
96
97 &ethernet {
98         status = "disabled";
99 };
100
101 &leds {
102         status = "disabled";
103 };
104
105 &dac {
106         status = "disabled";
107 };
108
109 &pwm0 {
110         status = "okay";
111 };
112
113 &keys {
114         pinctrl-0 = <&gpio_keys_pins &dock_detect_pins>;
115         dock-detect {
116                 label = "dock detect";
117                 gpios = <&gpio 116 GPIO_ACTIVE_LOW>;
118                 linux,code = <KEY_F5>;
119         };
120 };
121
122 &spi {
123         accelerometer@1 {
124                 compatible = "st,lis302dl-spi";
125                 pinctrl-names = "default";
126                 pinctrl-0 = <&lis302_pins>;
127                 reg = <1>;
128                 spi-max-frequency = <1000000>;
129                 interrupt-parent = <&gpio>;
130                 interrupts = <104 IRQ_TYPE_EDGE_FALLING>;
131
132                 st,click-single-x;
133                 st,click-single-y;
134                 st,click-single-z;
135                 st,click-thresh-x = <10>;
136                 st,click-thresh-y = <10>;
137                 st,click-thresh-z = <10>;
138                 st,irq1-click;
139                 st,irq2-click;
140                 st,wakeup-x-lo;
141                 st,wakeup-x-hi;
142                 st,wakeup-y-lo;
143                 st,wakeup-y-hi;
144                 st,wakeup-z-lo;
145                 st,wakeup-z-hi;
146         };
147 };
148
149 &lcdc {
150         status = "okay";
151         pinctrl-names = "default";
152         pinctrl-0 = <&lcdc_pins>;
153         lcd-supply = <&lcd_supply>;
154
155         port {
156                 lcdc_out: endpoint {
157                         remote-endpoint = <&panel_in>;
158                         bus-width = <16>;
159                 };
160         };
161
162         panel {
163                 compatible = "sharp,lq043t3dx0-panel";
164                 display-timings {
165                         native-mode = <&timing0>;
166                         timing0: timing {
167                                 clock-frequency = <9009000>;
168                                 pixelclk-active = <0>;  /* negative edge */
169                                 hactive = <480>;
170                                 vactive = <272>;
171                                 hsync-len = <41>;
172                                 hback-porch = <2>;
173                                 hfront-porch = <1>;
174                                 vsync-len = <10>;
175                                 vback-porch = <3>;
176                                 vfront-porch = <1>;
177                         };
178                 };
179
180                 port {
181                         panel_in: endpoint {
182                                 remote-endpoint = <&lcdc_out>;
183                         };
184                 };
185         };
186 };
187
188 &gcu {
189         status = "okay";
190 };
191
192 &pxai2c1 {
193         touchscreen@a {
194                 compatible = "eeti,exc3000-i2c";
195                 pinctrl-names = "default";
196                 pinctrl-0 = <&eeti_ts_pins>;
197                 reg = <0xa>;
198                 interrupt-parent = <&gpio>;
199                 interrupts = <32 IRQ_TYPE_EDGE_RISING>;
200                 attn-gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
201                 touchscreen-inverted-y;
202         };
203 };
204
205 &pinctrl {
206         lis302_pins: lis302-pins {
207                 pinctrl-single,pins = <
208                         MFP_PIN_PXA300(104) MFP_AF0     /* IRQ  */
209                 >;
210                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_LOW);
211         };
212
213         eeti_ts_pins: eeti-ts-pins {
214                 pinctrl-single,pins = <
215                         MFP_PIN_PXA300(32) MFP_AF0      /* IRQ */
216                 >;
217                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_FLOAT);
218         };
219
220         lt3593_pins: lt3593-pins {
221                 pinctrl-single,pins = <
222                         MFP_PIN_PXA300(17) MFP_AF0      /* Backlight    */
223                 >;
224                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_LOW);
225         };
226
227         pwm0_pins: pwm0-pins {
228                 pinctrl-single,pins = <
229                         MFP_PIN_PXA300(17) MFP_AF1      /* PWM  */
230                 >;
231                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_LOW);
232         };
233
234         w1_pins: w1-pins {
235                 pinctrl-single,pins = <
236                         MFP_PIN_PXA300(126) MFP_AF0     /* PWM  */
237                         MFP_PIN_PXA300(105) MFP_AF0     /* PWM  */
238                 >;
239                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_FLOAT);
240         };
241
242         charger_pins: charger_pins {
243                 pinctrl-single,pins = <
244                         MFP_PIN_PXA300(31) MFP_AF0      /* PEN2 */
245                 >;
246                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_HIGH);
247                 pinctrl-single,bias-pullup = MPF_PULL_UP;
248         };
249
250         dock_detect_pins: dock_detect_pins {
251                 pinctrl-single,pins = <
252                         MFP_PIN_PXA300(116) MFP_AF0     /* DOCK_DETECT  */
253                 >;
254                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_HIGH);
255                 pinctrl-single,bias-pullup = MPF_PULL_UP;
256         };
257
258         lcdc_pins: lcdc-pins {
259                 pinctrl-single,pins = <
260                         MFP_PIN_PXA300(54) MFP_AF1      /* LDD_0        */
261                         MFP_PIN_PXA300(55) MFP_AF1      /* LDD_1        */
262                         MFP_PIN_PXA300(56) MFP_AF1      /* LDD_2        */
263                         MFP_PIN_PXA300(57) MFP_AF1      /* LDD_3        */
264                         MFP_PIN_PXA300(58) MFP_AF1      /* LDD_4        */
265                         MFP_PIN_PXA300(59) MFP_AF1      /* LDD_5        */
266                         MFP_PIN_PXA300(60) MFP_AF1      /* LDD_6        */
267                         MFP_PIN_PXA300(61) MFP_AF1      /* LDD_7        */
268                         MFP_PIN_PXA300(62) MFP_AF1      /* LDD_8        */
269                         MFP_PIN_PXA300(63) MFP_AF1      /* LDD_9        */
270                         MFP_PIN_PXA300(64) MFP_AF1      /* LDD_10       */
271                         MFP_PIN_PXA300(65) MFP_AF1      /* LDD_11       */
272                         MFP_PIN_PXA300(66) MFP_AF1      /* LDD_12       */
273                         MFP_PIN_PXA300(67) MFP_AF1      /* LDD_13       */
274                         MFP_PIN_PXA300(68) MFP_AF1      /* LDD_14       */
275                         MFP_PIN_PXA300(69) MFP_AF1      /* LDD_15       */
276                         MFP_PIN_PXA300(70) MFP_AF1      /* LDD_16       */
277                         MFP_PIN_PXA300(71) MFP_AF1      /* LDD_17       */
278                         MFP_PIN_PXA300(72) MFP_AF1      /* LCD_FCLK     */
279                         MFP_PIN_PXA300(73) MFP_AF1      /* LCD_LCLK     */
280                         MFP_PIN_PXA300(74) MFP_AF1      /* LCD_PCLK     */
281                         MFP_PIN_PXA300(75) MFP_AF1      /* LCD_BIAS     */
282                 >;
283                 pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_LOW);
284         };
285 };