Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/*
2 * Device Tree Source for the KZM-A9-GT board
3 *
4 * Copyright (C) 2012 Horms Solutions Ltd.
5 *
6 * Based on sh73a0-kzm9g.dts
7 * Copyright (C) 2012 Renesas Solutions Corp.
8 *
9 * This file is licensed under the terms of the GNU General Public License
10 * version 2. This program is licensed "as is" without any warranty of any
11 * kind, whether express or implied.
12 */
13
14/dts-v1/;
15#include "sh73a0.dtsi"
16#include <dt-bindings/gpio/gpio.h>
17#include <dt-bindings/input/input.h>
18#include <dt-bindings/interrupt-controller/irq.h>
19
20/ {
21 model = "KZM-A9-GT";
22 compatible = "renesas,kzm9g-reference", "renesas,sh73a0";
23
24 aliases {
25 serial4 = &scifa4;
26 };
27
28 cpus {
29 cpu@0 {
30 cpu0-supply = <&vdd_dvfs>;
31 operating-points = <
32 /* kHz uV */
33 1196000 1315000
34 598000 1175000
35 398667 1065000
36 >;
37 voltage-tolerance = <1>; /* 1% */
38 };
39 };
40
41 chosen {
42 bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel rw";
43 stdout-path = &scifa4;
44 };
45
46 memory {
47 device_type = "memory";
48 reg = <0x41000000 0x1e800000>;
49 };
50
51 reg_1p8v: regulator@0 {
52 compatible = "regulator-fixed";
53 regulator-name = "fixed-1.8V";
54 regulator-min-microvolt = <1800000>;
55 regulator-max-microvolt = <1800000>;
56 regulator-always-on;
57 regulator-boot-on;
58 };
59
60 reg_3p3v: regulator@1 {
61 compatible = "regulator-fixed";
62 regulator-name = "fixed-3.3V";
63 regulator-min-microvolt = <3300000>;
64 regulator-max-microvolt = <3300000>;
65 regulator-always-on;
66 regulator-boot-on;
67 };
68
69 vmmc_sdhi0: regulator@2 {
70 compatible = "regulator-fixed";
71 regulator-name = "SDHI0 Vcc";
72 regulator-min-microvolt = <3300000>;
73 regulator-max-microvolt = <3300000>;
74 gpio = <&pfc 15 GPIO_ACTIVE_HIGH>;
75 enable-active-high;
76 };
77
78 vmmc_sdhi2: regulator@3 {
79 compatible = "regulator-fixed";
80 regulator-name = "SDHI2 Vcc";
81 regulator-min-microvolt = <3300000>;
82 regulator-max-microvolt = <3300000>;
83 gpio = <&pfc 14 GPIO_ACTIVE_HIGH>;
84 enable-active-high;
85 };
86
87 lan9220@10000000 {
88 compatible = "smsc,lan9220", "smsc,lan9115";
89 reg = <0x10000000 0x100>;
90 phy-mode = "mii";
91 interrupt-parent = <&irqpin0>;
92 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
93 reg-io-width = <4>;
94 smsc,irq-push-pull;
95 smsc,save-mac-address;
96 vddvario-supply = <®_1p8v>;
97 vdd33a-supply = <®_3p3v>;
98 };
99
100 leds {
101 compatible = "gpio-leds";
102 led1 {
103 gpios = <&pfc 20 GPIO_ACTIVE_LOW>;
104 label = "LED1";
105 };
106 led2 {
107 gpios = <&pfc 21 GPIO_ACTIVE_LOW>;
108 label = "LED2";
109 };
110 led3 {
111 gpios = <&pfc 22 GPIO_ACTIVE_LOW>;
112 label = "LED3";
113 };
114 led4 {
115 gpios = <&pfc 23 GPIO_ACTIVE_LOW>;
116 label = "LED4";
117 };
118 };
119
120 keyboard {
121 compatible = "gpio-keys";
122
123 back-key {
124 gpios = <&pcf8575 8 GPIO_ACTIVE_LOW>;
125 linux,code = <KEY_BACK>;
126 label = "SW3";
127 };
128
129 right-key {
130 gpios = <&pcf8575 9 GPIO_ACTIVE_LOW>;
131 linux,code = <KEY_RIGHT>;
132 label = "SW2-R";
133 };
134
135 left-key {
136 gpios = <&pcf8575 10 GPIO_ACTIVE_LOW>;
137 linux,code = <KEY_LEFT>;
138 label = "SW2-L";
139 };
140
141 enter-key {
142 gpios = <&pcf8575 11 GPIO_ACTIVE_LOW>;
143 linux,code = <KEY_ENTER>;
144 label = "SW2-P";
145 };
146
147 up-key {
148 gpios = <&pcf8575 12 GPIO_ACTIVE_LOW>;
149 linux,code = <KEY_UP>;
150 label = "SW2-U";
151 };
152
153 down-key {
154 gpios = <&pcf8575 13 GPIO_ACTIVE_LOW>;
155 linux,code = <KEY_DOWN>;
156 label = "SW2-D";
157 };
158
159 home-key {
160 gpios = <&pcf8575 14 GPIO_ACTIVE_LOW>;
161 linux,code = <KEY_HOME>;
162 label = "SW1";
163 };
164 };
165
166 sound {
167 compatible = "simple-audio-card";
168 simple-audio-card,format = "left_j";
169 simple-audio-card,cpu {
170 sound-dai = <&sh_fsi2 0>;
171 };
172 simple-audio-card,codec {
173 sound-dai = <&ak4648>;
174 bitclock-master;
175 frame-master;
176 system-clock-frequency = <11289600>;
177 };
178 };
179};
180
181&cmt1 {
182 status = "okay";
183};
184
185&extal2_clk {
186 clock-frequency = <48000000>;
187};
188
189&i2c0 {
190 status = "okay";
191 as3711@40 {
192 compatible = "ams,as3711";
193 reg = <0x40>;
194
195 regulators {
196 vdd_dvfs: sd1 {
197 regulator-name = "1.315V CPU";
198 regulator-min-microvolt = <1050000>;
199 regulator-max-microvolt = <1350000>;
200 regulator-always-on;
201 regulator-boot-on;
202 };
203 sd2 {
204 regulator-name = "1.8V";
205 regulator-min-microvolt = <1800000>;
206 regulator-max-microvolt = <1800000>;
207 regulator-always-on;
208 regulator-boot-on;
209 };
210 sd4 {
211 regulator-name = "1.215V";
212 regulator-min-microvolt = <1215000>;
213 regulator-max-microvolt = <1235000>;
214 regulator-always-on;
215 regulator-boot-on;
216 };
217 ldo2 {
218 regulator-name = "2.8V CPU";
219 regulator-min-microvolt = <2800000>;
220 regulator-max-microvolt = <2800000>;
221 regulator-always-on;
222 regulator-boot-on;
223 };
224 ldo3 {
225 regulator-name = "3.0V CPU";
226 regulator-min-microvolt = <3000000>;
227 regulator-max-microvolt = <3000000>;
228 regulator-always-on;
229 regulator-boot-on;
230 };
231 ldo4 {
232 regulator-name = "2.8V";
233 regulator-min-microvolt = <2800000>;
234 regulator-max-microvolt = <2800000>;
235 regulator-always-on;
236 regulator-boot-on;
237 };
238 ldo5 {
239 regulator-name = "2.8V #2";
240 regulator-min-microvolt = <2800000>;
241 regulator-max-microvolt = <2800000>;
242 regulator-always-on;
243 regulator-boot-on;
244 };
245 ldo7 {
246 regulator-name = "1.15V CPU";
247 regulator-min-microvolt = <1150000>;
248 regulator-max-microvolt = <1150000>;
249 regulator-always-on;
250 regulator-boot-on;
251 };
252 ldo8 {
253 regulator-name = "1.15V CPU #2";
254 regulator-min-microvolt = <1150000>;
255 regulator-max-microvolt = <1150000>;
256 regulator-always-on;
257 regulator-boot-on;
258 };
259 };
260 };
261
262 ak4648: ak4648@12 {
263 #sound-dai-cells = <0>;
264 compatible = "asahi-kasei,ak4648";
265 reg = <0x12>;
266 };
267};
268
269&i2c3 {
270 pinctrl-0 = <&i2c3_pins>;
271 pinctrl-names = "default";
272 status = "okay";
273
274 pcf8575: gpio@20 {
275 compatible = "nxp,pcf8575";
276 reg = <0x20>;
277 interrupt-parent = <&irqpin2>;
278 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
279 gpio-controller;
280 #gpio-cells = <2>;
281 interrupt-controller;
282 #interrupt-cells = <2>;
283 };
284};
285
286&mmcif {
287 pinctrl-0 = <&mmcif_pins>;
288 pinctrl-names = "default";
289
290 bus-width = <8>;
291 vmmc-supply = <®_1p8v>;
292 status = "okay";
293};
294
295&pfc {
296 i2c3_pins: i2c3 {
297 renesas,groups = "i2c3_1";
298 renesas,function = "i2c3";
299 };
300
301 mmcif_pins: mmc {
302 mux {
303 renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0";
304 renesas,function = "mmc0";
305 };
306 cfg {
307 renesas,groups = "mmc0_data8_0";
308 renesas,pins = "PORT279";
309 bias-pull-up;
310 };
311 };
312
313 scifa4_pins: serial4 {
314 renesas,groups = "scifa4_data", "scifa4_ctrl";
315 renesas,function = "scifa4";
316 };
317
318 sdhi0_pins: sd0 {
319 renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp";
320 renesas,function = "sdhi0";
321 };
322
323 sdhi2_pins: sd2 {
324 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
325 renesas,function = "sdhi2";
326 };
327
328 fsia_pins: sounda {
329 renesas,groups = "fsia_mclk_in", "fsia_sclk_in",
330 "fsia_data_in", "fsia_data_out";
331 renesas,function = "fsia";
332 };
333};
334
335&scifa4 {
336 pinctrl-0 = <&scifa4_pins>;
337 pinctrl-names = "default";
338
339 status = "okay";
340};
341
342&sdhi0 {
343 pinctrl-0 = <&sdhi0_pins>;
344 pinctrl-names = "default";
345
346 vmmc-supply = <&vmmc_sdhi0>;
347 bus-width = <4>;
348 status = "okay";
349};
350
351&sdhi2 {
352 pinctrl-0 = <&sdhi2_pins>;
353 pinctrl-names = "default";
354
355 vmmc-supply = <&vmmc_sdhi2>;
356 bus-width = <4>;
357 broken-cd;
358 status = "okay";
359};
360
361&sh_fsi2 {
362 pinctrl-0 = <&fsia_pins>;
363 pinctrl-names = "default";
364
365 status = "okay";
366};