xref: /freebsd/sys/contrib/device-tree/src/arm/renesas/r7s72100-rskrza1.dts (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Device Tree Source for the RZ/A1H RSK board
4f126890aSEmmanuel Vadot *
5f126890aSEmmanuel Vadot * Copyright (C) 2016 Renesas Electronics
6f126890aSEmmanuel Vadot */
7f126890aSEmmanuel Vadot
8f126890aSEmmanuel Vadot/dts-v1/;
9f126890aSEmmanuel Vadot#include "r7s72100.dtsi"
10f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
12f126890aSEmmanuel Vadot#include <dt-bindings/pinctrl/r7s72100-pinctrl.h>
13f126890aSEmmanuel Vadot
14f126890aSEmmanuel Vadot/ {
15f126890aSEmmanuel Vadot	model = "RSKRZA1";
16f126890aSEmmanuel Vadot	compatible = "renesas,rskrza1", "renesas,r7s72100";
17f126890aSEmmanuel Vadot
18f126890aSEmmanuel Vadot	aliases {
19f126890aSEmmanuel Vadot		serial0 = &scif2;
20f126890aSEmmanuel Vadot	};
21f126890aSEmmanuel Vadot
22f126890aSEmmanuel Vadot	chosen {
23f126890aSEmmanuel Vadot		bootargs = "ignore_loglevel";
24f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
25f126890aSEmmanuel Vadot	};
26f126890aSEmmanuel Vadot
27f126890aSEmmanuel Vadot	memory@8000000 {
28f126890aSEmmanuel Vadot		device_type = "memory";
29f126890aSEmmanuel Vadot		reg = <0x08000000 0x02000000>;
30f126890aSEmmanuel Vadot	};
31f126890aSEmmanuel Vadot
32*84943d6fSEmmanuel Vadot	flash@18000000 {
33*84943d6fSEmmanuel Vadot		compatible = "mtd-rom";
34*84943d6fSEmmanuel Vadot		reg = <0x18000000 0x08000000>;
35*84943d6fSEmmanuel Vadot		clocks = <&mstp9_clks R7S72100_CLK_SPIBSC0>;
36*84943d6fSEmmanuel Vadot		power-domains = <&cpg_clocks>;
37*84943d6fSEmmanuel Vadot		bank-width = <4>;
38*84943d6fSEmmanuel Vadot		device-width = <1>;
39*84943d6fSEmmanuel Vadot		#address-cells = <1>;
40*84943d6fSEmmanuel Vadot		#size-cells = <1>;
41*84943d6fSEmmanuel Vadot
42*84943d6fSEmmanuel Vadot		partitions {
43*84943d6fSEmmanuel Vadot			compatible = "fixed-partitions";
44*84943d6fSEmmanuel Vadot			#address-cells = <1>;
45*84943d6fSEmmanuel Vadot			#size-cells = <1>;
46*84943d6fSEmmanuel Vadot
47*84943d6fSEmmanuel Vadot			partition@0 {
48*84943d6fSEmmanuel Vadot				label = "uboot";
49*84943d6fSEmmanuel Vadot				reg = <0x00000000 0x00080000>;
50*84943d6fSEmmanuel Vadot			};
51*84943d6fSEmmanuel Vadot
52*84943d6fSEmmanuel Vadot			partition@80000 {
53*84943d6fSEmmanuel Vadot				label = "uboot-env";
54*84943d6fSEmmanuel Vadot				reg = <0x00080000 0x00040000>;
55*84943d6fSEmmanuel Vadot			};
56*84943d6fSEmmanuel Vadot
57*84943d6fSEmmanuel Vadot			partition@c0000 {
58*84943d6fSEmmanuel Vadot				label = "dt";
59*84943d6fSEmmanuel Vadot				reg = <0x000c0000 0x00040000>;
60*84943d6fSEmmanuel Vadot			};
61*84943d6fSEmmanuel Vadot
62*84943d6fSEmmanuel Vadot			partition@100000 {
63*84943d6fSEmmanuel Vadot				label = "kernel";
64*84943d6fSEmmanuel Vadot				reg = <0x00100000 0x00280000>;
65*84943d6fSEmmanuel Vadot			};
66*84943d6fSEmmanuel Vadot
67*84943d6fSEmmanuel Vadot			partition@400000 {
68*84943d6fSEmmanuel Vadot				label = "rootfs";
69*84943d6fSEmmanuel Vadot				reg = <0x00400000 0x01c00000>;
70*84943d6fSEmmanuel Vadot			};
71*84943d6fSEmmanuel Vadot		};
72*84943d6fSEmmanuel Vadot	};
73*84943d6fSEmmanuel Vadot
74f126890aSEmmanuel Vadot	keyboard {
75f126890aSEmmanuel Vadot		compatible = "gpio-keys";
76f126890aSEmmanuel Vadot
77f126890aSEmmanuel Vadot		pinctrl-names = "default";
78f126890aSEmmanuel Vadot		pinctrl-0 = <&keyboard_pins>;
79f126890aSEmmanuel Vadot
80f126890aSEmmanuel Vadot		key-1 {
81f126890aSEmmanuel Vadot			interrupt-parent = <&irqc>;
82f126890aSEmmanuel Vadot			interrupts = <3 IRQ_TYPE_EDGE_BOTH>;
83f126890aSEmmanuel Vadot			linux,code = <KEY_1>;
84f126890aSEmmanuel Vadot			label = "SW1";
85f126890aSEmmanuel Vadot			wakeup-source;
86f126890aSEmmanuel Vadot		};
87f126890aSEmmanuel Vadot
88f126890aSEmmanuel Vadot		key-2 {
89f126890aSEmmanuel Vadot			interrupt-parent = <&irqc>;
90f126890aSEmmanuel Vadot			interrupts = <2 IRQ_TYPE_EDGE_BOTH>;
91f126890aSEmmanuel Vadot			linux,code = <KEY_2>;
92f126890aSEmmanuel Vadot			label = "SW2";
93f126890aSEmmanuel Vadot			wakeup-source;
94f126890aSEmmanuel Vadot		};
95f126890aSEmmanuel Vadot
96f126890aSEmmanuel Vadot		key-3 {
97f126890aSEmmanuel Vadot			interrupt-parent = <&irqc>;
98f126890aSEmmanuel Vadot			interrupts = <5 IRQ_TYPE_EDGE_BOTH>;
99f126890aSEmmanuel Vadot			linux,code = <KEY_3>;
100f126890aSEmmanuel Vadot			label = "SW3";
101f126890aSEmmanuel Vadot			wakeup-source;
102f126890aSEmmanuel Vadot		};
103f126890aSEmmanuel Vadot	};
104f126890aSEmmanuel Vadot
105f126890aSEmmanuel Vadot	leds {
106f126890aSEmmanuel Vadot		compatible = "gpio-leds";
107f126890aSEmmanuel Vadot
108f126890aSEmmanuel Vadot		led0 {
109f126890aSEmmanuel Vadot			gpios = <&port7 1 GPIO_ACTIVE_LOW>;
110f126890aSEmmanuel Vadot		};
111f126890aSEmmanuel Vadot
112f126890aSEmmanuel Vadot		led1 {
113f126890aSEmmanuel Vadot			gpios = <&io_expander1 0 GPIO_ACTIVE_LOW>;
114f126890aSEmmanuel Vadot		};
115f126890aSEmmanuel Vadot
116f126890aSEmmanuel Vadot		led2 {
117f126890aSEmmanuel Vadot			gpios = <&io_expander1 1 GPIO_ACTIVE_LOW>;
118f126890aSEmmanuel Vadot		};
119f126890aSEmmanuel Vadot
120f126890aSEmmanuel Vadot		led3 {
121f126890aSEmmanuel Vadot			gpios = <&io_expander1 2 GPIO_ACTIVE_LOW>;
122f126890aSEmmanuel Vadot		};
123f126890aSEmmanuel Vadot	};
124f126890aSEmmanuel Vadot};
125f126890aSEmmanuel Vadot
126f126890aSEmmanuel Vadot&extal_clk {
127f126890aSEmmanuel Vadot	clock-frequency = <13330000>;
128f126890aSEmmanuel Vadot};
129f126890aSEmmanuel Vadot
130f126890aSEmmanuel Vadot&i2c3 {
131f126890aSEmmanuel Vadot	pinctrl-names = "default";
132f126890aSEmmanuel Vadot	pinctrl-0 = <&i2c3_pins>;
133f126890aSEmmanuel Vadot	status = "okay";
134f126890aSEmmanuel Vadot
135f126890aSEmmanuel Vadot	clock-frequency = <400000>;
136f126890aSEmmanuel Vadot
137f126890aSEmmanuel Vadot	io_expander1: gpio@20 {
138f126890aSEmmanuel Vadot		compatible = "onnn,cat9554";
139f126890aSEmmanuel Vadot		reg = <0x20>;
140f126890aSEmmanuel Vadot		gpio-controller;
141f126890aSEmmanuel Vadot		#gpio-cells = <2>;
142f126890aSEmmanuel Vadot	};
143f126890aSEmmanuel Vadot
144f126890aSEmmanuel Vadot	io_expander2: gpio@21 {
145f126890aSEmmanuel Vadot		compatible = "onnn,cat9554";
146f126890aSEmmanuel Vadot		reg = <0x21>;
147f126890aSEmmanuel Vadot		gpio-controller;
148f126890aSEmmanuel Vadot		#gpio-cells = <2>;
149f126890aSEmmanuel Vadot	};
150f126890aSEmmanuel Vadot
151f126890aSEmmanuel Vadot	eeprom@50 {
152f126890aSEmmanuel Vadot		compatible = "renesas,r1ex24016", "atmel,24c16";
153f126890aSEmmanuel Vadot		reg = <0x50>;
154f126890aSEmmanuel Vadot		pagesize = <16>;
155f126890aSEmmanuel Vadot	};
156f126890aSEmmanuel Vadot};
157f126890aSEmmanuel Vadot
158*84943d6fSEmmanuel Vadot&bsc {
159*84943d6fSEmmanuel Vadot	flash@0 {
160*84943d6fSEmmanuel Vadot		compatible = "cfi-flash";
161*84943d6fSEmmanuel Vadot		reg = <0x00000000 0x4000000>;
162*84943d6fSEmmanuel Vadot		bank-width = <2>;
163*84943d6fSEmmanuel Vadot
164*84943d6fSEmmanuel Vadot		partitions {
165*84943d6fSEmmanuel Vadot			compatible = "fixed-partitions";
166*84943d6fSEmmanuel Vadot			#address-cells = <1>;
167*84943d6fSEmmanuel Vadot			#size-cells = <1>;
168*84943d6fSEmmanuel Vadot
169*84943d6fSEmmanuel Vadot			partition@0 {
170*84943d6fSEmmanuel Vadot				label = "apps";
171*84943d6fSEmmanuel Vadot				reg = <0x00000000 0x01000000>;
172*84943d6fSEmmanuel Vadot			};
173*84943d6fSEmmanuel Vadot
174*84943d6fSEmmanuel Vadot			partition@1000000 {
175*84943d6fSEmmanuel Vadot				label = "data";
176*84943d6fSEmmanuel Vadot				reg = <0x01000000 0x03000000>;
177*84943d6fSEmmanuel Vadot			};
178*84943d6fSEmmanuel Vadot		};
179*84943d6fSEmmanuel Vadot	};
180*84943d6fSEmmanuel Vadot};
181*84943d6fSEmmanuel Vadot
182f126890aSEmmanuel Vadot&usb_x1_clk {
183f126890aSEmmanuel Vadot	clock-frequency = <48000000>;
184f126890aSEmmanuel Vadot};
185f126890aSEmmanuel Vadot
186f126890aSEmmanuel Vadot&rtc_x1_clk {
187f126890aSEmmanuel Vadot	clock-frequency = <32768>;
188f126890aSEmmanuel Vadot};
189f126890aSEmmanuel Vadot
190f126890aSEmmanuel Vadot&pinctrl {
191f126890aSEmmanuel Vadot	/* RIIC ch3 (Port Expander, EEPROM (MAC Addr), Audio Codec) */
192f126890aSEmmanuel Vadot	i2c3_pins: i2c3 {
193f126890aSEmmanuel Vadot		pinmux = <RZA1_PINMUX(1, 6, 1)>,	/* RIIC3SCL */
194f126890aSEmmanuel Vadot			 <RZA1_PINMUX(1, 7, 1)>;	/* RIIC3SDA */
195f126890aSEmmanuel Vadot	};
196f126890aSEmmanuel Vadot
197f126890aSEmmanuel Vadot	keyboard_pins: keyboard {
198f126890aSEmmanuel Vadot		pinmux = <RZA1_PINMUX(1, 9, 3)>,	/* IRQ3 */
199f126890aSEmmanuel Vadot			 <RZA1_PINMUX(1, 8, 3)>,	/* IRQ2 */
200f126890aSEmmanuel Vadot			 <RZA1_PINMUX(1, 11, 3)>;	/* IRQ5 */
201f126890aSEmmanuel Vadot	};
202f126890aSEmmanuel Vadot
203f126890aSEmmanuel Vadot	/* Serial Console */
204f126890aSEmmanuel Vadot	scif2_pins: serial2 {
205f126890aSEmmanuel Vadot		pinmux = <RZA1_PINMUX(3, 0, 6)>,	/* TxD2 */
206f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 2, 4)>;	/* RxD2 */
207f126890aSEmmanuel Vadot	};
208f126890aSEmmanuel Vadot
209f126890aSEmmanuel Vadot	/* Ethernet */
210f126890aSEmmanuel Vadot	ether_pins: ether {
211f126890aSEmmanuel Vadot		/* Ethernet on Ports 1,2,3,5 */
212f126890aSEmmanuel Vadot		pinmux = <RZA1_PINMUX(1, 14, 4)>,	/* ET_COL   */
213f126890aSEmmanuel Vadot			 <RZA1_PINMUX(5, 9, 2)>,	/* ET_MDC   */
214f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 3, 2)>,	/* ET_MDIO  */
215f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 4, 2)>,	/* ET_RXCLK */
216f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 5, 2)>,	/* ET_RXER  */
217f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 6, 2)>,	/* ET_RXDV  */
218f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 0, 2)>,	/* ET_TXCLK */
219f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 1, 2)>,	/* ET_TXER  */
220f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 2, 2)>,	/* ET_TXEN  */
221f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 3, 2)>,	/* ET_CRS   */
222f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 4, 2)>,	/* ET_TXD0  */
223f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 5, 2)>,	/* ET_TXD1  */
224f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 6, 2)>,	/* ET_TXD2  */
225f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 7, 2)>,	/* ET_TXD3  */
226f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 8, 2)>,	/* ET_RXD0  */
227f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 9, 2)>,	/* ET_RXD1  */
228f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 10, 2)>,	/* ET_RXD2  */
229f126890aSEmmanuel Vadot			 <RZA1_PINMUX(2, 11, 2)>;	/* ET_RXD3  */
230f126890aSEmmanuel Vadot	};
231f126890aSEmmanuel Vadot
232f126890aSEmmanuel Vadot	/* SDHI ch1 on CN1 */
233f126890aSEmmanuel Vadot	sdhi1_pins: sdhi1 {
234f126890aSEmmanuel Vadot		pinmux = <RZA1_PINMUX(3, 8, 7)>,	/* SD_CD_1 */
235f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 9, 7)>,	/* SD_WP_1 */
236f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 10, 7)>,	/* SD_D1_1 */
237f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 11, 7)>,	/* SD_D0_1 */
238f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 12, 7)>,	/* SD_CLK_1 */
239f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 13, 7)>,	/* SD_CMD_1 */
240f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 14, 7)>,	/* SD_D3_1 */
241f126890aSEmmanuel Vadot			 <RZA1_PINMUX(3, 15, 7)>;	/* SD_D2_1 */
242f126890aSEmmanuel Vadot	};
243f126890aSEmmanuel Vadot};
244f126890aSEmmanuel Vadot
245f126890aSEmmanuel Vadot&mtu2 {
246f126890aSEmmanuel Vadot	status = "okay";
247f126890aSEmmanuel Vadot};
248f126890aSEmmanuel Vadot
249f126890aSEmmanuel Vadot&ether {
250f126890aSEmmanuel Vadot	pinctrl-names = "default";
251f126890aSEmmanuel Vadot	pinctrl-0 = <&ether_pins>;
252f126890aSEmmanuel Vadot	status = "okay";
253f126890aSEmmanuel Vadot	renesas,no-ether-link;
254f126890aSEmmanuel Vadot	phy-handle = <&phy0>;
255f126890aSEmmanuel Vadot	phy0: ethernet-phy@0 {
256f126890aSEmmanuel Vadot		compatible = "ethernet-phy-idb824.2814",
257f126890aSEmmanuel Vadot			     "ethernet-phy-ieee802.3-c22";
258f126890aSEmmanuel Vadot		reg = <0>;
259f126890aSEmmanuel Vadot	};
260f126890aSEmmanuel Vadot};
261f126890aSEmmanuel Vadot
262f126890aSEmmanuel Vadot&sdhi1 {
263f126890aSEmmanuel Vadot	pinctrl-names = "default";
264f126890aSEmmanuel Vadot	pinctrl-0 = <&sdhi1_pins>;
265f126890aSEmmanuel Vadot	bus-width = <4>;
266f126890aSEmmanuel Vadot	status = "okay";
267f126890aSEmmanuel Vadot};
268f126890aSEmmanuel Vadot
269f126890aSEmmanuel Vadot&ostm0 {
270f126890aSEmmanuel Vadot	status = "okay";
271f126890aSEmmanuel Vadot};
272f126890aSEmmanuel Vadot
273f126890aSEmmanuel Vadot&ostm1 {
274f126890aSEmmanuel Vadot	status = "okay";
275f126890aSEmmanuel Vadot};
276f126890aSEmmanuel Vadot
277f126890aSEmmanuel Vadot&rtc {
278f126890aSEmmanuel Vadot	status = "okay";
279f126890aSEmmanuel Vadot};
280f126890aSEmmanuel Vadot
281f126890aSEmmanuel Vadot&scif2 {
282f126890aSEmmanuel Vadot	pinctrl-names = "default";
283f126890aSEmmanuel Vadot	pinctrl-0 = <&scif2_pins>;
284f126890aSEmmanuel Vadot	status = "okay";
285f126890aSEmmanuel Vadot};
286