Linux Audio

Check our new training course

Loading...
Note: File does not exist in v4.17.
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Device Tree Source for the RZA2MEVB board
  4 *
  5 * Copyright (C) 2018 Renesas Electronics
  6 *
  7 * As upstream Linux does not support XIP, it cannot run in 8 MiB of HyperRAM.
  8 * Hence the 64 MiB of SDRAM on the sub-board needs to be enabled, which has
  9 * the following ramifications:
 10 *   - SCIF4 connected to the on-board USB-serial can no longer be used as the
 11 *     serial console,
 12 *   - Instead, SCIF2 is used as the serial console, by connecting a 3.3V TTL
 13 *     USB-to-Serial adapter to the CMOS camera connector:
 14 *       - RXD = CN17-9,
 15 *       - TXD = CN17-10,
 16 *       - GND = CN17-2 or CN17-17,
 17 *   - The first Ethernet channel can no longer be used,
 18 *   - USB Channel 1 loses the overcurrent input signal.
 19 *
 20 * Please make sure your sub-board matches the following switch settings:
 21 *
 22 *           SW6                SW6-1 set to SDRAM
 23 *  ON                          SW6-2 set to Audio
 24 * +---------------------+      SW6-3 set to DRP
 25 * | =   =   = = =       |      SW6-4 set to CEU
 26 * |   =   =             |      SW6-5 set to Ether2
 27 * | 1 2 3 4 5 6 7 8 9 0 |      SW6-6 set to VDC6
 28 * +---------------------+      SW6-7 set to VDC6
 29 */
 30
 31/dts-v1/;
 32#include "r7s9210.dtsi"
 33#include <dt-bindings/gpio/gpio.h>
 34#include <dt-bindings/input/input.h>
 35#include <dt-bindings/pinctrl/r7s9210-pinctrl.h>
 36
 37/ {
 38	model = "RZA2MEVB";
 39	compatible = "renesas,rza2mevb", "renesas,r7s9210";
 40
 41	aliases {
 42		serial0 = &scif2;
 43		ethernet0 = &ether1;
 44	};
 45
 46	chosen {
 47		bootargs = "ignore_loglevel";
 48		stdout-path = "serial0:115200n8";
 49	};
 50
 51	keyboard {
 52		compatible = "gpio-keys";
 53
 54		pinctrl-names = "default";
 55		pinctrl-0 = <&keyboard_pins>;
 56
 57		key-3 {
 58			interrupt-parent = <&irqc>;
 59			interrupts = <0 IRQ_TYPE_EDGE_BOTH>;
 60			linux,code = <KEY_3>;
 61			label = "SW3";
 62			wakeup-source;
 63		};
 64	};
 65
 66	leds {
 67		compatible = "gpio-leds";
 68
 69		led-red {
 70			gpios = <&pinctrl RZA2_PIN(PORT6, 0) GPIO_ACTIVE_HIGH>;
 71		};
 72		led-green {
 73			gpios = <&pinctrl RZA2_PIN(PORTC, 1) GPIO_ACTIVE_HIGH>;
 74		};
 75	};
 76
 77	memory@c000000 {
 78		device_type = "memory";
 79		reg = <0x0c000000 0x04000000>;	/* SDRAM */
 80	};
 81};
 82
 83&ehci0 {
 84	status = "okay";
 85};
 86
 87&ehci1 {
 88	status = "okay";
 89};
 90
 91&ether1 {
 92	pinctrl-names = "default";
 93	pinctrl-0 = <&eth1_pins>;
 94	status = "okay";
 95	renesas,no-ether-link;
 96	phy-handle = <&phy1>;
 97	phy1: ethernet-phy@1 {
 98		compatible = "ethernet-phy-id001c.c816",
 99			     "ethernet-phy-ieee802.3-c22";
100		reg = <0>;
101	};
102};
103
104/* EXTAL */
105&extal_clk {
106	clock-frequency = <24000000>;	/* 24MHz */
107};
108
109&i2c3 {
110	status = "okay";
111	clock-frequency = <400000>;
112
113	pinctrl-names = "default";
114	pinctrl-0 = <&i2c3_pins>;
115
116	eeprom@50 {
117		compatible = "renesas,r1ex24128", "atmel,24c128";
118		reg = <0x50>;
119		pagesize = <64>;
120	};
121};
122
123/* High resolution System tick timers */
124&ostm0 {
125	status = "okay";
126};
127
128&ostm1 {
129	status = "okay";
130};
131
132&pinctrl {
133	eth0_pins: eth0 {
134		pinmux = <RZA2_PINMUX(PORTE, 0, 7)>, /* REF50CK0 */
135			 <RZA2_PINMUX(PORT6, 1, 7)>, /* RMMI0_TXDEN */
136			 <RZA2_PINMUX(PORT6, 2, 7)>, /* RMII0_TXD0 */
137			 <RZA2_PINMUX(PORT6, 3, 7)>, /* RMII0_TXD1 */
138			 <RZA2_PINMUX(PORTE, 4, 7)>, /* RMII0_CRSDV */
139			 <RZA2_PINMUX(PORTE, 1, 7)>, /* RMII0_RXD0 */
140			 <RZA2_PINMUX(PORTE, 2, 7)>, /* RMII0_RXD1 */
141			 <RZA2_PINMUX(PORTE, 3, 7)>, /* RMII0_RXER */
142			 <RZA2_PINMUX(PORTE, 5, 1)>, /* ET0_MDC */
143			 <RZA2_PINMUX(PORTE, 6, 1)>, /* ET0_MDIO */
144			 <RZA2_PINMUX(PORTL, 0, 5)>; /* IRQ4 */
145	};
146
147	eth1_pins: eth1 {
148		pinmux = <RZA2_PINMUX(PORTK, 3, 7)>, /* REF50CK1 */
149			 <RZA2_PINMUX(PORTK, 0, 7)>, /* RMMI1_TXDEN */
150			 <RZA2_PINMUX(PORTK, 1, 7)>, /* RMII1_TXD0 */
151			 <RZA2_PINMUX(PORTK, 2, 7)>, /* RMII1_TXD1 */
152			 <RZA2_PINMUX(PORT3, 2, 7)>, /* RMII1_CRSDV */
153			 <RZA2_PINMUX(PORTK, 4, 7)>, /* RMII1_RXD0 */
154			 <RZA2_PINMUX(PORT3, 5, 7)>, /* RMII1_RXD1 */
155			 <RZA2_PINMUX(PORT3, 1, 7)>, /* RMII1_RXER */
156			 <RZA2_PINMUX(PORT3, 3, 1)>, /* ET1_MDC */
157			 <RZA2_PINMUX(PORT3, 4, 1)>, /* ET1_MDIO */
158			 <RZA2_PINMUX(PORTL, 1, 5)>; /* IRQ5 */
159	};
160
161	i2c3_pins: i2c3 {
162		pinmux = <RZA2_PINMUX(PORTD, 6, 1)>,	/* RIIC3SCL */
163			 <RZA2_PINMUX(PORTD, 7, 1)>;	/* RIIC3SDA */
164	};
165
166	keyboard_pins: keyboard {
167		pinmux = <RZA2_PINMUX(PORTJ, 1, 6)>;	/* IRQ0 */
168	};
169
170	/* Serial Console */
171	scif2_pins: serial2 {
172		pinmux = <RZA2_PINMUX(PORTE, 2, 3)>,	/* TxD2 */
173			 <RZA2_PINMUX(PORTE, 1, 3)>;	/* RxD2 */
174	};
175
176	sdhi0_pins: sdhi0 {
177		pinmux = <RZA2_PINMUX(PORT5, 0, 3)>,	/* SD0_CD */
178			 <RZA2_PINMUX(PORT5, 1, 3)>;	/* SD0_WP */
179	};
180
181	sdhi1_pins: sdhi1 {
182		pinmux = <RZA2_PINMUX(PORT5, 4, 3)>,	/* SD1_CD */
183			 <RZA2_PINMUX(PORT5, 5, 3)>;	/* SD1_WP */
184	};
185
186	usb0_pins: usb0 {
187		pinmux = <RZA2_PINMUX(PORT5, 2, 3)>,	/* VBUSIN0 */
188			 <RZA2_PINMUX(PORTC, 6, 1)>,	/* VBUSEN0 */
189			 <RZA2_PINMUX(PORTC, 7, 1)>;	/* OVRCUR0 */
190	};
191
192	usb1_pins: usb1 {
193		pinmux = <RZA2_PINMUX(PORTC, 0, 1)>,	/* VBUSIN1 */
194			 <RZA2_PINMUX(PORTC, 5, 1)>;	/* VBUSEN1 */
195	};
196};
197
198/* RTC_X1 */
199&rtc_x1_clk {
200	clock-frequency = <32768>;
201};
202
203/* Serial Console */
204&scif2 {
205	pinctrl-names = "default";
206	pinctrl-0 = <&scif2_pins>;
207
208	status = "okay";
209};
210
211&sdhi0 {
212	pinctrl-names = "default";
213	pinctrl-0 = <&sdhi0_pins>;
214	bus-width = <4>;
215	status = "okay";
216};
217
218&sdhi1 {
219	pinctrl-names = "default";
220	pinctrl-0 = <&sdhi1_pins>;
221	bus-width = <4>;
222	status = "okay";
223};
224
225/* USB-0 as Host */
226&usb2_phy0 {
227	pinctrl-names = "default";
228	pinctrl-0 = <&usb0_pins>;
229	dr_mode = "host";	/* Requires JP3 to be fitted */
230	status = "okay";
231};
232
233/* USB-1 as Host */
234&usb2_phy1 {
235	pinctrl-names = "default";
236	pinctrl-0 = <&usb1_pins>;
237	dr_mode = "host";
238	status = "okay";
239};
240
241/* USB_X1 */
242&usb_x1_clk {
243	clock-frequency = <48000000>;
244};