xref: /linux/scripts/dtc/include-prefixes/arm/renesas/r7s9210-rza2mevb.dts (revision 60675d4ca1ef0857e44eba5849b74a3a998d0c0f)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/*
3724ba675SRob Herring * Device Tree Source for the RZA2MEVB board
4724ba675SRob Herring *
5724ba675SRob Herring * Copyright (C) 2018 Renesas Electronics
6724ba675SRob Herring *
7724ba675SRob Herring * As upstream Linux does not support XIP, it cannot run in 8 MiB of HyperRAM.
8724ba675SRob Herring * Hence the 64 MiB of SDRAM on the sub-board needs to be enabled, which has
9724ba675SRob Herring * the following ramifications:
10724ba675SRob Herring *   - SCIF4 connected to the on-board USB-serial can no longer be used as the
11724ba675SRob Herring *     serial console,
12724ba675SRob Herring *   - Instead, SCIF2 is used as the serial console, by connecting a 3.3V TTL
13724ba675SRob Herring *     USB-to-Serial adapter to the CMOS camera connector:
14724ba675SRob Herring *       - RXD = CN17-9,
15724ba675SRob Herring *       - TXD = CN17-10,
16724ba675SRob Herring *       - GND = CN17-2 or CN17-17,
17724ba675SRob Herring *   - The first Ethernet channel can no longer be used,
18724ba675SRob Herring *   - USB Channel 1 loses the overcurrent input signal.
19724ba675SRob Herring *
20724ba675SRob Herring * Please make sure your sub-board matches the following switch settings:
21724ba675SRob Herring *
22724ba675SRob Herring *           SW6                SW6-1 set to SDRAM
23724ba675SRob Herring *  ON                          SW6-2 set to Audio
24724ba675SRob Herring * +---------------------+      SW6-3 set to DRP
25724ba675SRob Herring * | =   =   = = =       |      SW6-4 set to CEU
26724ba675SRob Herring * |   =   =             |      SW6-5 set to Ether2
27724ba675SRob Herring * | 1 2 3 4 5 6 7 8 9 0 |      SW6-6 set to VDC6
28724ba675SRob Herring * +---------------------+      SW6-7 set to VDC6
29724ba675SRob Herring */
30724ba675SRob Herring
31724ba675SRob Herring/dts-v1/;
32724ba675SRob Herring#include "r7s9210.dtsi"
33724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
34724ba675SRob Herring#include <dt-bindings/input/input.h>
35724ba675SRob Herring#include <dt-bindings/pinctrl/r7s9210-pinctrl.h>
36724ba675SRob Herring
37724ba675SRob Herring/ {
38724ba675SRob Herring	model = "RZA2MEVB";
39724ba675SRob Herring	compatible = "renesas,rza2mevb", "renesas,r7s9210";
40724ba675SRob Herring
41724ba675SRob Herring	aliases {
42724ba675SRob Herring		serial0 = &scif2;
43724ba675SRob Herring		ethernet0 = &ether1;
44724ba675SRob Herring	};
45724ba675SRob Herring
46724ba675SRob Herring	chosen {
47724ba675SRob Herring		bootargs = "ignore_loglevel";
48724ba675SRob Herring		stdout-path = "serial0:115200n8";
49724ba675SRob Herring	};
50724ba675SRob Herring
51724ba675SRob Herring	keyboard {
52724ba675SRob Herring		compatible = "gpio-keys";
53724ba675SRob Herring
54724ba675SRob Herring		pinctrl-names = "default";
55724ba675SRob Herring		pinctrl-0 = <&keyboard_pins>;
56724ba675SRob Herring
57724ba675SRob Herring		key-3 {
58*0f458e7dSWolfram Sang			interrupts-extended = <&irqc 0 IRQ_TYPE_EDGE_BOTH>;
59724ba675SRob Herring			linux,code = <KEY_3>;
60724ba675SRob Herring			label = "SW3";
61724ba675SRob Herring			wakeup-source;
62724ba675SRob Herring		};
63724ba675SRob Herring	};
64724ba675SRob Herring
65724ba675SRob Herring	leds {
66724ba675SRob Herring		compatible = "gpio-leds";
67724ba675SRob Herring
68724ba675SRob Herring		led-red {
69724ba675SRob Herring			gpios = <&pinctrl RZA2_PIN(PORT6, 0) GPIO_ACTIVE_HIGH>;
70724ba675SRob Herring		};
71724ba675SRob Herring		led-green {
72724ba675SRob Herring			gpios = <&pinctrl RZA2_PIN(PORTC, 1) GPIO_ACTIVE_HIGH>;
73724ba675SRob Herring		};
74724ba675SRob Herring	};
75724ba675SRob Herring
76724ba675SRob Herring	memory@c000000 {
77724ba675SRob Herring		device_type = "memory";
78724ba675SRob Herring		reg = <0x0c000000 0x04000000>;	/* SDRAM */
79724ba675SRob Herring	};
80724ba675SRob Herring};
81724ba675SRob Herring
82724ba675SRob Herring&ehci0 {
83724ba675SRob Herring	status = "okay";
84724ba675SRob Herring};
85724ba675SRob Herring
86724ba675SRob Herring&ehci1 {
87724ba675SRob Herring	status = "okay";
88724ba675SRob Herring};
89724ba675SRob Herring
90724ba675SRob Herring&ether1 {
91724ba675SRob Herring	pinctrl-names = "default";
92724ba675SRob Herring	pinctrl-0 = <&eth1_pins>;
93724ba675SRob Herring	status = "okay";
94724ba675SRob Herring	renesas,no-ether-link;
95724ba675SRob Herring	phy-handle = <&phy1>;
96724ba675SRob Herring	phy1: ethernet-phy@1 {
97724ba675SRob Herring		compatible = "ethernet-phy-id001c.c816",
98724ba675SRob Herring			     "ethernet-phy-ieee802.3-c22";
99724ba675SRob Herring		reg = <0>;
100724ba675SRob Herring	};
101724ba675SRob Herring};
102724ba675SRob Herring
103724ba675SRob Herring/* EXTAL */
104724ba675SRob Herring&extal_clk {
105724ba675SRob Herring	clock-frequency = <24000000>;	/* 24MHz */
106724ba675SRob Herring};
107724ba675SRob Herring
108724ba675SRob Herring&i2c3 {
109724ba675SRob Herring	status = "okay";
110724ba675SRob Herring	clock-frequency = <400000>;
111724ba675SRob Herring
112724ba675SRob Herring	pinctrl-names = "default";
113724ba675SRob Herring	pinctrl-0 = <&i2c3_pins>;
114724ba675SRob Herring
115724ba675SRob Herring	eeprom@50 {
116724ba675SRob Herring		compatible = "renesas,r1ex24128", "atmel,24c128";
117724ba675SRob Herring		reg = <0x50>;
118724ba675SRob Herring		pagesize = <64>;
119724ba675SRob Herring	};
120724ba675SRob Herring};
121724ba675SRob Herring
122724ba675SRob Herring/* High resolution System tick timers */
123724ba675SRob Herring&ostm0 {
124724ba675SRob Herring	status = "okay";
125724ba675SRob Herring};
126724ba675SRob Herring
127724ba675SRob Herring&ostm1 {
128724ba675SRob Herring	status = "okay";
129724ba675SRob Herring};
130724ba675SRob Herring
131724ba675SRob Herring&pinctrl {
132724ba675SRob Herring	eth0_pins: eth0 {
133724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORTE, 0, 7)>, /* REF50CK0 */
134724ba675SRob Herring			 <RZA2_PINMUX(PORT6, 1, 7)>, /* RMMI0_TXDEN */
135724ba675SRob Herring			 <RZA2_PINMUX(PORT6, 2, 7)>, /* RMII0_TXD0 */
136724ba675SRob Herring			 <RZA2_PINMUX(PORT6, 3, 7)>, /* RMII0_TXD1 */
137724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 4, 7)>, /* RMII0_CRSDV */
138724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 1, 7)>, /* RMII0_RXD0 */
139724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 2, 7)>, /* RMII0_RXD1 */
140724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 3, 7)>, /* RMII0_RXER */
141724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 5, 1)>, /* ET0_MDC */
142724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 6, 1)>, /* ET0_MDIO */
143724ba675SRob Herring			 <RZA2_PINMUX(PORTL, 0, 5)>; /* IRQ4 */
144724ba675SRob Herring	};
145724ba675SRob Herring
146724ba675SRob Herring	eth1_pins: eth1 {
147724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORTK, 3, 7)>, /* REF50CK1 */
148724ba675SRob Herring			 <RZA2_PINMUX(PORTK, 0, 7)>, /* RMMI1_TXDEN */
149724ba675SRob Herring			 <RZA2_PINMUX(PORTK, 1, 7)>, /* RMII1_TXD0 */
150724ba675SRob Herring			 <RZA2_PINMUX(PORTK, 2, 7)>, /* RMII1_TXD1 */
151724ba675SRob Herring			 <RZA2_PINMUX(PORT3, 2, 7)>, /* RMII1_CRSDV */
152724ba675SRob Herring			 <RZA2_PINMUX(PORTK, 4, 7)>, /* RMII1_RXD0 */
153724ba675SRob Herring			 <RZA2_PINMUX(PORT3, 5, 7)>, /* RMII1_RXD1 */
154724ba675SRob Herring			 <RZA2_PINMUX(PORT3, 1, 7)>, /* RMII1_RXER */
155724ba675SRob Herring			 <RZA2_PINMUX(PORT3, 3, 1)>, /* ET1_MDC */
156724ba675SRob Herring			 <RZA2_PINMUX(PORT3, 4, 1)>, /* ET1_MDIO */
157724ba675SRob Herring			 <RZA2_PINMUX(PORTL, 1, 5)>; /* IRQ5 */
158724ba675SRob Herring	};
159724ba675SRob Herring
160724ba675SRob Herring	i2c3_pins: i2c3 {
161724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORTD, 6, 1)>,	/* RIIC3SCL */
162724ba675SRob Herring			 <RZA2_PINMUX(PORTD, 7, 1)>;	/* RIIC3SDA */
163724ba675SRob Herring	};
164724ba675SRob Herring
165724ba675SRob Herring	keyboard_pins: keyboard {
166724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORTJ, 1, 6)>;	/* IRQ0 */
167724ba675SRob Herring	};
168724ba675SRob Herring
169724ba675SRob Herring	/* Serial Console */
170724ba675SRob Herring	scif2_pins: serial2 {
171724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORTE, 2, 3)>,	/* TxD2 */
172724ba675SRob Herring			 <RZA2_PINMUX(PORTE, 1, 3)>;	/* RxD2 */
173724ba675SRob Herring	};
174724ba675SRob Herring
175724ba675SRob Herring	sdhi0_pins: sdhi0 {
176724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORT5, 0, 3)>,	/* SD0_CD */
177724ba675SRob Herring			 <RZA2_PINMUX(PORT5, 1, 3)>;	/* SD0_WP */
178724ba675SRob Herring	};
179724ba675SRob Herring
180724ba675SRob Herring	sdhi1_pins: sdhi1 {
181724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORT5, 4, 3)>,	/* SD1_CD */
182724ba675SRob Herring			 <RZA2_PINMUX(PORT5, 5, 3)>;	/* SD1_WP */
183724ba675SRob Herring	};
184724ba675SRob Herring
185724ba675SRob Herring	usb0_pins: usb0 {
186724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORT5, 2, 3)>,	/* VBUSIN0 */
187724ba675SRob Herring			 <RZA2_PINMUX(PORTC, 6, 1)>,	/* VBUSEN0 */
188724ba675SRob Herring			 <RZA2_PINMUX(PORTC, 7, 1)>;	/* OVRCUR0 */
189724ba675SRob Herring	};
190724ba675SRob Herring
191724ba675SRob Herring	usb1_pins: usb1 {
192724ba675SRob Herring		pinmux = <RZA2_PINMUX(PORTC, 0, 1)>,	/* VBUSIN1 */
193724ba675SRob Herring			 <RZA2_PINMUX(PORTC, 5, 1)>;	/* VBUSEN1 */
194724ba675SRob Herring	};
195724ba675SRob Herring};
196724ba675SRob Herring
197724ba675SRob Herring/* RTC_X1 */
198724ba675SRob Herring&rtc_x1_clk {
199724ba675SRob Herring	clock-frequency = <32768>;
200724ba675SRob Herring};
201724ba675SRob Herring
202724ba675SRob Herring/* Serial Console */
203724ba675SRob Herring&scif2 {
204724ba675SRob Herring	pinctrl-names = "default";
205724ba675SRob Herring	pinctrl-0 = <&scif2_pins>;
206724ba675SRob Herring
207724ba675SRob Herring	status = "okay";
208724ba675SRob Herring};
209724ba675SRob Herring
210724ba675SRob Herring&sdhi0 {
211724ba675SRob Herring	pinctrl-names = "default";
212724ba675SRob Herring	pinctrl-0 = <&sdhi0_pins>;
213724ba675SRob Herring	bus-width = <4>;
214724ba675SRob Herring	status = "okay";
215724ba675SRob Herring};
216724ba675SRob Herring
217724ba675SRob Herring&sdhi1 {
218724ba675SRob Herring	pinctrl-names = "default";
219724ba675SRob Herring	pinctrl-0 = <&sdhi1_pins>;
220724ba675SRob Herring	bus-width = <4>;
221724ba675SRob Herring	status = "okay";
222724ba675SRob Herring};
223724ba675SRob Herring
224724ba675SRob Herring/* USB-0 as Host */
225724ba675SRob Herring&usb2_phy0 {
226724ba675SRob Herring	pinctrl-names = "default";
227724ba675SRob Herring	pinctrl-0 = <&usb0_pins>;
228724ba675SRob Herring	dr_mode = "host";	/* Requires JP3 to be fitted */
229724ba675SRob Herring	status = "okay";
230724ba675SRob Herring};
231724ba675SRob Herring
232724ba675SRob Herring/* USB-1 as Host */
233724ba675SRob Herring&usb2_phy1 {
234724ba675SRob Herring	pinctrl-names = "default";
235724ba675SRob Herring	pinctrl-0 = <&usb1_pins>;
236724ba675SRob Herring	dr_mode = "host";
237724ba675SRob Herring	status = "okay";
238724ba675SRob Herring};
239724ba675SRob Herring
240724ba675SRob Herring/* USB_X1 */
241724ba675SRob Herring&usb_x1_clk {
242724ba675SRob Herring	clock-frequency = <48000000>;
243724ba675SRob Herring};
244