xref: /freebsd/sys/contrib/device-tree/src/arm64/renesas/rz-smarc-common.dtsi (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1c9ccf3a3SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c9ccf3a3SEmmanuel Vadot/*
3c9ccf3a3SEmmanuel Vadot * Device Tree Source for the RZ/{G2L,G2LC,V2L} SMARC EVK common parts
4c9ccf3a3SEmmanuel Vadot *
5c9ccf3a3SEmmanuel Vadot * Copyright (C) 2022 Renesas Electronics Corp.
6c9ccf3a3SEmmanuel Vadot */
7c9ccf3a3SEmmanuel Vadot
8c9ccf3a3SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
9c9ccf3a3SEmmanuel Vadot#include <dt-bindings/pinctrl/rzg2l-pinctrl.h>
10c9ccf3a3SEmmanuel Vadot
11c9ccf3a3SEmmanuel Vadot/*
12c9ccf3a3SEmmanuel Vadot * SSI-WM8978
13c9ccf3a3SEmmanuel Vadot *
14c9ccf3a3SEmmanuel Vadot * This command is required when Playback/Capture
15c9ccf3a3SEmmanuel Vadot *
16c9ccf3a3SEmmanuel Vadot *	amixer cset name='Left Input Mixer L2 Switch' on
17c9ccf3a3SEmmanuel Vadot *	amixer cset name='Right Input Mixer R2 Switch' on
18c9ccf3a3SEmmanuel Vadot *	amixer cset name='Headphone Playback Volume' 100
19c9ccf3a3SEmmanuel Vadot *	amixer cset name='PCM Volume' 100%
20c9ccf3a3SEmmanuel Vadot *	amixer cset name='Input PGA Volume' 25
21c9ccf3a3SEmmanuel Vadot *
22c9ccf3a3SEmmanuel Vadot */
23c9ccf3a3SEmmanuel Vadot
24c9ccf3a3SEmmanuel Vadot/ {
25c9ccf3a3SEmmanuel Vadot	aliases {
26c9ccf3a3SEmmanuel Vadot		serial0 = &scif0;
27c9ccf3a3SEmmanuel Vadot		i2c0 = &i2c0;
28c9ccf3a3SEmmanuel Vadot		i2c1 = &i2c1;
29c9ccf3a3SEmmanuel Vadot	};
30c9ccf3a3SEmmanuel Vadot
31c9ccf3a3SEmmanuel Vadot	chosen {
32c9ccf3a3SEmmanuel Vadot		stdout-path = "serial0:115200n8";
33c9ccf3a3SEmmanuel Vadot	};
34c9ccf3a3SEmmanuel Vadot
35c9ccf3a3SEmmanuel Vadot	snd_rzg2l: sound {
36c9ccf3a3SEmmanuel Vadot		compatible = "simple-audio-card";
37c9ccf3a3SEmmanuel Vadot		simple-audio-card,format = "i2s";
38c9ccf3a3SEmmanuel Vadot		simple-audio-card,bitclock-master = <&cpu_dai>;
39c9ccf3a3SEmmanuel Vadot		simple-audio-card,frame-master = <&cpu_dai>;
40c9ccf3a3SEmmanuel Vadot		simple-audio-card,mclk-fs = <256>;
41c9ccf3a3SEmmanuel Vadot
42c9ccf3a3SEmmanuel Vadot		simple-audio-card,widgets = "Microphone", "Microphone Jack";
43c9ccf3a3SEmmanuel Vadot		simple-audio-card,routing =
44c9ccf3a3SEmmanuel Vadot			    "L2", "Mic Bias",
45c9ccf3a3SEmmanuel Vadot			    "R2", "Mic Bias",
46c9ccf3a3SEmmanuel Vadot			    "Mic Bias", "Microphone Jack";
47c9ccf3a3SEmmanuel Vadot
48c9ccf3a3SEmmanuel Vadot		cpu_dai: simple-audio-card,cpu {
49c9ccf3a3SEmmanuel Vadot		};
50c9ccf3a3SEmmanuel Vadot
51c9ccf3a3SEmmanuel Vadot		codec_dai: simple-audio-card,codec {
52*84943d6fSEmmanuel Vadot			clocks = <&versa3 2>;
53c9ccf3a3SEmmanuel Vadot			sound-dai = <&wm8978>;
54c9ccf3a3SEmmanuel Vadot		};
55c9ccf3a3SEmmanuel Vadot	};
56c9ccf3a3SEmmanuel Vadot
57c9ccf3a3SEmmanuel Vadot	usb0_vbus_otg: regulator-usb0-vbus-otg {
58c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
59c9ccf3a3SEmmanuel Vadot
60c9ccf3a3SEmmanuel Vadot		regulator-name = "USB0_VBUS_OTG";
61c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
62c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
63c9ccf3a3SEmmanuel Vadot	};
64c9ccf3a3SEmmanuel Vadot
65c9ccf3a3SEmmanuel Vadot	vccq_sdhi1: regulator-vccq-sdhi1 {
66c9ccf3a3SEmmanuel Vadot		compatible = "regulator-gpio";
67c9ccf3a3SEmmanuel Vadot		regulator-name = "SDHI1 VccQ";
68c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
69c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
70c9ccf3a3SEmmanuel Vadot		gpios-states = <1>;
71c9ccf3a3SEmmanuel Vadot		states = <3300000 1>, <1800000 0>;
72c9ccf3a3SEmmanuel Vadot	};
73*84943d6fSEmmanuel Vadot
74*84943d6fSEmmanuel Vadot	x1: x1-clock {
75*84943d6fSEmmanuel Vadot		compatible = "fixed-clock";
76*84943d6fSEmmanuel Vadot		#clock-cells = <0>;
77*84943d6fSEmmanuel Vadot		clock-frequency = <24000000>;
78*84943d6fSEmmanuel Vadot	};
79c9ccf3a3SEmmanuel Vadot};
80c9ccf3a3SEmmanuel Vadot
81c9ccf3a3SEmmanuel Vadot&audio_clk1 {
82c9ccf3a3SEmmanuel Vadot	clock-frequency = <11289600>;
83c9ccf3a3SEmmanuel Vadot};
84c9ccf3a3SEmmanuel Vadot
85c9ccf3a3SEmmanuel Vadot&audio_clk2 {
86c9ccf3a3SEmmanuel Vadot	clock-frequency = <12288000>;
87c9ccf3a3SEmmanuel Vadot};
88c9ccf3a3SEmmanuel Vadot
89c9ccf3a3SEmmanuel Vadot&canfd {
90c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&can0_pins &can1_pins>;
91c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
92c9ccf3a3SEmmanuel Vadot	status = "okay";
93c9ccf3a3SEmmanuel Vadot
94c9ccf3a3SEmmanuel Vadot	channel0 {
95c9ccf3a3SEmmanuel Vadot		status = "okay";
96c9ccf3a3SEmmanuel Vadot	};
97c9ccf3a3SEmmanuel Vadot
98c9ccf3a3SEmmanuel Vadot	channel1 {
99c9ccf3a3SEmmanuel Vadot		status = "okay";
100c9ccf3a3SEmmanuel Vadot	};
101c9ccf3a3SEmmanuel Vadot};
102c9ccf3a3SEmmanuel Vadot
103c9ccf3a3SEmmanuel Vadot&ehci0 {
104c9ccf3a3SEmmanuel Vadot	dr_mode = "otg";
105c9ccf3a3SEmmanuel Vadot	status = "okay";
106c9ccf3a3SEmmanuel Vadot};
107c9ccf3a3SEmmanuel Vadot
108c9ccf3a3SEmmanuel Vadot&ehci1 {
109c9ccf3a3SEmmanuel Vadot	status = "okay";
110c9ccf3a3SEmmanuel Vadot};
111c9ccf3a3SEmmanuel Vadot
112c9ccf3a3SEmmanuel Vadot&hsusb {
113c9ccf3a3SEmmanuel Vadot	dr_mode = "otg";
114c9ccf3a3SEmmanuel Vadot	status = "okay";
115c9ccf3a3SEmmanuel Vadot};
116c9ccf3a3SEmmanuel Vadot
117c9ccf3a3SEmmanuel Vadot&i2c0 {
118c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&i2c0_pins>;
119c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
120c9ccf3a3SEmmanuel Vadot
121c9ccf3a3SEmmanuel Vadot	status = "okay";
122c9ccf3a3SEmmanuel Vadot};
123c9ccf3a3SEmmanuel Vadot
124c9ccf3a3SEmmanuel Vadot&i2c1 {
125c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&i2c1_pins>;
126c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
127c9ccf3a3SEmmanuel Vadot
128c9ccf3a3SEmmanuel Vadot	status = "okay";
129c9ccf3a3SEmmanuel Vadot};
130c9ccf3a3SEmmanuel Vadot
131c9ccf3a3SEmmanuel Vadot&ohci0 {
132c9ccf3a3SEmmanuel Vadot	dr_mode = "otg";
133c9ccf3a3SEmmanuel Vadot	status = "okay";
134c9ccf3a3SEmmanuel Vadot};
135c9ccf3a3SEmmanuel Vadot
136c9ccf3a3SEmmanuel Vadot&ohci1 {
137c9ccf3a3SEmmanuel Vadot	status = "okay";
138c9ccf3a3SEmmanuel Vadot};
139c9ccf3a3SEmmanuel Vadot
140c9ccf3a3SEmmanuel Vadot&phyrst {
141c9ccf3a3SEmmanuel Vadot	status = "okay";
142c9ccf3a3SEmmanuel Vadot};
143c9ccf3a3SEmmanuel Vadot
144c9ccf3a3SEmmanuel Vadot&scif0 {
145c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&scif0_pins>;
146c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
147c9ccf3a3SEmmanuel Vadot	status = "okay";
148c9ccf3a3SEmmanuel Vadot};
149c9ccf3a3SEmmanuel Vadot
150c9ccf3a3SEmmanuel Vadot&sdhi1 {
151c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&sdhi1_pins>;
152c9ccf3a3SEmmanuel Vadot	pinctrl-1 = <&sdhi1_pins_uhs>;
153c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
154c9ccf3a3SEmmanuel Vadot
155c9ccf3a3SEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
156c9ccf3a3SEmmanuel Vadot	vqmmc-supply = <&vccq_sdhi1>;
157c9ccf3a3SEmmanuel Vadot	bus-width = <4>;
158c9ccf3a3SEmmanuel Vadot	sd-uhs-sdr50;
159c9ccf3a3SEmmanuel Vadot	sd-uhs-sdr104;
160c9ccf3a3SEmmanuel Vadot	status = "okay";
161c9ccf3a3SEmmanuel Vadot};
162c9ccf3a3SEmmanuel Vadot
163c9ccf3a3SEmmanuel Vadot&spi1 {
164c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&spi1_pins>;
165c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
166c9ccf3a3SEmmanuel Vadot
167c9ccf3a3SEmmanuel Vadot	status = "okay";
168c9ccf3a3SEmmanuel Vadot};
169c9ccf3a3SEmmanuel Vadot
170c9ccf3a3SEmmanuel Vadot&usb2_phy0 {
171c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&usb0_pins>;
172c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
173c9ccf3a3SEmmanuel Vadot
174c9ccf3a3SEmmanuel Vadot	vbus-supply = <&usb0_vbus_otg>;
175c9ccf3a3SEmmanuel Vadot	status = "okay";
176c9ccf3a3SEmmanuel Vadot};
177c9ccf3a3SEmmanuel Vadot
178c9ccf3a3SEmmanuel Vadot&usb2_phy1 {
179c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&usb1_pins>;
180c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
181c9ccf3a3SEmmanuel Vadot
182c9ccf3a3SEmmanuel Vadot	status = "okay";
183c9ccf3a3SEmmanuel Vadot};
184