1// SPDX-License-Identifier: (GPL-2.0 or MIT)
2/*
3 * Device Tree Source for the Spider CPU board
4 *
5 * Copyright (C) 2021 Renesas Electronics Corp.
6 */
7
8#include "r8a779f0.dtsi"
9
10/ {
11	model = "Renesas Spider CPU board";
12	compatible = "renesas,spider-cpu", "renesas,r8a779f0";
13
14	aliases {
15		serial0 = &scif3;
16		serial1 = &scif0;
17	};
18
19	chosen {
20		stdout-path = "serial0:115200n8";
21	};
22
23	memory@48000000 {
24		device_type = "memory";
25		/* first 128MB is reserved for secure area. */
26		reg = <0x0 0x48000000 0x0 0x78000000>;
27	};
28
29	memory@480000000 {
30		device_type = "memory";
31		reg = <0x4 0x80000000 0x0 0x80000000>;
32	};
33
34	reg_1p8v: regulator-1p8v {
35		compatible = "regulator-fixed";
36		regulator-name = "fixed-1.8V";
37		regulator-min-microvolt = <1800000>;
38		regulator-max-microvolt = <1800000>;
39		regulator-boot-on;
40		regulator-always-on;
41	};
42
43	reg_3p3v: regulator-3p3v {
44		compatible = "regulator-fixed";
45		regulator-name = "fixed-3.3V";
46		regulator-min-microvolt = <3300000>;
47		regulator-max-microvolt = <3300000>;
48		regulator-boot-on;
49		regulator-always-on;
50	};
51};
52
53&extal_clk {
54	clock-frequency = <20000000>;
55};
56
57&extalr_clk {
58	clock-frequency = <32768>;
59};
60
61&i2c4 {
62	pinctrl-0 = <&i2c4_pins>;
63	pinctrl-names = "default";
64
65	status = "okay";
66	clock-frequency = <400000>;
67
68	eeprom@50 {
69		compatible = "rohm,br24g01", "atmel,24c01";
70		label = "cpu-board";
71		reg = <0x50>;
72		pagesize = <8>;
73	};
74};
75
76/*
77 * This board also has a microSD slot which we will not support upstream
78 * because we cannot directly switch voltages in software.
79 */
80&mmc0 {
81	pinctrl-0 = <&mmc_pins>;
82	pinctrl-1 = <&mmc_pins>;
83	pinctrl-names = "default", "state_uhs";
84
85	vmmc-supply = <&reg_3p3v>;
86	vqmmc-supply = <&reg_1p8v>;
87	mmc-hs200-1_8v;
88	mmc-hs400-1_8v;
89	bus-width = <8>;
90	no-sd;
91	no-sdio;
92	non-removable;
93	full-pwr-cycle-in-suspend;
94	status = "okay";
95};
96
97&pfc {
98	pinctrl-0 = <&scif_clk_pins>;
99	pinctrl-names = "default";
100
101	i2c4_pins: i2c4 {
102		groups = "i2c4";
103		function = "i2c4";
104	};
105
106	mmc_pins: mmc {
107		groups = "mmc_data8", "mmc_ctrl", "mmc_ds";
108		function = "mmc";
109		power-source = <1800>;
110	};
111
112	scif0_pins: scif0 {
113		groups = "scif0_data", "scif0_ctrl";
114		function = "scif0";
115	};
116
117	scif3_pins: scif3 {
118		groups = "scif3_data", "scif3_ctrl";
119		function = "scif3";
120	};
121
122	scif_clk_pins: scif_clk {
123		groups = "scif_clk";
124		function = "scif_clk";
125	};
126};
127
128&rwdt {
129	timeout-sec = <60>;
130	status = "okay";
131};
132
133&scif0 {
134	pinctrl-0 = <&scif0_pins>;
135	pinctrl-names = "default";
136
137	uart-has-rtscts;
138	status = "okay";
139};
140
141&scif3 {
142	pinctrl-0 = <&scif3_pins>;
143	pinctrl-names = "default";
144
145	uart-has-rtscts;
146	status = "okay";
147};
148
149&scif_clk {
150	clock-frequency = <24000000>;
151};
152