14ee99cebSKlaus Goger// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 276c923bbSAndy Yan/* 376c923bbSAndy Yan * Copyright (c) 2016 Fuzhou Rockchip Electronics Co., Ltd 476c923bbSAndy Yan */ 576c923bbSAndy Yan 676c923bbSAndy Yan/dts-v1/; 776c923bbSAndy Yan#include "rk3368.dtsi" 876c923bbSAndy Yan#include <dt-bindings/input/input.h> 976c923bbSAndy Yan 1076c923bbSAndy Yan/ { 1176c923bbSAndy Yan model = "Rockchip PX5 EVB"; 1276c923bbSAndy Yan compatible = "rockchip,px5-evb", "rockchip,px5", "rockchip,rk3368"; 1376c923bbSAndy Yan 14751a78a8SHeiko Stuebner aliases { 15751a78a8SHeiko Stuebner mmc0 = &sdmmc; 16751a78a8SHeiko Stuebner mmc1 = &emmc; 17751a78a8SHeiko Stuebner }; 18751a78a8SHeiko Stuebner 1976c923bbSAndy Yan chosen { 2076c923bbSAndy Yan stdout-path = "serial4:115200n8"; 2176c923bbSAndy Yan }; 2276c923bbSAndy Yan 2376c923bbSAndy Yan memory@0 { 242f513bd9SAndy Yan reg = <0x0 0x0 0x0 0x40000000>; 2576c923bbSAndy Yan device_type = "memory"; 2676c923bbSAndy Yan }; 2776c923bbSAndy Yan 2876c923bbSAndy Yan keys: gpio-keys { 2976c923bbSAndy Yan compatible = "gpio-keys"; 3076c923bbSAndy Yan pinctrl-names = "default"; 3176c923bbSAndy Yan pinctrl-0 = <&pwr_key>; 3276c923bbSAndy Yan 33*517ed0ffSKrzysztof Kozlowski key-power { 344eb45558SAndy Yan gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>; 3576c923bbSAndy Yan label = "GPIO Power"; 3676c923bbSAndy Yan linux,code = <KEY_POWER>; 3776c923bbSAndy Yan wakeup-source; 3876c923bbSAndy Yan }; 3976c923bbSAndy Yan }; 4076c923bbSAndy Yan 4176c923bbSAndy Yan vcc_sys: vcc-sys-regulator { 4276c923bbSAndy Yan compatible = "regulator-fixed"; 4376c923bbSAndy Yan regulator-name = "vcc_sys"; 4476c923bbSAndy Yan regulator-min-microvolt = <5000000>; 4576c923bbSAndy Yan regulator-max-microvolt = <5000000>; 4676c923bbSAndy Yan regulator-always-on; 4776c923bbSAndy Yan regulator-boot-on; 4876c923bbSAndy Yan }; 4976c923bbSAndy Yan}; 5076c923bbSAndy Yan 5176c923bbSAndy Yan&emmc { 5276c923bbSAndy Yan status = "okay"; 5376c923bbSAndy Yan bus-width = <8>; 5476c923bbSAndy Yan cap-mmc-highspeed; 5576c923bbSAndy Yan clock-frequency = <150000000>; 56674c81cfSShawn Lin mmc-hs200-1_8v; 57674c81cfSShawn Lin no-sdio; 58674c81cfSShawn Lin no-sd; 5976c923bbSAndy Yan non-removable; 6076c923bbSAndy Yan pinctrl-names = "default"; 6176c923bbSAndy Yan pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_bus8>; 6276c923bbSAndy Yan vmmc-supply = <&vcc_io>; 6376c923bbSAndy Yan vqmmc-supply = <&vcc18_flash>; 6476c923bbSAndy Yan}; 6576c923bbSAndy Yan 6676c923bbSAndy Yan&i2c0 { 6776c923bbSAndy Yan status = "okay"; 6876c923bbSAndy Yan 6976c923bbSAndy Yan rk808: pmic@1b { 7076c923bbSAndy Yan compatible = "rockchip,rk808"; 7176c923bbSAndy Yan reg = <0x1b>; 7276c923bbSAndy Yan interrupt-parent = <&gpio0>; 734eb45558SAndy Yan interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>; 7476c923bbSAndy Yan pinctrl-names = "default"; 7576c923bbSAndy Yan pinctrl-0 = <&pmic_int>, <&pmic_sleep>; 7676c923bbSAndy Yan rockchip,system-power-controller; 7776c923bbSAndy Yan vcc1-supply = <&vcc_sys>; 7876c923bbSAndy Yan vcc2-supply = <&vcc_sys>; 7976c923bbSAndy Yan vcc3-supply = <&vcc_sys>; 8076c923bbSAndy Yan vcc4-supply = <&vcc_sys>; 8176c923bbSAndy Yan vcc6-supply = <&vcc_sys>; 8276c923bbSAndy Yan vcc7-supply = <&vcc_sys>; 8376c923bbSAndy Yan vcc8-supply = <&vcc_io>; 8476c923bbSAndy Yan vcc9-supply = <&vcc_sys>; 8576c923bbSAndy Yan vcc10-supply = <&vcc_sys>; 8676c923bbSAndy Yan vcc11-supply = <&vcc_sys>; 8776c923bbSAndy Yan vcc12-supply = <&vcc_io>; 8876c923bbSAndy Yan clock-output-names = "xin32k", "rk808-clkout2"; 8976c923bbSAndy Yan #clock-cells = <1>; 9076c923bbSAndy Yan 9176c923bbSAndy Yan regulators { 9276c923bbSAndy Yan vdd_cpu: DCDC_REG1 { 9376c923bbSAndy Yan regulator-always-on; 9476c923bbSAndy Yan regulator-boot-on; 9576c923bbSAndy Yan regulator-min-microvolt = <700000>; 9676c923bbSAndy Yan regulator-max-microvolt = <1500000>; 9776c923bbSAndy Yan regulator-name = "vdd_cpu"; 9876c923bbSAndy Yan }; 9976c923bbSAndy Yan 10076c923bbSAndy Yan vdd_log: DCDC_REG2 { 10176c923bbSAndy Yan regulator-always-on; 10276c923bbSAndy Yan regulator-boot-on; 10376c923bbSAndy Yan regulator-min-microvolt = <700000>; 10476c923bbSAndy Yan regulator-max-microvolt = <1500000>; 10576c923bbSAndy Yan regulator-name = "vdd_log"; 10676c923bbSAndy Yan }; 10776c923bbSAndy Yan 10876c923bbSAndy Yan vcc_ddr: DCDC_REG3 { 10976c923bbSAndy Yan regulator-always-on; 11076c923bbSAndy Yan regulator-boot-on; 11176c923bbSAndy Yan regulator-name = "vcc_ddr"; 11276c923bbSAndy Yan }; 11376c923bbSAndy Yan 11476c923bbSAndy Yan vcc_io: DCDC_REG4 { 11576c923bbSAndy Yan regulator-always-on; 11676c923bbSAndy Yan regulator-boot-on; 11776c923bbSAndy Yan regulator-min-microvolt = <3300000>; 11876c923bbSAndy Yan regulator-max-microvolt = <3300000>; 11976c923bbSAndy Yan regulator-name = "vcc_io"; 12076c923bbSAndy Yan }; 12176c923bbSAndy Yan 12276c923bbSAndy Yan vcc18_flash: LDO_REG1 { 12376c923bbSAndy Yan regulator-always-on; 12476c923bbSAndy Yan regulator-boot-on; 12576c923bbSAndy Yan regulator-min-microvolt = <1800000>; 12676c923bbSAndy Yan regulator-max-microvolt = <1800000>; 12776c923bbSAndy Yan regulator-name = "vcc18_flash"; 12876c923bbSAndy Yan }; 12976c923bbSAndy Yan 13076c923bbSAndy Yan vcca_33: LDO_REG2 { 13176c923bbSAndy Yan regulator-always-on; 13276c923bbSAndy Yan regulator-boot-on; 13376c923bbSAndy Yan regulator-min-microvolt = <3300000>; 13476c923bbSAndy Yan regulator-max-microvolt = <3300000>; 13576c923bbSAndy Yan regulator-name = "vcca_33"; 13676c923bbSAndy Yan }; 13776c923bbSAndy Yan 13876c923bbSAndy Yan vdd_10: LDO_REG3 { 13976c923bbSAndy Yan regulator-always-on; 14076c923bbSAndy Yan regulator-boot-on; 14176c923bbSAndy Yan regulator-min-microvolt = <1000000>; 14276c923bbSAndy Yan regulator-max-microvolt = <1000000>; 14376c923bbSAndy Yan regulator-name = "vdd_10"; 14476c923bbSAndy Yan }; 14576c923bbSAndy Yan 14676c923bbSAndy Yan avdd_33: LDO_REG4 { 14776c923bbSAndy Yan regulator-min-microvolt = <3300000>; 14876c923bbSAndy Yan regulator-max-microvolt = <3300000>; 14976c923bbSAndy Yan regulator-name = "avdd_33"; 15076c923bbSAndy Yan }; 15176c923bbSAndy Yan 15276c923bbSAndy Yan vccio_sd: LDO_REG5 { 15376c923bbSAndy Yan regulator-always-on; 15476c923bbSAndy Yan regulator-boot-on; 15576c923bbSAndy Yan regulator-min-microvolt = <1800000>; 15676c923bbSAndy Yan regulator-max-microvolt = <3300000>; 15776c923bbSAndy Yan regulator-name = "vccio_sd"; 15876c923bbSAndy Yan }; 15976c923bbSAndy Yan 16076c923bbSAndy Yan vdd10_lcd: LDO_REG6 { 16176c923bbSAndy Yan regulator-always-on; 16276c923bbSAndy Yan regulator-boot-on; 16376c923bbSAndy Yan regulator-min-microvolt = <1000000>; 16476c923bbSAndy Yan regulator-max-microvolt = <1000000>; 16576c923bbSAndy Yan regulator-name = "vdd10_lcd"; 16676c923bbSAndy Yan }; 16776c923bbSAndy Yan 16876c923bbSAndy Yan vcc_18: LDO_REG7 { 16976c923bbSAndy Yan regulator-always-on; 17076c923bbSAndy Yan regulator-boot-on; 17176c923bbSAndy Yan regulator-min-microvolt = <1800000>; 17276c923bbSAndy Yan regulator-max-microvolt = <1800000>; 17376c923bbSAndy Yan regulator-name = "vcc_18"; 17476c923bbSAndy Yan }; 17576c923bbSAndy Yan 17676c923bbSAndy Yan vcc18_lcd: LDO_REG8 { 17776c923bbSAndy Yan regulator-always-on; 17876c923bbSAndy Yan regulator-boot-on; 17976c923bbSAndy Yan regulator-min-microvolt = <1800000>; 18076c923bbSAndy Yan regulator-max-microvolt = <1800000>; 18176c923bbSAndy Yan regulator-name = "vcc18_lcd"; 18276c923bbSAndy Yan }; 18376c923bbSAndy Yan 18476c923bbSAndy Yan vcc_sd: SWITCH_REG1 { 18576c923bbSAndy Yan regulator-name = "vcc_sd"; 18676c923bbSAndy Yan }; 18776c923bbSAndy Yan 18876c923bbSAndy Yan vcc33_lcd: SWITCH_REG2 { 18976c923bbSAndy Yan regulator-always-on; 19076c923bbSAndy Yan regulator-boot-on; 19176c923bbSAndy Yan regulator-name = "vcc33_lcd"; 19276c923bbSAndy Yan }; 19376c923bbSAndy Yan }; 19476c923bbSAndy Yan }; 19576c923bbSAndy Yan}; 19676c923bbSAndy Yan 19776c923bbSAndy Yan&i2c1 { 19876c923bbSAndy Yan status = "okay"; 19976c923bbSAndy Yan 20076c923bbSAndy Yan accelerometer@18 { 20176c923bbSAndy Yan compatible = "bosch,bma250"; 20276c923bbSAndy Yan reg = <0x18>; 20376c923bbSAndy Yan interrupt-parent = <&gpio2>; 2044eb45558SAndy Yan interrupts = <RK_PC1 IRQ_TYPE_LEVEL_LOW>; 20576c923bbSAndy Yan }; 20676c923bbSAndy Yan}; 20776c923bbSAndy Yan 20876c923bbSAndy Yan&i2c2 { 20976c923bbSAndy Yan status = "okay"; 21076c923bbSAndy Yan 21176c923bbSAndy Yan gsl1680: touchscreen@40 { 21276c923bbSAndy Yan compatible = "silead,gsl1680"; 21376c923bbSAndy Yan reg = <0x40>; 21476c923bbSAndy Yan interrupt-parent = <&gpio3>; 2154eb45558SAndy Yan interrupts = <RK_PD4 IRQ_TYPE_EDGE_FALLING>; 2164eb45558SAndy Yan power-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_HIGH>; 21776c923bbSAndy Yan touchscreen-size-x = <800>; 21876c923bbSAndy Yan touchscreen-size-y = <1280>; 21976c923bbSAndy Yan silead,max-fingers = <5>; 22076c923bbSAndy Yan }; 22176c923bbSAndy Yan}; 22276c923bbSAndy Yan 22376c923bbSAndy Yan&pinctrl { 22476c923bbSAndy Yan keys { 22576c923bbSAndy Yan pwr_key: pwr-key { 226d64420e8SHeiko Stuebner rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 22776c923bbSAndy Yan }; 22876c923bbSAndy Yan }; 22976c923bbSAndy Yan 23076c923bbSAndy Yan pmic { 23176c923bbSAndy Yan pmic_sleep: pmic-sleep { 232d64420e8SHeiko Stuebner rockchip,pins = <0 RK_PA0 2 &pcfg_pull_none>; 23376c923bbSAndy Yan }; 23476c923bbSAndy Yan 23576c923bbSAndy Yan pmic_int: pmic-int { 236d64420e8SHeiko Stuebner rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 23776c923bbSAndy Yan }; 23876c923bbSAndy Yan }; 23976c923bbSAndy Yan}; 24076c923bbSAndy Yan 24141a603b9SShawn Lin&sdmmc { 24241a603b9SShawn Lin status = "okay"; 24341a603b9SShawn Lin bus-width = <4>; 24441a603b9SShawn Lin cap-mmc-highspeed; 24541a603b9SShawn Lin cap-sd-highspeed; 24641a603b9SShawn Lin card-detect-delay = <200>; 24741a603b9SShawn Lin no-sdio; 24841a603b9SShawn Lin sd-uhs-sdr12; 24941a603b9SShawn Lin sd-uhs-sdr25; 25041a603b9SShawn Lin pinctrl-names = "default"; 25141a603b9SShawn Lin pinctrl-0 = <&sdmmc_clk>, <&sdmmc_cmd>, <&sdmmc_bus4>, <&sdmmc_cd>; 25241a603b9SShawn Lin rockchip,default-sample-phase = <90>; 25341a603b9SShawn Lin vmmc-supply = <&vcc_sd>; 25441a603b9SShawn Lin vqmmc-supply = <&vccio_sd>; 25541a603b9SShawn Lin}; 25641a603b9SShawn Lin 25776c923bbSAndy Yan&tsadc { 25876c923bbSAndy Yan status = "okay"; 25976c923bbSAndy Yan rockchip,hw-tshut-mode = <0>; /* CRU */ 26076c923bbSAndy Yan rockchip,hw-tshut-polarity = <1>; /* high */ 26176c923bbSAndy Yan}; 26276c923bbSAndy Yan 26376c923bbSAndy Yan&uart4 { 26476c923bbSAndy Yan status = "okay"; 26576c923bbSAndy Yan}; 26676c923bbSAndy Yan 26776c923bbSAndy Yan&usb_host0_ehci { 26876c923bbSAndy Yan status = "okay"; 26976c923bbSAndy Yan}; 27076c923bbSAndy Yan 27176c923bbSAndy Yan&usb_otg { 27276c923bbSAndy Yan status = "okay"; 27376c923bbSAndy Yan}; 27476c923bbSAndy Yan 27576c923bbSAndy Yan&wdt { 27676c923bbSAndy Yan status = "okay"; 27776c923bbSAndy Yan}; 278