xref: /linux/arch/arm/boot/dts/renesas/r8a7778-bockw.dts (revision 55d0969c451159cff86949b38c39171cab962069)
1// 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
64&lbsc {
65	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";
99		interrupts-extended = <&irqpin 0 IRQ_TYPE_EDGE_FALLING>;
100		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};
263