1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2016 Andy Yan <andy.yan@rock-chips.com> 4 */ 5 6/dts-v1/; 7#include <dt-bindings/input/input.h> 8#include "rk3188.dtsi" 9 10/ { 11 model = "Rockchip PX3-EVB"; 12 compatible = "rockchip,px3-evb", "rockchip,px3", "rockchip,rk3188"; 13 14 chosen { 15 stdout-path = "serial2:115200n8"; 16 }; 17 18 memory@60000000 { 19 reg = <0x60000000 0x80000000>; 20 device_type = "memory"; 21 }; 22 23 gpio-keys { 24 compatible = "gpio-keys"; 25 autorepeat; 26 27 power { 28 gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 29 linux,code = <KEY_POWER>; 30 label = "GPIO Key Power"; 31 linux,input-type = <1>; 32 wakeup-source; 33 debounce-interval = <100>; 34 }; 35 }; 36 37 vcc_sys: vsys-regulator { 38 compatible = "regulator-fixed"; 39 regulator-name = "vsys"; 40 regulator-min-microvolt = <5000000>; 41 regulator-max-microvolt = <5000000>; 42 regulator-boot-on; 43 }; 44}; 45 46&cpu0 { 47 cpu-supply = <&vdd_cpu>; 48}; 49 50&cpu1 { 51 cpu-supply = <&vdd_cpu>; 52}; 53 54&cpu2 { 55 cpu-supply = <&vdd_cpu>; 56}; 57 58&cpu3 { 59 cpu-supply = <&vdd_cpu>; 60}; 61 62&emmc { 63 bus-width = <8>; 64 cap-mmc-highspeed; 65 non-removable; 66 pinctrl-names = "default"; 67 pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_rst>; 68 status = "okay"; 69}; 70 71&i2c0 { 72 status = "okay"; 73 74 accelerometer@18 { 75 compatible = "bosch,bma250"; 76 reg = <0x18>; 77 interrupt-parent = <&gpio0>; 78 interrupts = <RK_PB7 IRQ_TYPE_LEVEL_LOW>; 79 }; 80}; 81 82&i2c1 { 83 status = "okay"; 84 clock-frequency = <400000>; 85 86 rk808: pmic@1c { 87 compatible = "rockchip,rk818"; 88 reg = <0x1c>; 89 interrupt-parent = <&gpio0>; 90 interrupts = <RK_PB3 IRQ_TYPE_LEVEL_LOW>; 91 rockchip,system-power-controller; 92 wakeup-source; 93 #clock-cells = <1>; 94 clock-output-names = "xin32k", "rk808-clkout2"; 95 96 vcc1-supply = <&vcc_sys>; 97 vcc2-supply = <&vcc_sys>; 98 vcc3-supply = <&vcc_sys>; 99 vcc4-supply = <&vcc_sys>; 100 vcc6-supply = <&vcc_sys>; 101 vcc7-supply = <&vcc_sys>; 102 vcc8-supply = <&vcc_io>; 103 vcc9-supply = <&vcc_io>; 104 105 regulators { 106 vdd_cpu: DCDC_REG1 { 107 regulator-always-on; 108 regulator-boot-on; 109 regulator-min-microvolt = <750000>; 110 regulator-max-microvolt = <1350000>; 111 regulator-name = "vdd_arm"; 112 regulator-state-mem { 113 regulator-off-in-suspend; 114 }; 115 }; 116 117 vdd_gpu: DCDC_REG2 { 118 regulator-always-on; 119 regulator-boot-on; 120 regulator-min-microvolt = <850000>; 121 regulator-max-microvolt = <1250000>; 122 regulator-name = "vdd_gpu"; 123 regulator-state-mem { 124 regulator-on-in-suspend; 125 regulator-suspend-microvolt = <1000000>; 126 }; 127 }; 128 129 vcc_ddr: DCDC_REG3 { 130 regulator-always-on; 131 regulator-boot-on; 132 regulator-name = "vcc_ddr"; 133 regulator-state-mem { 134 regulator-on-in-suspend; 135 }; 136 }; 137 138 vcc_io: DCDC_REG4 { 139 regulator-always-on; 140 regulator-boot-on; 141 regulator-min-microvolt = <3300000>; 142 regulator-max-microvolt = <3300000>; 143 regulator-name = "vcc_io"; 144 regulator-state-mem { 145 regulator-on-in-suspend; 146 regulator-suspend-microvolt = <3300000>; 147 }; 148 }; 149 150 vcc_cif: LDO_REG1 { 151 regulator-min-microvolt = <3300000>; 152 regulator-max-microvolt = <3300000>; 153 regulator-name = "vcc_cif"; 154 }; 155 156 vcc_jetta33: LDO_REG2 { 157 regulator-always-on; 158 regulator-boot-on; 159 regulator-min-microvolt = <3300000>; 160 regulator-max-microvolt = <3300000>; 161 regulator-name = "vcc_jetta33"; 162 }; 163 164 vdd_10: LDO_REG3 { 165 regulator-always-on; 166 regulator-boot-on; 167 regulator-min-microvolt = <1000000>; 168 regulator-max-microvolt = <1000000>; 169 regulator-name = "vdd_10"; 170 regulator-state-mem { 171 regulator-on-in-suspend; 172 regulator-suspend-microvolt = <1000000>; 173 }; 174 }; 175 176 lvds_12: LDO_REG4 { 177 regulator-min-microvolt = <1800000>; 178 regulator-max-microvolt = <1800000>; 179 regulator-name = "lvds_12"; 180 }; 181 182 lvds_25: LDO_REG5 { 183 regulator-min-microvolt = <1800000>; 184 regulator-max-microvolt = <3300000>; 185 regulator-name = "lvds_25"; 186 }; 187 188 cif_18: LDO_REG6 { 189 regulator-min-microvolt = <1000000>; 190 regulator-max-microvolt = <1000000>; 191 regulator-name = "cif_18"; 192 }; 193 194 vcc_sd: LDO_REG7 { 195 regulator-min-microvolt = <1800000>; 196 regulator-max-microvolt = <3300000>; 197 regulator-name = "vcc_sd"; 198 regulator-state-mem { 199 regulator-on-in-suspend; 200 regulator-suspend-microvolt = <3300000>; 201 }; 202 }; 203 204 wl_18: LDO_REG8 { 205 regulator-min-microvolt = <1800000>; 206 regulator-max-microvolt = <3300000>; 207 regulator-name = "wl_18"; 208 }; 209 210 lcd_33: SWITCH_REG1 { 211 regulator-name = "lcd_33"; 212 }; 213 }; 214 }; 215 216}; 217 218&i2c2 { 219 gsl1680: touchscreen@40 { 220 compatible = "silead,gsl1680"; 221 reg = <0x40>; 222 interrupt-parent = <&gpio1>; 223 interrupts = <RK_PB7 IRQ_TYPE_EDGE_FALLING>; 224 power-gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>; 225 touchscreen-size-x = <800>; 226 touchscreen-size-y = <1280>; 227 silead,max-fingers = <5>; 228 }; 229}; 230 231&mmc0 { 232 status = "okay"; 233 pinctrl-names = "default"; 234 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; 235 vmmc-supply = <&vcc_sd>; 236 237 bus-width = <4>; 238 cap-mmc-highspeed; 239 cap-sd-highspeed; 240 disable-wp; 241}; 242 243&pinctrl { 244 pcfg_output_low: pcfg-output-low { 245 output-low; 246 }; 247 248 usb { 249 host_vbus_drv: host-vbus-drv { 250 rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 251 }; 252 otg_vbus_drv: otg-vbus-drv { 253 rockchip,pins = <2 RK_PD7 RK_FUNC_GPIO &pcfg_pull_none>; 254 }; 255 }; 256}; 257 258&pwm1 { 259 status = "okay"; 260}; 261 262&pwm2 { 263 status = "okay"; 264}; 265 266&pwm3 { 267 status = "okay"; 268}; 269 270&uart0 { 271 status = "okay"; 272}; 273 274&uart1 { 275 status = "okay"; 276}; 277 278&uart2 { 279 status = "okay"; 280}; 281 282&uart3 { 283 status = "okay"; 284}; 285 286&usbphy { 287 status = "okay"; 288}; 289 290&usb_host { 291 status = "okay"; 292}; 293 294&usb_otg { 295 status = "okay"; 296}; 297 298&wdt { 299 status = "okay"; 300}; 301