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 44 45 46 47 48 49
	};

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

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

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

68
	vmmc_sdhi0: regulator@2 {
69
		compatible = "regulator-fixed";
70 71 72 73 74 75 76 77
		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 {
78
		compatible = "regulator-fixed";
79 80 81 82 83 84 85
		regulator-name = "SDHI2 Vcc";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&pfc 14 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

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

	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>;
		};
	};
114 115 116 117 118 119

	gpio-keys {
		compatible = "gpio-keys";

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

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

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

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

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

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

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

	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>;
		};
	};
174 175
};

176
&i2c0 {
177
	status = "okay";
178 179 180 181 182 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
	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;
			};
		};
	};
248 249 250 251 252 253

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

256 257 258
&i2c3 {
	pinctrl-0 = <&i2c3_pins>;
	pinctrl-names = "default";
259
	status = "okay";
260 261 262 263 264 265 266 267 268 269 270

	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>;
	};
271 272
};

273
&mmcif {
274 275 276
	pinctrl-0 = <&mmcif_pins>;
	pinctrl-names = "default";

277 278
	bus-width = <8>;
	vmmc-supply = <&reg_1p8v>;
279 280 281
	status = "okay";
};

282 283 284 285 286 287
&pfc {
	i2c3_pins: i2c3 {
		renesas,groups = "i2c3_1";
		renesas,function = "i2c3";
	};

288
	mmcif_pins: mmc {
289 290 291 292 293 294 295 296 297 298 299
		mux {
			renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0";
			renesas,function = "mmc0";
		};
		cfg {
			renesas,groups = "mmc0_data8_0";
			renesas,pins = "PORT279";
			bias-pull-up;
		};
	};

300
	scifa4_pins: serial4 {
301 302 303 304
		renesas,groups = "scifa4_data", "scifa4_ctrl";
		renesas,function = "scifa4";
	};

305
	sdhi0_pins: sd0 {
306 307 308 309
		renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp";
		renesas,function = "sdhi0";
	};

310
	sdhi2_pins: sd2 {
311 312 313
		renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
		renesas,function = "sdhi2";
	};
314 315 316 317 318 319

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

322 323 324 325 326 327 328
&scifa4 {
	pinctrl-0 = <&scifa4_pins>;
	pinctrl-names = "default";

	status = "okay";
};

329
&sdhi0 {
330 331 332
	pinctrl-0 = <&sdhi0_pins>;
	pinctrl-names = "default";

333
	vmmc-supply = <&vmmc_sdhi0>;
334 335 336 337 338
	bus-width = <4>;
	status = "okay";
};

&sdhi2 {
339 340 341
	pinctrl-0 = <&sdhi2_pins>;
	pinctrl-names = "default";

342
	vmmc-supply = <&vmmc_sdhi2>;
343 344 345
	bus-width = <4>;
	broken-cd;
	status = "okay";
346
};
347 348 349 350 351 352 353

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

	status = "okay";
};