]>
Commit | Line | Data |
---|---|---|
53633a89 TR |
1 | // SPDX-License-Identifier: GPL-2.0 |
2 | /* | |
3 | * Device Tree Source for the iWave-RZG1E SODIMM carrier board | |
4 | * | |
5 | * Copyright (C) 2017 Renesas Electronics Corp. | |
6 | */ | |
7 | ||
8 | /* | |
9 | * SSI-SGTL5000 | |
10 | * | |
11 | * This command is required when Playback/Capture | |
12 | * | |
13 | * amixer set "DVC Out" 100% | |
14 | * amixer set "DVC In" 100% | |
15 | * | |
16 | * You can use Mute | |
17 | * | |
18 | * amixer set "DVC Out Mute" on | |
19 | * amixer set "DVC In Mute" on | |
20 | * | |
21 | * You can use Volume Ramp | |
22 | * | |
23 | * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps" | |
24 | * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps" | |
25 | * amixer set "DVC Out Ramp" on | |
26 | * aplay xxx.wav & | |
27 | * amixer set "DVC Out" 80% // Volume Down | |
28 | * amixer set "DVC Out" 100% // Volume Up | |
29 | */ | |
30 | ||
31 | /dts-v1/; | |
32 | #include "r8a7745-iwg22m.dtsi" | |
33 | #include <dt-bindings/pwm/pwm.h> | |
34 | ||
35 | / { | |
36 | model = "iWave Systems RainboW-G22D-SODIMM board based on RZ/G1E"; | |
37 | compatible = "iwave,g22d", "iwave,g22m", "renesas,r8a7745"; | |
38 | ||
39 | aliases { | |
40 | ethernet0 = &avb; | |
41 | serial3 = &scif4; | |
42 | serial5 = &hscif1; | |
43 | }; | |
44 | ||
45 | chosen { | |
46 | bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; | |
47 | stdout-path = "serial3:115200n8"; | |
48 | }; | |
49 | ||
50 | audio_clock: audio_clock { | |
51 | compatible = "fixed-clock"; | |
52 | #clock-cells = <0>; | |
53 | clock-frequency = <26000000>; | |
54 | }; | |
55 | ||
56 | backlight_lcd: backlight { | |
57 | compatible = "pwm-backlight"; | |
58 | pwms = <&tpu 3 5000000 PWM_POLARITY_INVERTED>; | |
59 | brightness-levels = <0 4 8 16 32 64 128 255>; | |
60 | default-brightness-level = <7>; | |
61 | }; | |
62 | ||
63 | lcd_panel: lcd { | |
64 | compatible = "edt,etm043080dh6gp"; | |
65 | power-supply = <&vccq_panel>; | |
66 | backlight = <&backlight_lcd>; | |
67 | ||
68 | port { | |
69 | lcd_in: endpoint { | |
70 | remote-endpoint = <&du_out_rgb0>; | |
71 | }; | |
72 | }; | |
73 | }; | |
74 | ||
75 | vccq_panel: regulator-vccq-panel { | |
76 | compatible = "regulator-fixed"; | |
77 | regulator-name = "Panel VccQ"; | |
78 | regulator-min-microvolt = <3300000>; | |
79 | regulator-max-microvolt = <3300000>; | |
80 | gpio = <&gpio1 13 GPIO_ACTIVE_LOW>; | |
81 | enable-active-high; | |
82 | }; | |
83 | ||
84 | vccq_sdhi0: regulator-vccq-sdhi0 { | |
85 | compatible = "regulator-gpio"; | |
86 | ||
87 | regulator-name = "SDHI0 VccQ"; | |
88 | regulator-min-microvolt = <1800000>; | |
89 | regulator-max-microvolt = <3300000>; | |
90 | ||
91 | gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; | |
92 | gpios-states = <1>; | |
93 | states = <3300000 1>, <1800000 0>; | |
94 | }; | |
95 | ||
96 | rsnd_sgtl5000: sound { | |
97 | compatible = "simple-audio-card"; | |
98 | simple-audio-card,format = "i2s"; | |
99 | simple-audio-card,bitclock-master = <&sndcodec>; | |
100 | simple-audio-card,frame-master = <&sndcodec>; | |
101 | ||
102 | sndcpu: simple-audio-card,cpu { | |
103 | sound-dai = <&rcar_sound>; | |
104 | }; | |
105 | ||
106 | sndcodec: simple-audio-card,codec { | |
107 | sound-dai = <&sgtl5000>; | |
108 | }; | |
109 | }; | |
110 | }; | |
111 | ||
112 | &avb { | |
113 | pinctrl-0 = <&avb_pins>; | |
114 | pinctrl-names = "default"; | |
115 | ||
116 | phy-handle = <&phy3>; | |
117 | phy-mode = "gmii"; | |
118 | renesas,no-ether-link; | |
119 | status = "okay"; | |
120 | ||
121 | phy3: ethernet-phy@3 { | |
122 | /* | |
123 | * On some older versions of the platform (before R4.0) the phy address | |
124 | * may be 1 or 3. The address is fixed to 3 for R4.0 onwards. | |
125 | */ | |
126 | compatible = "ethernet-phy-id0022.1622", | |
127 | "ethernet-phy-ieee802.3-c22"; | |
128 | reg = <3>; | |
129 | micrel,led-mode = <1>; | |
130 | }; | |
131 | }; | |
132 | ||
133 | &can0 { | |
134 | pinctrl-0 = <&can0_pins>; | |
135 | pinctrl-names = "default"; | |
136 | ||
137 | status = "okay"; | |
138 | }; | |
139 | ||
140 | &du { | |
141 | pinctrl-0 = <&du0_pins>; | |
142 | pinctrl-names = "default"; | |
143 | ||
144 | status = "okay"; | |
145 | ||
146 | ports { | |
147 | port@0 { | |
148 | endpoint { | |
149 | remote-endpoint = <&lcd_in>; | |
150 | }; | |
151 | }; | |
152 | }; | |
153 | }; | |
154 | ||
155 | &hscif1 { | |
156 | pinctrl-0 = <&hscif1_pins>; | |
157 | pinctrl-names = "default"; | |
158 | ||
159 | uart-has-rtscts; | |
160 | status = "okay"; | |
161 | }; | |
162 | ||
163 | &hsusb { | |
164 | status = "okay"; | |
165 | pinctrl-0 = <&usb0_pins>; | |
166 | pinctrl-names = "default"; | |
167 | }; | |
168 | ||
169 | &i2c5 { | |
170 | pinctrl-0 = <&i2c5_pins>; | |
171 | pinctrl-names = "default"; | |
172 | ||
173 | status = "okay"; | |
174 | clock-frequency = <400000>; | |
175 | ||
176 | sgtl5000: codec@a { | |
177 | compatible = "fsl,sgtl5000"; | |
178 | #sound-dai-cells = <0>; | |
179 | reg = <0x0a>; | |
180 | clocks = <&audio_clock>; | |
181 | VDDA-supply = <®_3p3v>; | |
182 | VDDIO-supply = <®_3p3v>; | |
183 | }; | |
184 | ||
93743d24 | 185 | port-expander@44 { |
53633a89 TR |
186 | compatible = "st,stmpe811"; |
187 | reg = <0x44>; | |
188 | interrupt-parent = <&gpio4>; | |
189 | interrupts = <4 IRQ_TYPE_LEVEL_LOW>; | |
190 | ||
191 | /* 3.25 MHz ADC clock speed */ | |
192 | st,adc-freq = <1>; | |
193 | /* ADC conversion time: 80 clocks */ | |
194 | st,sample-time = <4>; | |
195 | /* 12-bit ADC */ | |
196 | st,mod-12b = <1>; | |
197 | /* internal ADC reference */ | |
198 | st,ref-sel = <0>; | |
199 | ||
93743d24 | 200 | touchscreen { |
53633a89 TR |
201 | compatible = "st,stmpe-ts"; |
202 | /* 8 sample average control */ | |
203 | st,ave-ctrl = <3>; | |
204 | /* 7 length fractional part in z */ | |
205 | st,fraction-z = <7>; | |
206 | /* | |
207 | * 50 mA typical 80 mA max touchscreen drivers | |
208 | * current limit value | |
209 | */ | |
210 | st,i-drive = <1>; | |
211 | /* 1 ms panel driver settling time */ | |
212 | st,settling = <3>; | |
213 | /* 5 ms touch detect interrupt delay */ | |
214 | st,touch-det-delay = <5>; | |
215 | }; | |
216 | }; | |
217 | }; | |
218 | ||
219 | &pci1 { | |
220 | status = "okay"; | |
221 | pinctrl-0 = <&usb1_pins>; | |
222 | pinctrl-names = "default"; | |
223 | }; | |
224 | ||
225 | &pfc { | |
226 | avb_pins: avb { | |
227 | groups = "avb_mdio", "avb_gmii"; | |
228 | function = "avb"; | |
229 | }; | |
230 | ||
231 | backlight_pins: backlight { | |
232 | groups = "tpu_to3_c"; | |
233 | function = "tpu"; | |
234 | }; | |
235 | ||
236 | can0_pins: can0 { | |
237 | groups = "can0_data"; | |
238 | function = "can0"; | |
239 | }; | |
240 | ||
241 | du0_pins: du0 { | |
242 | groups = "du0_rgb666", "du0_sync", "du0_disp", "du0_clk0_out"; | |
243 | function = "du0"; | |
244 | }; | |
245 | ||
246 | hscif1_pins: hscif1 { | |
247 | groups = "hscif1_data", "hscif1_ctrl"; | |
248 | function = "hscif1"; | |
249 | }; | |
250 | ||
251 | i2c5_pins: i2c5 { | |
252 | groups = "i2c5_b"; | |
253 | function = "i2c5"; | |
254 | }; | |
255 | ||
256 | scif4_pins: scif4 { | |
257 | groups = "scif4_data_b"; | |
258 | function = "scif4"; | |
259 | }; | |
260 | ||
261 | sdhi0_pins: sd0 { | |
262 | groups = "sdhi0_data4", "sdhi0_ctrl"; | |
263 | function = "sdhi0"; | |
264 | power-source = <3300>; | |
265 | }; | |
266 | ||
267 | sound_pins: sound { | |
268 | groups = "ssi34_ctrl", "ssi3_data", "ssi4_data"; | |
269 | function = "ssi"; | |
270 | }; | |
271 | ||
272 | usb0_pins: usb0 { | |
273 | groups = "usb0"; | |
274 | function = "usb0"; | |
275 | }; | |
276 | ||
277 | usb1_pins: usb1 { | |
278 | groups = "usb1"; | |
279 | function = "usb1"; | |
280 | }; | |
281 | }; | |
282 | ||
283 | &rcar_sound { | |
284 | pinctrl-0 = <&sound_pins>; | |
285 | pinctrl-names = "default"; | |
286 | status = "okay"; | |
287 | ||
288 | /* Single DAI */ | |
289 | ||
290 | #sound-dai-cells = <0>; | |
291 | ||
292 | rcar_sound,dai { | |
293 | dai0 { | |
294 | playback = <&ssi3>, <&src3>, <&dvc0>; | |
295 | capture = <&ssi4>, <&src4>, <&dvc1>; | |
296 | }; | |
297 | }; | |
298 | }; | |
299 | ||
300 | &scif4 { | |
301 | pinctrl-0 = <&scif4_pins>; | |
302 | pinctrl-names = "default"; | |
303 | ||
304 | status = "okay"; | |
305 | }; | |
306 | ||
307 | &sdhi0 { | |
308 | pinctrl-0 = <&sdhi0_pins>; | |
309 | pinctrl-names = "default"; | |
310 | ||
311 | vmmc-supply = <®_3p3v>; | |
312 | vqmmc-supply = <&vccq_sdhi0>; | |
313 | cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>; | |
314 | status = "okay"; | |
315 | }; | |
316 | ||
317 | &ssi4 { | |
318 | shared-pin; | |
319 | }; | |
320 | ||
321 | &tpu { | |
322 | pinctrl-0 = <&backlight_pins>; | |
323 | pinctrl-names = "default"; | |
324 | status = "okay"; | |
325 | }; | |
326 | ||
327 | &usbphy { | |
328 | status = "okay"; | |
329 | }; |