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