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", "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 = <0x40000000 0x20000000>; 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 leds { 88 compatible = "gpio-leds"; 89 led1 { 90 gpios = <&pfc 20 GPIO_ACTIVE_LOW>; 91 label = "LED1"; 92 }; 93 led2 { 94 gpios = <&pfc 21 GPIO_ACTIVE_LOW>; 95 label = "LED2"; 96 }; 97 led3 { 98 gpios = <&pfc 22 GPIO_ACTIVE_LOW>; 99 label = "LED3"; 100 }; 101 led4 { 102 gpios = <&pfc 23 GPIO_ACTIVE_LOW>; 103 label = "LED4"; 104 }; 105 }; 106 107 keyboard { 108 compatible = "gpio-keys"; 109 110 back-key { 111 gpios = <&pcf8575 8 GPIO_ACTIVE_LOW>; 112 linux,code = <KEY_BACK>; 113 label = "SW3"; 114 }; 115 116 right-key { 117 gpios = <&pcf8575 9 GPIO_ACTIVE_LOW>; 118 linux,code = <KEY_RIGHT>; 119 label = "SW2-R"; 120 }; 121 122 left-key { 123 gpios = <&pcf8575 10 GPIO_ACTIVE_LOW>; 124 linux,code = <KEY_LEFT>; 125 label = "SW2-L"; 126 }; 127 128 enter-key { 129 gpios = <&pcf8575 11 GPIO_ACTIVE_LOW>; 130 linux,code = <KEY_ENTER>; 131 label = "SW2-P"; 132 }; 133 134 up-key { 135 gpios = <&pcf8575 12 GPIO_ACTIVE_LOW>; 136 linux,code = <KEY_UP>; 137 label = "SW2-U"; 138 }; 139 140 down-key { 141 gpios = <&pcf8575 13 GPIO_ACTIVE_LOW>; 142 linux,code = <KEY_DOWN>; 143 label = "SW2-D"; 144 }; 145 146 home-key { 147 gpios = <&pcf8575 14 GPIO_ACTIVE_LOW>; 148 linux,code = <KEY_HOME>; 149 label = "SW1"; 150 gpio-key,wakeup; 151 }; 152 }; 153 154 sound { 155 compatible = "simple-audio-card"; 156 simple-audio-card,format = "left_j"; 157 simple-audio-card,cpu { 158 sound-dai = <&sh_fsi2 0>; 159 }; 160 simple-audio-card,codec { 161 sound-dai = <&ak4648>; 162 bitclock-master; 163 frame-master; 164 system-clock-frequency = <11289600>; 165 }; 166 }; 167}; 168 169&bsc { 170 ethernet@10000000 { 171 compatible = "smsc,lan9220", "smsc,lan9115"; 172 reg = <0x10000000 0x100>; 173 phy-mode = "mii"; 174 interrupt-parent = <&irqpin0>; 175 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 176 reg-io-width = <4>; 177 smsc,irq-push-pull; 178 smsc,save-mac-address; 179 vddvario-supply = <®_1p8v>; 180 vdd33a-supply = <®_3p3v>; 181 }; 182}; 183 184&cmt1 { 185 status = "okay"; 186}; 187 188&extal2_clk { 189 clock-frequency = <48000000>; 190}; 191 192&i2c0 { 193 status = "okay"; 194 195 compass@c { 196 compatible = "asahi-kasei,ak8975"; 197 reg = <0x0c>; 198 interrupt-parent = <&irqpin3>; 199 interrupts = <4 IRQ_TYPE_EDGE_FALLING>; 200 }; 201 202 ak4648: codec@12 { 203 compatible = "asahi-kasei,ak4648"; 204 reg = <0x12>; 205 #sound-dai-cells = <0>; 206 }; 207 208 accelerometer@1d { 209 compatible = "adi,adxl345"; 210 reg = <0x1d>; 211 interrupt-parent = <&irqpin3>; 212 interrupts = <2 IRQ_TYPE_LEVEL_HIGH>, 213 <3 IRQ_TYPE_LEVEL_HIGH>; 214 }; 215 216 rtc@32 { 217 compatible = "ricoh,r2025sd"; 218 reg = <0x32>; 219 }; 220 221 as3711@40 { 222 compatible = "ams,as3711"; 223 reg = <0x40>; 224 225 regulators { 226 vdd_dvfs: sd1 { 227 regulator-name = "1.315V CPU"; 228 regulator-min-microvolt = <1050000>; 229 regulator-max-microvolt = <1350000>; 230 regulator-always-on; 231 regulator-boot-on; 232 }; 233 sd2 { 234 regulator-name = "1.8V"; 235 regulator-min-microvolt = <1800000>; 236 regulator-max-microvolt = <1800000>; 237 regulator-always-on; 238 regulator-boot-on; 239 }; 240 sd4 { 241 regulator-name = "1.215V"; 242 regulator-min-microvolt = <1215000>; 243 regulator-max-microvolt = <1235000>; 244 regulator-always-on; 245 regulator-boot-on; 246 }; 247 ldo2 { 248 regulator-name = "2.8V CPU"; 249 regulator-min-microvolt = <2800000>; 250 regulator-max-microvolt = <2800000>; 251 regulator-always-on; 252 regulator-boot-on; 253 }; 254 ldo3 { 255 regulator-name = "3.0V CPU"; 256 regulator-min-microvolt = <3000000>; 257 regulator-max-microvolt = <3000000>; 258 regulator-always-on; 259 regulator-boot-on; 260 }; 261 ldo4 { 262 regulator-name = "2.8V"; 263 regulator-min-microvolt = <2800000>; 264 regulator-max-microvolt = <2800000>; 265 regulator-always-on; 266 regulator-boot-on; 267 }; 268 ldo5 { 269 regulator-name = "2.8V #2"; 270 regulator-min-microvolt = <2800000>; 271 regulator-max-microvolt = <2800000>; 272 regulator-always-on; 273 regulator-boot-on; 274 }; 275 ldo7 { 276 regulator-name = "1.15V CPU"; 277 regulator-min-microvolt = <1150000>; 278 regulator-max-microvolt = <1150000>; 279 regulator-always-on; 280 regulator-boot-on; 281 }; 282 ldo8 { 283 regulator-name = "1.15V CPU #2"; 284 regulator-min-microvolt = <1150000>; 285 regulator-max-microvolt = <1150000>; 286 regulator-always-on; 287 regulator-boot-on; 288 }; 289 }; 290 }; 291}; 292 293&i2c1 { 294 status = "okay"; 295 296 touchscreen@55 { 297 compatible = "sitronix,st1232"; 298 reg = <0x55>; 299 interrupt-parent = <&irqpin1>; 300 interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 301 }; 302}; 303 304&i2c3 { 305 pinctrl-0 = <&i2c3_pins>; 306 pinctrl-names = "default"; 307 status = "okay"; 308 309 pcf8575: gpio@20 { 310 compatible = "nxp,pcf8575"; 311 reg = <0x20>; 312 interrupt-parent = <&irqpin2>; 313 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 314 gpio-controller; 315 #gpio-cells = <2>; 316 interrupt-controller; 317 #interrupt-cells = <2>; 318 }; 319}; 320 321&mmcif { 322 pinctrl-0 = <&mmcif_pins>; 323 pinctrl-names = "default"; 324 325 bus-width = <8>; 326 vmmc-supply = <®_1p8v>; 327 status = "okay"; 328}; 329 330&pfc { 331 i2c3_pins: i2c3 { 332 renesas,groups = "i2c3_1"; 333 renesas,function = "i2c3"; 334 }; 335 336 mmcif_pins: mmc { 337 mux { 338 renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0"; 339 renesas,function = "mmc0"; 340 }; 341 cfg { 342 renesas,groups = "mmc0_data8_0"; 343 renesas,pins = "PORT279"; 344 bias-pull-up; 345 }; 346 }; 347 348 scifa4_pins: serial4 { 349 renesas,groups = "scifa4_data", "scifa4_ctrl"; 350 renesas,function = "scifa4"; 351 }; 352 353 sdhi0_pins: sd0 { 354 renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp"; 355 renesas,function = "sdhi0"; 356 }; 357 358 sdhi2_pins: sd2 { 359 renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; 360 renesas,function = "sdhi2"; 361 }; 362 363 fsia_pins: sounda { 364 renesas,groups = "fsia_mclk_in", "fsia_sclk_in", 365 "fsia_data_in", "fsia_data_out"; 366 renesas,function = "fsia"; 367 }; 368}; 369 370&scifa4 { 371 pinctrl-0 = <&scifa4_pins>; 372 pinctrl-names = "default"; 373 374 status = "okay"; 375}; 376 377&sdhi0 { 378 pinctrl-0 = <&sdhi0_pins>; 379 pinctrl-names = "default"; 380 381 vmmc-supply = <&vmmc_sdhi0>; 382 bus-width = <4>; 383 status = "okay"; 384}; 385 386&sdhi2 { 387 pinctrl-0 = <&sdhi2_pins>; 388 pinctrl-names = "default"; 389 390 vmmc-supply = <&vmmc_sdhi2>; 391 bus-width = <4>; 392 broken-cd; 393 status = "okay"; 394}; 395 396&sh_fsi2 { 397 pinctrl-0 = <&fsia_pins>; 398 pinctrl-names = "default"; 399 400 status = "okay"; 401}; 402