Loading...
Note: File does not exist in v5.4.
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
185 port-expander@44 {
186 compatible = "st,stmpe811";
187 reg = <0x44>;
188 interrupts-extended = <&gpio4 4 IRQ_TYPE_LEVEL_LOW>;
189
190 /* 3.25 MHz ADC clock speed */
191 st,adc-freq = <1>;
192 /* ADC conversion time: 80 clocks */
193 st,sample-time = <4>;
194 /* 12-bit ADC */
195 st,mod-12b = <1>;
196 /* internal ADC reference */
197 st,ref-sel = <0>;
198
199 touchscreen {
200 compatible = "st,stmpe-ts";
201 /* 8 sample average control */
202 st,ave-ctrl = <3>;
203 /* 7 length fractional part in z */
204 st,fraction-z = <7>;
205 /*
206 * 50 mA typical 80 mA max touchscreen drivers
207 * current limit value
208 */
209 st,i-drive = <1>;
210 /* 1 ms panel driver settling time */
211 st,settling = <3>;
212 /* 5 ms touch detect interrupt delay */
213 st,touch-det-delay = <5>;
214 };
215 };
216};
217
218&pci1 {
219 status = "okay";
220 pinctrl-0 = <&usb1_pins>;
221 pinctrl-names = "default";
222};
223
224&pfc {
225 avb_pins: avb {
226 groups = "avb_mdio", "avb_gmii";
227 function = "avb";
228 };
229
230 backlight_pins: backlight {
231 groups = "tpu_to3_c";
232 function = "tpu";
233 };
234
235 can0_pins: can0 {
236 groups = "can0_data";
237 function = "can0";
238 };
239
240 du0_pins: du0 {
241 groups = "du0_rgb666", "du0_sync", "du0_disp", "du0_clk0_out";
242 function = "du0";
243 };
244
245 hscif1_pins: hscif1 {
246 groups = "hscif1_data", "hscif1_ctrl";
247 function = "hscif1";
248 };
249
250 i2c5_pins: i2c5 {
251 groups = "i2c5_b";
252 function = "i2c5";
253 };
254
255 scif4_pins: scif4 {
256 groups = "scif4_data_b";
257 function = "scif4";
258 };
259
260 sdhi0_pins: sd0 {
261 groups = "sdhi0_data4", "sdhi0_ctrl";
262 function = "sdhi0";
263 power-source = <3300>;
264 };
265
266 sound_pins: sound {
267 groups = "ssi34_ctrl", "ssi3_data", "ssi4_data";
268 function = "ssi";
269 };
270
271 usb0_pins: usb0 {
272 groups = "usb0";
273 function = "usb0";
274 };
275
276 usb1_pins: usb1 {
277 groups = "usb1";
278 function = "usb1";
279 };
280};
281
282&rcar_sound {
283 pinctrl-0 = <&sound_pins>;
284 pinctrl-names = "default";
285 status = "okay";
286
287 /* Single DAI */
288
289 #sound-dai-cells = <0>;
290
291 rcar_sound,dai {
292 dai0 {
293 playback = <&ssi3>, <&src3>, <&dvc0>;
294 capture = <&ssi4>, <&src4>, <&dvc1>;
295 };
296 };
297};
298
299&scif4 {
300 pinctrl-0 = <&scif4_pins>;
301 pinctrl-names = "default";
302
303 status = "okay";
304};
305
306&sdhi0 {
307 pinctrl-0 = <&sdhi0_pins>;
308 pinctrl-names = "default";
309
310 vmmc-supply = <®_3p3v>;
311 vqmmc-supply = <&vccq_sdhi0>;
312 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
313 status = "okay";
314};
315
316&ssi4 {
317 shared-pin;
318};
319
320&tpu {
321 pinctrl-0 = <&backlight_pins>;
322 pinctrl-names = "default";
323 status = "okay";
324};
325
326&usbphy {
327 status = "okay";
328};