1/* 2 * Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de> 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation; either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 */ 14 15/dts-v1/; 16#include "rk3188.dtsi" 17 18/ { 19 model = "Radxa Rock"; 20 compatible = "radxa,rock", "rockchip,rk3188"; 21 22 memory { 23 reg = <0x60000000 0x80000000>; 24 }; 25 26 gpio-keys { 27 compatible = "gpio-keys"; 28 #address-cells = <1>; 29 #size-cells = <0>; 30 autorepeat; 31 32 button@0 { 33 gpios = <&gpio0 4 GPIO_ACTIVE_LOW>; 34 linux,code = <116>; 35 label = "GPIO Key Power"; 36 linux,input-type = <1>; 37 gpio-key,wakeup = <1>; 38 debounce-interval = <100>; 39 }; 40 }; 41 42 gpio-leds { 43 compatible = "gpio-leds"; 44 45 green { 46 label = "rock:green:user1"; 47 gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; 48 default-state = "off"; 49 }; 50 51 blue { 52 label = "rock:blue:user2"; 53 gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; 54 default-state = "off"; 55 }; 56 57 sleep { 58 label = "rock:red:power"; 59 gpios = <&gpio0 15 0>; 60 default-state = "off"; 61 }; 62 }; 63 64 ir_recv: gpio-ir-receiver { 65 compatible = "gpio-ir-receiver"; 66 gpios = <&gpio0 10 1>; 67 pinctrl-names = "default"; 68 pinctrl-0 = <&ir_recv_pin>; 69 }; 70 71 vcc_otg: usb-otg-regulator { 72 compatible = "regulator-fixed"; 73 enable-active-high; 74 gpio = <&gpio2 31 GPIO_ACTIVE_HIGH>; 75 pinctrl-names = "default"; 76 pinctrl-0 = <&otg_vbus_drv>; 77 regulator-name = "otg-vbus"; 78 regulator-min-microvolt = <5000000>; 79 regulator-max-microvolt = <5000000>; 80 regulator-always-on; 81 regulator-boot-on; 82 }; 83 84 vcc_sd0: sdmmc-regulator { 85 compatible = "regulator-fixed"; 86 regulator-name = "sdmmc-supply"; 87 regulator-min-microvolt = <3300000>; 88 regulator-max-microvolt = <3300000>; 89 gpio = <&gpio3 1 GPIO_ACTIVE_LOW>; 90 startup-delay-us = <100000>; 91 vin-supply = <&vcc_io>; 92 }; 93 94 vcc_host: usb-host-regulator { 95 compatible = "regulator-fixed"; 96 enable-active-high; 97 gpio = <&gpio0 3 GPIO_ACTIVE_HIGH>; 98 pinctrl-names = "default"; 99 pinctrl-0 = <&host_vbus_drv>; 100 regulator-name = "host-pwr"; 101 regulator-min-microvolt = <5000000>; 102 regulator-max-microvolt = <5000000>; 103 regulator-always-on; 104 regulator-boot-on; 105 }; 106 107 vsys: vsys-regulator { 108 compatible = "regulator-fixed"; 109 regulator-name = "vsys"; 110 regulator-min-microvolt = <5000000>; 111 regulator-max-microvolt = <5000000>; 112 regulator-boot-on; 113 }; 114}; 115 116&emac { 117 status = "okay"; 118 119 pinctrl-names = "default"; 120 pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&phy_int>; 121 122 phy = <&phy0>; 123 phy-supply = <&vcc_rmii>; 124 125 phy0: ethernet-phy@0 { 126 reg = <0>; 127 interrupt-parent = <&gpio3>; 128 interrupts = <26 IRQ_TYPE_LEVEL_LOW>; 129 }; 130}; 131 132&cpu0 { 133 cpu0-supply = <&vdd_arm>; 134}; 135 136&i2c1 { 137 status = "okay"; 138 clock-frequency = <400000>; 139 140 rtc@51 { 141 compatible = "haoyu,hym8563"; 142 reg = <0x51>; 143 interrupt-parent = <&gpio0>; 144 interrupts = <13 IRQ_TYPE_EDGE_FALLING>; 145 pinctrl-names = "default"; 146 pinctrl-0 = <&rtc_int>; 147 #clock-cells = <0>; 148 clock-output-names = "xin32k"; 149 }; 150 151 act8846: act8846@5a { 152 compatible = "active-semi,act8846"; 153 reg = <0x5a>; 154 status = "okay"; 155 156 pinctrl-names = "default"; 157 pinctrl-0 = <&act8846_dvs0_ctl>; 158 159 vp1-supply = <&vsys>; 160 vp2-supply = <&vsys>; 161 vp3-supply = <&vsys>; 162 vp4-supply = <&vsys>; 163 inl1-supply = <&vcc_io>; 164 inl2-supply = <&vsys>; 165 inl3-supply = <&vsys>; 166 167 regulators { 168 vcc_ddr: REG1 { 169 regulator-name = "VCC_DDR"; 170 regulator-min-microvolt = <1200000>; 171 regulator-max-microvolt = <1200000>; 172 regulator-always-on; 173 }; 174 175 vdd_log: REG2 { 176 regulator-name = "VDD_LOG"; 177 regulator-min-microvolt = <1000000>; 178 regulator-max-microvolt = <1000000>; 179 regulator-always-on; 180 }; 181 182 vdd_arm: REG3 { 183 regulator-name = "VDD_ARM"; 184 regulator-min-microvolt = <875000>; 185 regulator-max-microvolt = <1350000>; 186 regulator-always-on; 187 }; 188 189 vcc_io: REG4 { 190 regulator-name = "VCC_IO"; 191 regulator-min-microvolt = <3300000>; 192 regulator-max-microvolt = <3300000>; 193 regulator-always-on; 194 }; 195 196 vdd_10: REG5 { 197 regulator-name = "VDD_10"; 198 regulator-min-microvolt = <1000000>; 199 regulator-max-microvolt = <1000000>; 200 regulator-always-on; 201 }; 202 203 vdd_hdmi: REG6 { 204 regulator-name = "VDD_HDMI"; 205 regulator-min-microvolt = <2500000>; 206 regulator-max-microvolt = <2500000>; 207 regulator-always-on; 208 }; 209 210 vcc18: REG7 { 211 regulator-name = "VCC_18"; 212 regulator-min-microvolt = <1800000>; 213 regulator-max-microvolt = <1800000>; 214 regulator-always-on; 215 }; 216 217 vcca_33: REG8 { 218 regulator-name = "VCCA_33"; 219 regulator-min-microvolt = <3300000>; 220 regulator-max-microvolt = <3300000>; 221 regulator-always-on; 222 }; 223 224 vcc_rmii: REG9 { 225 regulator-name = "VCC_RMII"; 226 regulator-min-microvolt = <3300000>; 227 regulator-max-microvolt = <3300000>; 228 }; 229 230 vccio_wl: REG10 { 231 regulator-name = "VCCIO_WL"; 232 regulator-min-microvolt = <3300000>; 233 regulator-max-microvolt = <3300000>; 234 regulator-always-on; 235 }; 236 237 vcc_18: REG11 { 238 regulator-name = "VCC18_IO"; 239 regulator-min-microvolt = <1800000>; 240 regulator-max-microvolt = <1800000>; 241 regulator-always-on; 242 }; 243 244 vcc28: REG12 { 245 regulator-name = "VCC_28"; 246 regulator-min-microvolt = <2800000>; 247 regulator-max-microvolt = <2800000>; 248 regulator-always-on; 249 }; 250 }; 251 }; 252}; 253 254&mmc0 { 255 num-slots = <1>; 256 status = "okay"; 257 pinctrl-names = "default"; 258 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; 259 vmmc-supply = <&vcc_sd0>; 260 261 bus-width = <4>; 262 disable-wp; 263}; 264 265&pwm1 { 266 status = "okay"; 267}; 268 269&pwm2 { 270 status = "okay"; 271}; 272 273&pwm3 { 274 status = "okay"; 275}; 276 277&pinctrl { 278 pcfg_output_low: pcfg-output-low { 279 output-low; 280 }; 281 282 act8846 { 283 act8846_dvs0_ctl: act8846-dvs0-ctl { 284 rockchip,pins = <RK_GPIO3 27 RK_FUNC_GPIO &pcfg_output_low>; 285 }; 286 }; 287 288 hym8563 { 289 rtc_int: rtc-int { 290 rockchip,pins = <RK_GPIO0 0 RK_FUNC_GPIO &pcfg_pull_up>; 291 }; 292 }; 293 294 lan8720a { 295 phy_int: phy-int { 296 rockchip,pins = <RK_GPIO3 26 RK_FUNC_GPIO &pcfg_pull_up>; 297 }; 298 }; 299 300 ir-receiver { 301 ir_recv_pin: ir-recv-pin { 302 rockchip,pins = <RK_GPIO0 10 RK_FUNC_GPIO &pcfg_pull_none>; 303 }; 304 }; 305 306 usb { 307 host_vbus_drv: host-vbus-drv { 308 rockchip,pins = <0 3 RK_FUNC_GPIO &pcfg_pull_none>; 309 }; 310 otg_vbus_drv: otg-vbus-drv { 311 rockchip,pins = <2 31 RK_FUNC_GPIO &pcfg_pull_none>; 312 }; 313 }; 314}; 315 316&uart0 { 317 status = "okay"; 318}; 319 320&uart1 { 321 status = "okay"; 322}; 323 324&uart2 { 325 status = "okay"; 326}; 327 328&uart3 { 329 status = "okay"; 330}; 331 332&usb_host { 333 status = "okay"; 334}; 335 336&usb_otg { 337 status = "okay"; 338}; 339 340&wdt { 341 status = "okay"; 342}; 343