Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.13.7.
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Device Tree Source for the iWave-RZ/G1M/G1N Qseven 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/ {
 32	aliases {
 33		serial0 = &scif0;
 34		serial3 = &scifb1;
 35		ethernet0 = &avb;
 36	};
 37
 38	chosen {
 39		bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
 40		stdout-path = "serial0:115200n8";
 41	};
 42
 43	audio_clock: audio_clock {
 44		compatible = "fixed-clock";
 45		#clock-cells = <0>;
 46		clock-frequency = <26000000>;
 47	};
 48
 49	lcd_backlight: backlight {
 50		compatible = "pwm-backlight";
 51
 52		pwms = <&pwm3 0 5000000 0>;
 53		brightness-levels = <0 4 8 16 32 64 128 255>;
 54		default-brightness-level = <7>;
 55		enable-gpios = <&gpio5 14 GPIO_ACTIVE_HIGH>;
 56	};
 57
 58	lvds-receiver {
 59		compatible = "ti,ds90cf384a", "lvds-decoder";
 60		powerdown-gpios = <&gpio7 25 GPIO_ACTIVE_LOW>;
 61
 62		ports {
 63			#address-cells = <1>;
 64			#size-cells = <0>;
 65
 66			port@0 {
 67				reg = <0>;
 68				lvds_receiver_in: endpoint {
 69					remote-endpoint = <&lvds0_out>;
 70				};
 71			};
 72			port@1 {
 73				reg = <1>;
 74				lvds_receiver_out: endpoint {
 75					remote-endpoint = <&panel_in>;
 76				};
 77			};
 78		};
 79	};
 80
 81	panel {
 82		compatible = "edt,etm0700g0dh6";
 83		backlight = <&lcd_backlight>;
 84
 85		port {
 86			panel_in: endpoint {
 87				remote-endpoint = <&lvds_receiver_out>;
 88			};
 89		};
 90	};
 91
 92	reg_1p5v: 1p5v {
 93		compatible = "regulator-fixed";
 94		regulator-name = "1P5V";
 95		regulator-min-microvolt = <1500000>;
 96		regulator-max-microvolt = <1500000>;
 97		regulator-always-on;
 98	};
 99
100	rsnd_sgtl5000: sound {
101		compatible = "simple-audio-card";
102
103		simple-audio-card,format = "i2s";
104		simple-audio-card,bitclock-master = <&sndcodec>;
105		simple-audio-card,frame-master = <&sndcodec>;
106
107		sndcpu: simple-audio-card,cpu {
108			sound-dai = <&rcar_sound>;
109		};
110
111		sndcodec: simple-audio-card,codec {
112			sound-dai = <&sgtl5000>;
113		};
114	};
115
116	vcc_sdhi1: regulator-vcc-sdhi1 {
117		compatible = "regulator-fixed";
118
119		regulator-name = "SDHI1 Vcc";
120		regulator-min-microvolt = <3300000>;
121		regulator-max-microvolt = <3300000>;
122
123		gpio = <&gpio1 16 GPIO_ACTIVE_LOW>;
124	};
125
126	vccq_sdhi1: regulator-vccq-sdhi1 {
127		compatible = "regulator-gpio";
128
129		regulator-name = "SDHI1 VccQ";
130		regulator-min-microvolt = <1800000>;
131		regulator-max-microvolt = <3300000>;
132
133		gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>;
134		gpios-states = <1>;
135		states = <3300000 1>, <1800000 0>;
136	};
137};
138
139&avb {
140	pinctrl-0 = <&avb_pins>;
141	pinctrl-names = "default";
142
143	phy-handle = <&phy3>;
144	phy-mode = "gmii";
145	renesas,no-ether-link;
146	status = "okay";
147
148	phy3: ethernet-phy@3 {
149		reg = <3>;
150		micrel,led-mode = <1>;
151	};
152};
153
154&can0 {
155	pinctrl-0 = <&can0_pins>;
156	pinctrl-names = "default";
157
158	status = "okay";
159};
160
161&cmt0 {
162	status = "okay";
163};
164
165&du {
166	status = "okay";
167};
168
169&gpio2 {
170	touch-interrupt {
171		gpio-hog;
172		gpios = <12 GPIO_ACTIVE_LOW>;
173		input;
174	};
175};
176
177&hsusb {
178	status = "okay";
179	pinctrl-0 = <&usb0_pins>;
180	pinctrl-names = "default";
181};
182
183&i2c2 {
184	pinctrl-0 = <&i2c2_pins>;
185	pinctrl-names = "default";
186
187	status = "okay";
188	clock-frequency = <400000>;
189
190	rtc@68 {
191		compatible = "ti,bq32000";
192		reg = <0x68>;
193	};
194
195	sgtl5000: codec@a {
196		compatible = "fsl,sgtl5000";
197		#sound-dai-cells = <0>;
198		reg = <0x0a>;
199		clocks = <&audio_clock>;
200		VDDA-supply = <&reg_3p3v>;
201		VDDIO-supply = <&reg_3p3v>;
202		VDDD-supply = <&reg_1p5v>;
203	};
204
205	touch: touchpanel@38 {
206		compatible = "edt,edt-ft5406";
207		reg = <0x38>;
208		interrupt-parent = <&gpio2>;
209		interrupts = <12 IRQ_TYPE_EDGE_FALLING>;
210	};
211};
212
213&lvds0 {
214	status = "okay";
215
216	ports {
217		port@1 {
218			lvds0_out: endpoint {
219				remote-endpoint = <&lvds_receiver_in>;
220			};
221		};
222	};
223};
224
225&pci0 {
226	pinctrl-0 = <&usb0_pins>;
227	pinctrl-names = "default";
228};
229
230&pci1 {
231	status = "okay";
232	pinctrl-0 = <&usb1_pins>;
233	pinctrl-names = "default";
234};
235
236&pcie_bus_clk {
237	clock-frequency = <100000000>;
238};
239
240&pfc {
241	can0_pins: can0 {
242		groups = "can0_data_d";
243		function = "can0";
244	};
245
246	avb_pins: avb {
247		groups = "avb_mdio", "avb_gmii";
248		function = "avb";
249	};
250
251	i2c2_pins: i2c2 {
252		groups = "i2c2";
253		function = "i2c2";
254	};
255
256	pwm3_pins: pwm3 {
257		groups = "pwm3";
258		function = "pwm3";
259	};
260
261	scif0_pins: scif0 {
262		groups = "scif0_data_d";
263		function = "scif0";
264	};
265
266	scifb1_pins: scifb1 {
267		groups = "scifb1_data_d", "scifb1_ctrl";
268		function = "scifb1";
269	};
270
271	sdhi1_pins: sd1 {
272		groups = "sdhi1_data4", "sdhi1_ctrl";
273		function = "sdhi1";
274		power-source = <3300>;
275	};
276
277	sdhi1_pins_uhs: sd1_uhs {
278		groups = "sdhi1_data4", "sdhi1_ctrl";
279		function = "sdhi1";
280		power-source = <1800>;
281	};
282
283	sound_pins: sound {
284		groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
285		function = "ssi";
286	};
287
288	usb0_pins: usb0 {
289		groups = "usb0";
290		function = "usb0";
291	};
292
293	usb1_pins: usb1 {
294		groups = "usb1";
295		function = "usb1";
296	};
297};
298
299&pwm3 {
300	pinctrl-0 = <&pwm3_pins>;
301	pinctrl-names = "default";
302	status = "okay";
303};
304
305&rcar_sound {
306	pinctrl-0 = <&sound_pins>;
307	pinctrl-names = "default";
308	status = "okay";
309
310	/* Single DAI */
311	#sound-dai-cells = <0>;
312
313	rcar_sound,dai {
314		dai0 {
315			playback = <&ssi1 &src3 &dvc1>;
316			capture = <&ssi0 &src2 &dvc0>;
317		};
318	};
319};
320
321&rwdt {
322	timeout-sec = <60>;
323	status = "okay";
324};
325
326&scif0 {
327	pinctrl-0 = <&scif0_pins>;
328	pinctrl-names = "default";
329
330	status = "okay";
331};
332
333&scifb1 {
334	pinctrl-0 = <&scifb1_pins>;
335	pinctrl-names = "default";
336
337	uart-has-rtscts;
338	status = "okay";
339};
340
341&sdhi1 {
342	pinctrl-0 = <&sdhi1_pins>;
343	pinctrl-1 = <&sdhi1_pins_uhs>;
344	pinctrl-names = "default", "state_uhs";
345
346	vmmc-supply = <&vcc_sdhi1>;
347	vqmmc-supply = <&vccq_sdhi1>;
348	cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
349	wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
350	sd-uhs-sdr50;
351	status = "okay";
352};
353
354&ssi1 {
355	shared-pin;
356};
357
358&usbphy {
359	status = "okay";
360};