blob: a99d226f41a6020ad038dfe934d1786b6f9dad72 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Reference Device Tree Source for the R-Car M1A (R8A77781) Bock-W board
4 *
5 * Copyright (C) 2013 Renesas Solutions Corp.
6 * Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
7 *
8 * based on r8a7779
9 *
10 * Copyright (C) 2013 Renesas Solutions Corp.
11 * Copyright (C) 2013 Simon Horman
12 */
13
14/dts-v1/;
15#include "r8a7778.dtsi"
16#include <dt-bindings/interrupt-controller/irq.h>
17#include <dt-bindings/gpio/gpio.h>
18
19/ {
20 model = "bockw";
21 compatible = "renesas,bockw", "renesas,r8a7778";
22
23 aliases {
24 serial0 = &scif0;
25 };
26
27 chosen {
28 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
29 stdout-path = "serial0:115200n8";
30 };
31
32 memory@60000000 {
33 device_type = "memory";
34 reg = <0x60000000 0x10000000>;
35 };
36
37 fixedregulator3v3: regulator-3v3 {
38 compatible = "regulator-fixed";
39 regulator-name = "fixed-3.3V";
40 regulator-min-microvolt = <3300000>;
41 regulator-max-microvolt = <3300000>;
42 regulator-boot-on;
43 regulator-always-on;
44 };
45
46 sound {
47 compatible = "simple-audio-card";
48
49 simple-audio-card,format = "left_j";
50 simple-audio-card,bitclock-master = <&sndcodec>;
51 simple-audio-card,frame-master = <&sndcodec>;
52
53 sndcpu: simple-audio-card,cpu {
54 sound-dai = <&rcar_sound>;
55 };
56
57 sndcodec: simple-audio-card,codec {
58 sound-dai = <&ak4643>;
59 system-clock-frequency = <11289600>;
60 };
61 };
62};
63
Tom Rini844493d2025-01-26 16:17:47 -060064&lbsc {
Tom Rini53633a82024-02-29 12:33:36 -050065 flash@0 {
66 compatible = "cfi-flash";
67 reg = <0x0 0x04000000>;
68 pinctrl-0 = <&flash_pins>;
69 pinctrl-names = "default";
70 bank-width = <2>;
71
72 partitions {
73 compatible = "fixed-partitions";
74 #address-cells = <1>;
75 #size-cells = <1>;
76
77 partition@0 {
78 label = "uboot";
79 reg = <0x00000000 0x00040000>;
80 read-only;
81 };
82 partition@40000 {
83 label = "uboot-env";
84 reg = <0x00040000 0x00040000>;
85 read-only;
86 };
87 partition@80000 {
88 label = "flash";
89 reg = <0x00080000 0x03f80000>;
90 };
91 };
92 };
93
94 ethernet@18300000 {
95 compatible = "smsc,lan89218", "smsc,lan9115";
96 reg = <0x18300000 0x1000>;
97
98 phy-mode = "mii";
Tom Rini844493d2025-01-26 16:17:47 -060099 interrupts-extended = <&irqpin 0 IRQ_TYPE_EDGE_FALLING>;
Tom Rini53633a82024-02-29 12:33:36 -0500100 reg-io-width = <4>;
101 vddvario-supply = <&fixedregulator3v3>;
102 vdd33a-supply = <&fixedregulator3v3>;
103 };
104};
105
106&extal_clk {
107 clock-frequency = <33333333>;
108};
109
110&i2c0 {
111 status = "okay";
112
113 ak4643: codec@12 {
114 compatible = "asahi-kasei,ak4643";
115 #sound-dai-cells = <0>;
116 reg = <0x12>;
117 };
118
119 camera@41 {
120 compatible = "oki,ml86v7667";
121 reg = <0x41>;
122 };
123
124 camera@43 {
125 compatible = "oki,ml86v7667";
126 reg = <0x43>;
127 };
128
129 rx8581: rtc@51 {
130 compatible = "epson,rx8581";
131 reg = <0x51>;
132 };
133};
134
135&mmcif {
136 pinctrl-0 = <&mmc_pins>;
137 pinctrl-names = "default";
138
139 vmmc-supply = <&fixedregulator3v3>;
140 bus-width = <8>;
141 broken-cd;
142 status = "okay";
143};
144
145&irqpin {
146 status = "okay";
147};
148
149&tmu0 {
150 status = "okay";
151};
152
153&pfc {
154 pinctrl-0 = <&scif_clk_pins>;
155 pinctrl-names = "default";
156
157 flash_pins: flash {
158 groups = "lbsc_cs0";
159 function = "lbsc";
160 };
161
162 scif0_pins: scif0 {
163 groups = "scif0_data_a", "scif0_ctrl";
164 function = "scif0";
165 };
166
167 scif_clk_pins: scif_clk {
168 groups = "scif_clk";
169 function = "scif_clk";
170 };
171
172 mmc_pins: mmc {
173 groups = "mmc_data8", "mmc_ctrl";
174 function = "mmc";
175 };
176
177 sdhi0_pins: sd0 {
178 groups = "sdhi0_data4", "sdhi0_ctrl";
179 function = "sdhi0";
180 };
181 sdhi0_pup_pins: sd0_pup {
182 groups = "sdhi0_cd", "sdhi0_wp";
183 function = "sdhi0";
184 bias-pull-up;
185 };
186
187 hspi0_pins: hspi0 {
188 groups = "hspi0_a";
189 function = "hspi0";
190 };
191
192 usb0_pins: usb0 {
193 groups = "usb0";
194 function = "usb0";
195 };
196
197 usb1_pins: usb1 {
198 groups = "usb1";
199 function = "usb1";
200 };
201
202 vin0_pins: vin0 {
203 groups = "vin0_data8", "vin0_clk";
204 function = "vin0";
205 };
206
207 vin1_pins: vin1 {
208 groups = "vin1_data8", "vin1_clk";
209 function = "vin1";
210 };
211};
212
213&rcar_sound {
214 /* Single DAI */
215 #sound-dai-cells = <0>;
216};
217
218&sdhi0 {
219 pinctrl-0 = <&sdhi0_pins>, <&sdhi0_pup_pins>;
220 pinctrl-names = "default";
221
222 vmmc-supply = <&fixedregulator3v3>;
223 bus-width = <4>;
224 status = "okay";
225 wp-gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>;
226};
227
228&hspi0 {
229 pinctrl-0 = <&hspi0_pins>;
230 pinctrl-names = "default";
231 status = "okay";
232
233 flash: flash@0 {
234 compatible = "spansion,s25fl008k", "jedec,spi-nor";
235 reg = <0>;
236 spi-max-frequency = <104000000>;
237 m25p,fast-read;
238
239 partitions {
240 compatible = "fixed-partitions";
241 #address-cells = <1>;
242 #size-cells = <1>;
243
244 partition@0 {
245 label = "data(spi)";
246 reg = <0x00000000 0x00100000>;
247 };
248 };
249 };
250};
251
252&scif0 {
253 pinctrl-0 = <&scif0_pins>;
254 pinctrl-names = "default";
255
256 uart-has-rtscts;
257 status = "okay";
258};
259
260&scif_clk {
261 clock-frequency = <14745600>;
262};