sh73a0-kzm9g-reference.dts 7.0 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14
/*
 * Device Tree Source for the KZM-A9-GT board
 *
 * Copyright (C) 2012 Horms Solutions Ltd.
 *
 * Based on sh73a0-kzm9g.dts
 * Copyright (C) 2012 Renesas Solutions Corp.
 *
 * This file is licensed under the terms of the GNU General Public License
 * version 2.  This program is licensed "as is" without any warranty of any
 * kind, whether express or implied.
 */

/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 22 23

/ {
	model = "KZM-A9-GT";
	compatible = "renesas,kzm9g-reference", "renesas,sh73a0";

24 25 26 27
	aliases {
		serial4 = &scifa4;
	};

28 29 30 31 32 33 34 35 36 37 38 39 40
	cpus {
		cpu@0 {
			cpu0-supply = <&vdd_dvfs>;
			operating-points = <
				/* kHz  uV */
				1196000 1315000
				 598000 1175000
				 398667 1065000
			>;
			voltage-tolerance = <1>; /* 1% */
		};
	};

41
	chosen {
42
		bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel rw";
43
		stdout-path = &scifa4;
44 45 46 47 48 49 50
	};

	memory {
		device_type = "memory";
		reg = <0x41000000 0x1e800000>;
	};

51
	reg_1p8v: regulator@0 {
52 53 54 55
		compatible = "regulator-fixed";
		regulator-name = "fixed-1.8V";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
56 57 58 59
		regulator-always-on;
		regulator-boot-on;
	};

60
	reg_3p3v: regulator@1 {
61
		compatible = "regulator-fixed";
62 63 64
		regulator-name = "fixed-3.3V";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
65 66 67
		regulator-always-on;
		regulator-boot-on;
	};
68

69
	vmmc_sdhi0: regulator@2 {
70
		compatible = "regulator-fixed";
71 72 73 74 75 76 77 78
		regulator-name = "SDHI0 Vcc";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&pfc 15 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

	vmmc_sdhi2: regulator@3 {
79
		compatible = "regulator-fixed";
80 81 82 83 84 85 86
		regulator-name = "SDHI2 Vcc";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&pfc 14 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

87 88 89 90 91
	lan9220@10000000 {
		compatible = "smsc,lan9220", "smsc,lan9115";
		reg = <0x10000000 0x100>;
		phy-mode = "mii";
		interrupt-parent = <&irqpin0>;
92
		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
93 94 95 96 97 98
		reg-io-width = <4>;
		smsc,irq-push-pull;
		smsc,save-mac-address;
		vddvario-supply = <&reg_1p8v>;
		vdd33a-supply = <&reg_3p3v>;
	};
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

	leds {
		compatible = "gpio-leds";
		led1 {
			gpios = <&pfc 20 GPIO_ACTIVE_LOW>;
		};
		led2 {
			gpios = <&pfc 21 GPIO_ACTIVE_LOW>;
		};
		led3 {
			gpios = <&pfc 22 GPIO_ACTIVE_LOW>;
		};
		led4 {
			gpios = <&pfc 23 GPIO_ACTIVE_LOW>;
		};
	};
115

116
	keyboard {
117 118 119 120
		compatible = "gpio-keys";

		back-key {
			gpios = <&pcf8575 8 GPIO_ACTIVE_LOW>;
121
			linux,code = <KEY_BACK>;
122 123 124 125 126
			label = "SW3";
		};

		right-key {
			gpios = <&pcf8575 9 GPIO_ACTIVE_LOW>;
127
			linux,code = <KEY_RIGHT>;
128 129 130 131 132
			label = "SW2-R";
		};

		left-key {
			gpios = <&pcf8575 10 GPIO_ACTIVE_LOW>;
133
			linux,code = <KEY_LEFT>;
134 135 136 137 138
			label = "SW2-L";
		};

		enter-key {
			gpios = <&pcf8575 11 GPIO_ACTIVE_LOW>;
139
			linux,code = <KEY_ENTER>;
140 141 142 143 144
			label = "SW2-P";
		};

		up-key {
			gpios = <&pcf8575 12 GPIO_ACTIVE_LOW>;
145
			linux,code = <KEY_UP>;
146 147 148 149 150
			label = "SW2-U";
		};

		down-key {
			gpios = <&pcf8575 13 GPIO_ACTIVE_LOW>;
151
			linux,code = <KEY_DOWN>;
152 153 154 155 156
			label = "SW2-D";
		};

		home-key {
			gpios = <&pcf8575 14 GPIO_ACTIVE_LOW>;
157
			linux,code = <KEY_HOME>;
158 159 160
			label = "SW1";
		};
	};
161 162 163 164 165 166 167 168 169 170 171 172 173 174

	sound {
		compatible = "simple-audio-card";
		simple-audio-card,format = "left_j";
		simple-audio-card,cpu {
			sound-dai = <&sh_fsi2 0>;
		};
		simple-audio-card,codec {
			sound-dai = <&ak4648>;
			bitclock-master;
			frame-master;
			system-clock-frequency = <11289600>;
		};
	};
175 176
};

177 178 179 180
&cmt1 {
	status = "ok";
};

181
&i2c0 {
182
	status = "okay";
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252
	as3711@40 {
		compatible = "ams,as3711";
		reg = <0x40>;

		regulators {
			vdd_dvfs: sd1 {
				regulator-name = "1.315V CPU";
				regulator-min-microvolt = <1050000>;
				regulator-max-microvolt = <1350000>;
				regulator-always-on;
				regulator-boot-on;
			};
			sd2 {
				regulator-name = "1.8V";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
				regulator-boot-on;
			};
			sd4 {
				regulator-name = "1.215V";
				regulator-min-microvolt = <1215000>;
				regulator-max-microvolt = <1235000>;
				regulator-always-on;
				regulator-boot-on;
			};
			ldo2 {
				regulator-name = "2.8V CPU";
				regulator-min-microvolt = <2800000>;
				regulator-max-microvolt = <2800000>;
				regulator-always-on;
				regulator-boot-on;
			};
			ldo3 {
				regulator-name = "3.0V CPU";
				regulator-min-microvolt = <3000000>;
				regulator-max-microvolt = <3000000>;
				regulator-always-on;
				regulator-boot-on;
			};
			ldo4 {
				regulator-name = "2.8V";
				regulator-min-microvolt = <2800000>;
				regulator-max-microvolt = <2800000>;
				regulator-always-on;
				regulator-boot-on;
			};
			ldo5 {
				regulator-name = "2.8V #2";
				regulator-min-microvolt = <2800000>;
				regulator-max-microvolt = <2800000>;
				regulator-always-on;
				regulator-boot-on;
			};
			ldo7 {
				regulator-name = "1.15V CPU";
				regulator-min-microvolt = <1150000>;
				regulator-max-microvolt = <1150000>;
				regulator-always-on;
				regulator-boot-on;
			};
			ldo8 {
				regulator-name = "1.15V CPU #2";
				regulator-min-microvolt = <1150000>;
				regulator-max-microvolt = <1150000>;
				regulator-always-on;
				regulator-boot-on;
			};
		};
	};
253

254
	ak4648: ak4648@12 {
255 256 257 258
		#sound-dai-cells = <0>;
		compatible = "asahi-kasei,ak4648";
		reg = <0x12>;
	};
259 260
};

261 262 263
&i2c3 {
	pinctrl-0 = <&i2c3_pins>;
	pinctrl-names = "default";
264
	status = "okay";
265 266 267 268 269 270 271 272 273 274 275

	pcf8575: gpio@20 {
		compatible = "nxp,pcf8575";
		reg = <0x20>;
		interrupt-parent = <&irqpin2>;
		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <2>;
	};
276 277
};

278
&mmcif {
279 280 281
	pinctrl-0 = <&mmcif_pins>;
	pinctrl-names = "default";

282 283
	bus-width = <8>;
	vmmc-supply = <&reg_1p8v>;
284 285 286
	status = "okay";
};

287 288 289 290 291 292
&pfc {
	i2c3_pins: i2c3 {
		renesas,groups = "i2c3_1";
		renesas,function = "i2c3";
	};

293
	mmcif_pins: mmc {
294 295 296 297 298 299 300 301 302 303 304
		mux {
			renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0";
			renesas,function = "mmc0";
		};
		cfg {
			renesas,groups = "mmc0_data8_0";
			renesas,pins = "PORT279";
			bias-pull-up;
		};
	};

305
	scifa4_pins: serial4 {
306 307 308 309
		renesas,groups = "scifa4_data", "scifa4_ctrl";
		renesas,function = "scifa4";
	};

310
	sdhi0_pins: sd0 {
311 312 313 314
		renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp";
		renesas,function = "sdhi0";
	};

315
	sdhi2_pins: sd2 {
316 317 318
		renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
		renesas,function = "sdhi2";
	};
319 320 321 322 323 324

	fsia_pins: sounda {
		renesas,groups = "fsia_mclk_in", "fsia_sclk_in",
				 "fsia_data_in", "fsia_data_out";
		renesas,function = "fsia";
	};
325 326
};

327 328 329 330 331 332 333
&scifa4 {
	pinctrl-0 = <&scifa4_pins>;
	pinctrl-names = "default";

	status = "okay";
};

334
&sdhi0 {
335 336 337
	pinctrl-0 = <&sdhi0_pins>;
	pinctrl-names = "default";

338
	vmmc-supply = <&vmmc_sdhi0>;
339 340 341 342 343
	bus-width = <4>;
	status = "okay";
};

&sdhi2 {
344 345 346
	pinctrl-0 = <&sdhi2_pins>;
	pinctrl-names = "default";

347
	vmmc-supply = <&vmmc_sdhi2>;
348 349 350
	bus-width = <4>;
	broken-cd;
	status = "okay";
351
};
352 353 354 355 356 357 358

&sh_fsi2 {
	pinctrl-0 = <&fsia_pins>;
	pinctrl-names = "default";

	status = "okay";
};