xref: /freebsd-src/sys/contrib/device-tree/src/arm64/renesas/rz-smarc-common.dtsi (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
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	vccq_sdhi1: regulator-vccq-sdhi1 {
58c9ccf3a3SEmmanuel Vadot		compatible = "regulator-gpio";
59c9ccf3a3SEmmanuel Vadot		regulator-name = "SDHI1 VccQ";
60c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
61c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
62c9ccf3a3SEmmanuel Vadot		gpios-states = <1>;
63c9ccf3a3SEmmanuel Vadot		states = <3300000 1>, <1800000 0>;
64c9ccf3a3SEmmanuel Vadot	};
65*84943d6fSEmmanuel Vadot
66*84943d6fSEmmanuel Vadot	x1: x1-clock {
67*84943d6fSEmmanuel Vadot		compatible = "fixed-clock";
68*84943d6fSEmmanuel Vadot		#clock-cells = <0>;
69*84943d6fSEmmanuel Vadot		clock-frequency = <24000000>;
70*84943d6fSEmmanuel Vadot	};
71c9ccf3a3SEmmanuel Vadot};
72c9ccf3a3SEmmanuel Vadot
73c9ccf3a3SEmmanuel Vadot&audio_clk1 {
74c9ccf3a3SEmmanuel Vadot	clock-frequency = <11289600>;
75c9ccf3a3SEmmanuel Vadot};
76c9ccf3a3SEmmanuel Vadot
77c9ccf3a3SEmmanuel Vadot&audio_clk2 {
78c9ccf3a3SEmmanuel Vadot	clock-frequency = <12288000>;
79c9ccf3a3SEmmanuel Vadot};
80c9ccf3a3SEmmanuel Vadot
81c9ccf3a3SEmmanuel Vadot&canfd {
82c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&can0_pins &can1_pins>;
83c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
84c9ccf3a3SEmmanuel Vadot	status = "okay";
85c9ccf3a3SEmmanuel Vadot
86c9ccf3a3SEmmanuel Vadot	channel0 {
87c9ccf3a3SEmmanuel Vadot		status = "okay";
88c9ccf3a3SEmmanuel Vadot	};
89c9ccf3a3SEmmanuel Vadot
90c9ccf3a3SEmmanuel Vadot	channel1 {
91c9ccf3a3SEmmanuel Vadot		status = "okay";
92c9ccf3a3SEmmanuel Vadot	};
93c9ccf3a3SEmmanuel Vadot};
94c9ccf3a3SEmmanuel Vadot
95c9ccf3a3SEmmanuel Vadot&ehci0 {
96c9ccf3a3SEmmanuel Vadot	dr_mode = "otg";
97c9ccf3a3SEmmanuel Vadot	status = "okay";
98c9ccf3a3SEmmanuel Vadot};
99c9ccf3a3SEmmanuel Vadot
100c9ccf3a3SEmmanuel Vadot&ehci1 {
101c9ccf3a3SEmmanuel Vadot	status = "okay";
102c9ccf3a3SEmmanuel Vadot};
103c9ccf3a3SEmmanuel Vadot
104c9ccf3a3SEmmanuel Vadot&hsusb {
105c9ccf3a3SEmmanuel Vadot	dr_mode = "otg";
106c9ccf3a3SEmmanuel Vadot	status = "okay";
107c9ccf3a3SEmmanuel Vadot};
108c9ccf3a3SEmmanuel Vadot
109c9ccf3a3SEmmanuel Vadot&i2c0 {
110c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&i2c0_pins>;
111c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
112c9ccf3a3SEmmanuel Vadot
113c9ccf3a3SEmmanuel Vadot	status = "okay";
114c9ccf3a3SEmmanuel Vadot};
115c9ccf3a3SEmmanuel Vadot
116c9ccf3a3SEmmanuel Vadot&i2c1 {
117c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&i2c1_pins>;
118c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
119c9ccf3a3SEmmanuel Vadot
120c9ccf3a3SEmmanuel Vadot	status = "okay";
121c9ccf3a3SEmmanuel Vadot};
122c9ccf3a3SEmmanuel Vadot
123c9ccf3a3SEmmanuel Vadot&ohci0 {
124c9ccf3a3SEmmanuel Vadot	dr_mode = "otg";
125c9ccf3a3SEmmanuel Vadot	status = "okay";
126c9ccf3a3SEmmanuel Vadot};
127c9ccf3a3SEmmanuel Vadot
128c9ccf3a3SEmmanuel Vadot&ohci1 {
129c9ccf3a3SEmmanuel Vadot	status = "okay";
130c9ccf3a3SEmmanuel Vadot};
131c9ccf3a3SEmmanuel Vadot
132c9ccf3a3SEmmanuel Vadot&phyrst {
133c9ccf3a3SEmmanuel Vadot	status = "okay";
134c9ccf3a3SEmmanuel Vadot};
135c9ccf3a3SEmmanuel Vadot
136c9ccf3a3SEmmanuel Vadot&scif0 {
137c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&scif0_pins>;
138c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
139c9ccf3a3SEmmanuel Vadot	status = "okay";
140c9ccf3a3SEmmanuel Vadot};
141c9ccf3a3SEmmanuel Vadot
142c9ccf3a3SEmmanuel Vadot&sdhi1 {
143c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&sdhi1_pins>;
144c9ccf3a3SEmmanuel Vadot	pinctrl-1 = <&sdhi1_pins_uhs>;
145c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
146c9ccf3a3SEmmanuel Vadot
147c9ccf3a3SEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
148c9ccf3a3SEmmanuel Vadot	vqmmc-supply = <&vccq_sdhi1>;
149c9ccf3a3SEmmanuel Vadot	bus-width = <4>;
150c9ccf3a3SEmmanuel Vadot	sd-uhs-sdr50;
151c9ccf3a3SEmmanuel Vadot	sd-uhs-sdr104;
152c9ccf3a3SEmmanuel Vadot	status = "okay";
153c9ccf3a3SEmmanuel Vadot};
154c9ccf3a3SEmmanuel Vadot
155c9ccf3a3SEmmanuel Vadot&spi1 {
156c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&spi1_pins>;
157c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
158c9ccf3a3SEmmanuel Vadot
159c9ccf3a3SEmmanuel Vadot	status = "okay";
160c9ccf3a3SEmmanuel Vadot};
161c9ccf3a3SEmmanuel Vadot
162c9ccf3a3SEmmanuel Vadot&usb2_phy0 {
163c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&usb0_pins>;
164c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
165c9ccf3a3SEmmanuel Vadot
166c9ccf3a3SEmmanuel Vadot	vbus-supply = <&usb0_vbus_otg>;
167c9ccf3a3SEmmanuel Vadot	status = "okay";
168c9ccf3a3SEmmanuel Vadot};
169c9ccf3a3SEmmanuel Vadot
170c9ccf3a3SEmmanuel Vadot&usb2_phy1 {
171c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&usb1_pins>;
172c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
173c9ccf3a3SEmmanuel Vadot
174c9ccf3a3SEmmanuel Vadot	status = "okay";
175c9ccf3a3SEmmanuel Vadot};
176