18bab661aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 28bab661aSEmmanuel Vadot/* 38bab661aSEmmanuel Vadot * Copyright (c) 2019 Hardkernel Co., Ltd 48bab661aSEmmanuel Vadot * Copyright (c) 2020 Theobroma Systems Design und Consulting GmbH 58bab661aSEmmanuel Vadot * Copyright (c) 2022 Maya Matuszczyk <maccraft123mc@gmail.com> 68bab661aSEmmanuel Vadot */ 78bab661aSEmmanuel Vadot 88bab661aSEmmanuel Vadot/dts-v1/; 98bab661aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 108bab661aSEmmanuel Vadot#include <dt-bindings/input/input.h> 11*cb7aa33aSEmmanuel Vadot#include <dt-bindings/leds/common.h> 128bab661aSEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h> 138bab661aSEmmanuel Vadot#include "rk3326.dtsi" 148bab661aSEmmanuel Vadot 158bab661aSEmmanuel Vadot/ { 168bab661aSEmmanuel Vadot aliases { 178bab661aSEmmanuel Vadot mmc0 = &sdmmc; 188bab661aSEmmanuel Vadot }; 198bab661aSEmmanuel Vadot 208bab661aSEmmanuel Vadot chosen { 218bab661aSEmmanuel Vadot stdout-path = "serial2:115200n8"; 228bab661aSEmmanuel Vadot }; 238bab661aSEmmanuel Vadot 248bab661aSEmmanuel Vadot backlight: backlight { 258bab661aSEmmanuel Vadot compatible = "pwm-backlight"; 268bab661aSEmmanuel Vadot power-supply = <&vcc_bl>; 278bab661aSEmmanuel Vadot pwms = <&pwm1 0 25000 0>; 288bab661aSEmmanuel Vadot }; 298bab661aSEmmanuel Vadot 308bab661aSEmmanuel Vadot builtin_gamepad: gpio-keys { 318bab661aSEmmanuel Vadot compatible = "gpio-keys"; 328bab661aSEmmanuel Vadot pinctrl-names = "default"; 338bab661aSEmmanuel Vadot pinctrl-0 = <&btn_pins>; 348bab661aSEmmanuel Vadot 358bab661aSEmmanuel Vadot button-sw1 { 368bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_LOW>; 378bab661aSEmmanuel Vadot label = "DPAD-UP"; 388bab661aSEmmanuel Vadot linux,code = <BTN_DPAD_UP>; 398bab661aSEmmanuel Vadot }; 408bab661aSEmmanuel Vadot button-sw2 { 418bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_LOW>; 428bab661aSEmmanuel Vadot label = "DPAD-DOWN"; 438bab661aSEmmanuel Vadot linux,code = <BTN_DPAD_DOWN>; 448bab661aSEmmanuel Vadot }; 458bab661aSEmmanuel Vadot button-sw3 { 468bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_LOW>; 478bab661aSEmmanuel Vadot label = "DPAD-LEFT"; 488bab661aSEmmanuel Vadot linux,code = <BTN_DPAD_LEFT>; 498bab661aSEmmanuel Vadot }; 508bab661aSEmmanuel Vadot button-sw4 { 518bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PB7 GPIO_ACTIVE_LOW>; 528bab661aSEmmanuel Vadot label = "DPAD-RIGHT"; 538bab661aSEmmanuel Vadot linux,code = <BTN_DPAD_RIGHT>; 548bab661aSEmmanuel Vadot }; 558bab661aSEmmanuel Vadot button-sw5 { 568bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_LOW>; 578bab661aSEmmanuel Vadot label = "BTN-A"; 588bab661aSEmmanuel Vadot linux,code = <BTN_EAST>; 598bab661aSEmmanuel Vadot }; 608bab661aSEmmanuel Vadot button-sw6 { 618bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PA5 GPIO_ACTIVE_LOW>; 628bab661aSEmmanuel Vadot label = "BTN-B"; 638bab661aSEmmanuel Vadot linux,code = <BTN_SOUTH>; 648bab661aSEmmanuel Vadot }; 658bab661aSEmmanuel Vadot button-sw7 { 668bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PA6 GPIO_ACTIVE_LOW>; 678bab661aSEmmanuel Vadot label = "BTN-Y"; 688bab661aSEmmanuel Vadot linux,code = <BTN_WEST>; 698bab661aSEmmanuel Vadot }; 708bab661aSEmmanuel Vadot button-sw8 { 718bab661aSEmmanuel Vadot gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_LOW>; 728bab661aSEmmanuel Vadot label = "BTN-X"; 738bab661aSEmmanuel Vadot linux,code = <BTN_NORTH>; 748bab661aSEmmanuel Vadot }; 758bab661aSEmmanuel Vadot btn_f1: button-sw9 { 768bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA0 GPIO_ACTIVE_LOW>; 778bab661aSEmmanuel Vadot label = "F1"; 788bab661aSEmmanuel Vadot linux,code = <BTN_TRIGGER_HAPPY1>; 798bab661aSEmmanuel Vadot }; 808bab661aSEmmanuel Vadot btn_f2: button-sw10 { 818bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA1 GPIO_ACTIVE_LOW>; 828bab661aSEmmanuel Vadot label = "F2"; 838bab661aSEmmanuel Vadot linux,code = <BTN_TRIGGER_HAPPY2>; 848bab661aSEmmanuel Vadot }; 858bab661aSEmmanuel Vadot btn_f3: button-sw11 { 868bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; 878bab661aSEmmanuel Vadot label = "F3"; 888bab661aSEmmanuel Vadot linux,code = <BTN_TRIGGER_HAPPY3>; 898bab661aSEmmanuel Vadot }; 908bab661aSEmmanuel Vadot btn_f4: button-sw12 { 918bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>; 928bab661aSEmmanuel Vadot label = "F4"; 938bab661aSEmmanuel Vadot linux,code = <BTN_TRIGGER_HAPPY4>; 948bab661aSEmmanuel Vadot }; 958bab661aSEmmanuel Vadot btn_f5: button-sw13 { 968bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_LOW>; 978bab661aSEmmanuel Vadot label = "F5"; 988bab661aSEmmanuel Vadot linux,code = <BTN_TRIGGER_HAPPY5>; 998bab661aSEmmanuel Vadot }; 1008bab661aSEmmanuel Vadot btn_f6: button-sw14 { 1018bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA5 GPIO_ACTIVE_LOW>; 1028bab661aSEmmanuel Vadot label = "F6"; 1038bab661aSEmmanuel Vadot linux,code = <BTN_TRIGGER_HAPPY6>; 1048bab661aSEmmanuel Vadot }; 1058bab661aSEmmanuel Vadot button-sw15 { 1068bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA6 GPIO_ACTIVE_LOW>; 1078bab661aSEmmanuel Vadot label = "TOP-LEFT"; 1088bab661aSEmmanuel Vadot linux,code = <BTN_TL>; 1098bab661aSEmmanuel Vadot }; 1108bab661aSEmmanuel Vadot button-sw16 { 1118bab661aSEmmanuel Vadot gpios = <&gpio2 RK_PA7 GPIO_ACTIVE_LOW>; 1128bab661aSEmmanuel Vadot label = "TOP-RIGHT"; 1138bab661aSEmmanuel Vadot linux,code = <BTN_TR>; 1148bab661aSEmmanuel Vadot }; 1158bab661aSEmmanuel Vadot }; 1168bab661aSEmmanuel Vadot 117*cb7aa33aSEmmanuel Vadot /* led-1 is wired directly to output of always-on regulator */ 118*cb7aa33aSEmmanuel Vadot 119*cb7aa33aSEmmanuel Vadot gpio_led: gpio-leds { 1208bab661aSEmmanuel Vadot compatible = "gpio-leds"; 1218bab661aSEmmanuel Vadot pinctrl-names = "default"; 122*cb7aa33aSEmmanuel Vadot pinctrl-0 = <&red_led_pin>; 1238bab661aSEmmanuel Vadot 124*cb7aa33aSEmmanuel Vadot red_led: led-3 { 125*cb7aa33aSEmmanuel Vadot color = <LED_COLOR_ID_RED>; 126*cb7aa33aSEmmanuel Vadot gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; 127*cb7aa33aSEmmanuel Vadot function = LED_FUNCTION_CHARGING; 128*cb7aa33aSEmmanuel Vadot }; 129*cb7aa33aSEmmanuel Vadot }; 130*cb7aa33aSEmmanuel Vadot 131*cb7aa33aSEmmanuel Vadot pwm_led: led-controller { 132*cb7aa33aSEmmanuel Vadot compatible = "pwm-leds"; 133*cb7aa33aSEmmanuel Vadot 134*cb7aa33aSEmmanuel Vadot blue_led: led-2 { 135*cb7aa33aSEmmanuel Vadot color = <LED_COLOR_ID_BLUE>; 136*cb7aa33aSEmmanuel Vadot function = LED_FUNCTION_STATUS; 1378bab661aSEmmanuel Vadot linux,default-trigger = "heartbeat"; 138*cb7aa33aSEmmanuel Vadot max-brightness = <255>; 139*cb7aa33aSEmmanuel Vadot pwms = <&pwm3 0 25000 0>; 1408bab661aSEmmanuel Vadot }; 1418bab661aSEmmanuel Vadot }; 1428bab661aSEmmanuel Vadot 1438bab661aSEmmanuel Vadot rk817-sound { 1448bab661aSEmmanuel Vadot compatible = "simple-audio-card"; 145*cb7aa33aSEmmanuel Vadot simple-audio-card,name = "rk817_int"; 1468bab661aSEmmanuel Vadot simple-audio-card,format = "i2s"; 1478bab661aSEmmanuel Vadot simple-audio-card,hp-det-gpio = <&gpio2 RK_PC6 GPIO_ACTIVE_HIGH>; 1488bab661aSEmmanuel Vadot simple-audio-card,mclk-fs = <256>; 1498bab661aSEmmanuel Vadot simple-audio-card,widgets = 1508bab661aSEmmanuel Vadot "Microphone", "Mic Jack", 1518bab661aSEmmanuel Vadot "Headphone", "Headphones", 1528bab661aSEmmanuel Vadot "Speaker", "Speaker"; 1538bab661aSEmmanuel Vadot simple-audio-card,routing = 1548bab661aSEmmanuel Vadot "MICL", "Mic Jack", 1558bab661aSEmmanuel Vadot "Headphones", "HPOL", 1568bab661aSEmmanuel Vadot "Headphones", "HPOR", 1578bab661aSEmmanuel Vadot "Speaker", "SPKO"; 1588bab661aSEmmanuel Vadot 1598bab661aSEmmanuel Vadot simple-audio-card,codec { 1608bab661aSEmmanuel Vadot sound-dai = <&rk817>; 1618bab661aSEmmanuel Vadot }; 1628bab661aSEmmanuel Vadot 1638bab661aSEmmanuel Vadot simple-audio-card,cpu { 1648bab661aSEmmanuel Vadot sound-dai = <&i2s1_2ch>; 1658bab661aSEmmanuel Vadot }; 1668bab661aSEmmanuel Vadot }; 1678bab661aSEmmanuel Vadot 1688bab661aSEmmanuel Vadot vccsys: vccsys { 1698bab661aSEmmanuel Vadot compatible = "regulator-fixed"; 1708bab661aSEmmanuel Vadot regulator-name = "vcc3v8_sys"; 1718bab661aSEmmanuel Vadot regulator-always-on; 1728bab661aSEmmanuel Vadot regulator-min-microvolt = <3800000>; 1738bab661aSEmmanuel Vadot regulator-max-microvolt = <3800000>; 1748bab661aSEmmanuel Vadot }; 1758bab661aSEmmanuel Vadot 1768bab661aSEmmanuel Vadot vcc_host: vcc_host { 1778bab661aSEmmanuel Vadot compatible = "regulator-fixed"; 1788bab661aSEmmanuel Vadot regulator-name = "vcc_host"; 1798bab661aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 1808bab661aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 1818bab661aSEmmanuel Vadot 1828bab661aSEmmanuel Vadot gpio = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; 1838bab661aSEmmanuel Vadot enable-active-high; 1848bab661aSEmmanuel Vadot regulator-always-on; 1858bab661aSEmmanuel Vadot regulator-boot-on; 1868bab661aSEmmanuel Vadot vin-supply = <&usb_midu>; 1878bab661aSEmmanuel Vadot }; 1888bab661aSEmmanuel Vadot}; 1898bab661aSEmmanuel Vadot 1908bab661aSEmmanuel Vadot&cpu0 { 1918bab661aSEmmanuel Vadot cpu-supply = <&vdd_arm>; 1928bab661aSEmmanuel Vadot}; 1938bab661aSEmmanuel Vadot 1948bab661aSEmmanuel Vadot&cpu1 { 1958bab661aSEmmanuel Vadot cpu-supply = <&vdd_arm>; 1968bab661aSEmmanuel Vadot}; 1978bab661aSEmmanuel Vadot 1988bab661aSEmmanuel Vadot&cpu2 { 1998bab661aSEmmanuel Vadot cpu-supply = <&vdd_arm>; 2008bab661aSEmmanuel Vadot}; 2018bab661aSEmmanuel Vadot 2028bab661aSEmmanuel Vadot&cpu3 { 2038bab661aSEmmanuel Vadot cpu-supply = <&vdd_arm>; 2048bab661aSEmmanuel Vadot}; 2058bab661aSEmmanuel Vadot 2068bab661aSEmmanuel Vadot&cru { 2078bab661aSEmmanuel Vadot assigned-clocks = <&cru PLL_NPLL>, 2088bab661aSEmmanuel Vadot <&cru ACLK_BUS_PRE>, <&cru ACLK_PERI_PRE>, 2098bab661aSEmmanuel Vadot <&cru HCLK_BUS_PRE>, <&cru HCLK_PERI_PRE>, 210*cb7aa33aSEmmanuel Vadot <&cru PCLK_BUS_PRE>, <&cru SCLK_GPU>; 2118bab661aSEmmanuel Vadot 2128bab661aSEmmanuel Vadot assigned-clock-rates = <1188000000>, 2138bab661aSEmmanuel Vadot <200000000>, <200000000>, 2148bab661aSEmmanuel Vadot <150000000>, <150000000>, 215*cb7aa33aSEmmanuel Vadot <100000000>, <200000000>; 2168bab661aSEmmanuel Vadot}; 2178bab661aSEmmanuel Vadot 2188bab661aSEmmanuel Vadot&display_subsystem { 2198bab661aSEmmanuel Vadot status = "okay"; 2208bab661aSEmmanuel Vadot}; 2218bab661aSEmmanuel Vadot 2228bab661aSEmmanuel Vadot&dsi { 2238bab661aSEmmanuel Vadot status = "okay"; 2248bab661aSEmmanuel Vadot 2258bab661aSEmmanuel Vadot ports { 2268bab661aSEmmanuel Vadot mipi_out: port@1 { 2278bab661aSEmmanuel Vadot reg = <1>; 2288bab661aSEmmanuel Vadot 2298bab661aSEmmanuel Vadot mipi_out_panel: endpoint { 2308bab661aSEmmanuel Vadot remote-endpoint = <&mipi_in_panel>; 2318bab661aSEmmanuel Vadot }; 2328bab661aSEmmanuel Vadot }; 2338bab661aSEmmanuel Vadot }; 2348bab661aSEmmanuel Vadot 2358bab661aSEmmanuel Vadot internal_display: panel@0 { 2368bab661aSEmmanuel Vadot reg = <0>; 2378bab661aSEmmanuel Vadot backlight = <&backlight>; 2388bab661aSEmmanuel Vadot reset-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>; 2398bab661aSEmmanuel Vadot rotation = <270>; 2408bab661aSEmmanuel Vadot 2418bab661aSEmmanuel Vadot port { 2428bab661aSEmmanuel Vadot mipi_in_panel: endpoint { 2438bab661aSEmmanuel Vadot remote-endpoint = <&mipi_out_panel>; 2448bab661aSEmmanuel Vadot }; 2458bab661aSEmmanuel Vadot }; 2468bab661aSEmmanuel Vadot }; 2478bab661aSEmmanuel Vadot}; 2488bab661aSEmmanuel Vadot 2498bab661aSEmmanuel Vadot&dsi_dphy { 2508bab661aSEmmanuel Vadot status = "okay"; 2518bab661aSEmmanuel Vadot}; 2528bab661aSEmmanuel Vadot 2538bab661aSEmmanuel Vadot&gpu { 2548bab661aSEmmanuel Vadot mali-supply = <&vdd_logic>; 2558bab661aSEmmanuel Vadot status = "okay"; 2568bab661aSEmmanuel Vadot}; 2578bab661aSEmmanuel Vadot 2588bab661aSEmmanuel Vadot&i2c0 { 2598bab661aSEmmanuel Vadot clock-frequency = <400000>; 2608bab661aSEmmanuel Vadot i2c-scl-falling-time-ns = <16>; 2618bab661aSEmmanuel Vadot i2c-scl-rising-time-ns = <280>; 2628bab661aSEmmanuel Vadot status = "okay"; 2638bab661aSEmmanuel Vadot 2648bab661aSEmmanuel Vadot rk817: pmic@20 { 2658bab661aSEmmanuel Vadot compatible = "rockchip,rk817"; 2668bab661aSEmmanuel Vadot reg = <0x20>; 2678bab661aSEmmanuel Vadot interrupt-parent = <&gpio0>; 2688bab661aSEmmanuel Vadot interrupts = <RK_PB2 IRQ_TYPE_LEVEL_LOW>; 2698bab661aSEmmanuel Vadot clock-output-names = "rk808-clkout1", "xin32k"; 2708bab661aSEmmanuel Vadot clock-names = "mclk"; 2718bab661aSEmmanuel Vadot clocks = <&cru SCLK_I2S1_OUT>; 2728bab661aSEmmanuel Vadot pinctrl-names = "default"; 2738bab661aSEmmanuel Vadot pinctrl-0 = <&pmic_int>, <&i2s1_2ch_mclk>; 2748bab661aSEmmanuel Vadot wakeup-source; 2758bab661aSEmmanuel Vadot #clock-cells = <1>; 2768bab661aSEmmanuel Vadot #sound-dai-cells = <0>; 2778bab661aSEmmanuel Vadot 2788bab661aSEmmanuel Vadot vcc1-supply = <&vccsys>; 2798bab661aSEmmanuel Vadot vcc2-supply = <&vccsys>; 2808bab661aSEmmanuel Vadot vcc3-supply = <&vccsys>; 2818bab661aSEmmanuel Vadot vcc4-supply = <&vccsys>; 2828bab661aSEmmanuel Vadot vcc5-supply = <&vccsys>; 2838bab661aSEmmanuel Vadot vcc6-supply = <&vccsys>; 2848bab661aSEmmanuel Vadot vcc7-supply = <&vccsys>; 2858bab661aSEmmanuel Vadot vcc8-supply = <&vccsys>; 2868bab661aSEmmanuel Vadot 2878bab661aSEmmanuel Vadot regulators { 2888bab661aSEmmanuel Vadot vdd_logic: DCDC_REG1 { 2898bab661aSEmmanuel Vadot regulator-name = "vdd_logic"; 2908bab661aSEmmanuel Vadot regulator-min-microvolt = <950000>; 2918bab661aSEmmanuel Vadot regulator-max-microvolt = <1150000>; 2928bab661aSEmmanuel Vadot regulator-ramp-delay = <6001>; 2938bab661aSEmmanuel Vadot regulator-always-on; 2948bab661aSEmmanuel Vadot regulator-boot-on; 2958bab661aSEmmanuel Vadot 2968bab661aSEmmanuel Vadot regulator-state-mem { 2978bab661aSEmmanuel Vadot regulator-on-in-suspend; 2988bab661aSEmmanuel Vadot regulator-suspend-microvolt = <950000>; 2998bab661aSEmmanuel Vadot }; 3008bab661aSEmmanuel Vadot }; 3018bab661aSEmmanuel Vadot 3028bab661aSEmmanuel Vadot vdd_arm: DCDC_REG2 { 3038bab661aSEmmanuel Vadot regulator-name = "vdd_arm"; 3048bab661aSEmmanuel Vadot regulator-min-microvolt = <950000>; 3058bab661aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 3068bab661aSEmmanuel Vadot regulator-ramp-delay = <6001>; 3078bab661aSEmmanuel Vadot regulator-always-on; 3088bab661aSEmmanuel Vadot regulator-boot-on; 3098bab661aSEmmanuel Vadot 3108bab661aSEmmanuel Vadot regulator-state-mem { 3118bab661aSEmmanuel Vadot regulator-off-in-suspend; 3128bab661aSEmmanuel Vadot regulator-suspend-microvolt = <950000>; 3138bab661aSEmmanuel Vadot }; 3148bab661aSEmmanuel Vadot }; 3158bab661aSEmmanuel Vadot 3168bab661aSEmmanuel Vadot vcc_ddr: DCDC_REG3 { 3178bab661aSEmmanuel Vadot regulator-name = "vcc_ddr"; 3188bab661aSEmmanuel Vadot regulator-always-on; 3198bab661aSEmmanuel Vadot regulator-boot-on; 3208bab661aSEmmanuel Vadot 3218bab661aSEmmanuel Vadot regulator-state-mem { 3228bab661aSEmmanuel Vadot regulator-on-in-suspend; 3238bab661aSEmmanuel Vadot }; 3248bab661aSEmmanuel Vadot }; 3258bab661aSEmmanuel Vadot 3268bab661aSEmmanuel Vadot vcc_3v3: DCDC_REG4 { 3278bab661aSEmmanuel Vadot regulator-name = "vcc_3v3"; 3288bab661aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 3298bab661aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 3308bab661aSEmmanuel Vadot regulator-always-on; 3318bab661aSEmmanuel Vadot regulator-boot-on; 3328bab661aSEmmanuel Vadot 3338bab661aSEmmanuel Vadot regulator-state-mem { 3348bab661aSEmmanuel Vadot regulator-off-in-suspend; 3358bab661aSEmmanuel Vadot regulator-suspend-microvolt = <3300000>; 3368bab661aSEmmanuel Vadot }; 3378bab661aSEmmanuel Vadot }; 3388bab661aSEmmanuel Vadot 3398bab661aSEmmanuel Vadot vcc_1v8: LDO_REG2 { 3408bab661aSEmmanuel Vadot regulator-name = "vcc_1v8"; 3418bab661aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 3428bab661aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 3438bab661aSEmmanuel Vadot regulator-always-on; 3448bab661aSEmmanuel Vadot regulator-boot-on; 3458bab661aSEmmanuel Vadot 3468bab661aSEmmanuel Vadot regulator-state-mem { 3478bab661aSEmmanuel Vadot regulator-on-in-suspend; 3488bab661aSEmmanuel Vadot regulator-suspend-microvolt = <1800000>; 3498bab661aSEmmanuel Vadot }; 3508bab661aSEmmanuel Vadot }; 3518bab661aSEmmanuel Vadot 3528bab661aSEmmanuel Vadot vdd_1v0: LDO_REG3 { 3538bab661aSEmmanuel Vadot regulator-name = "vdd_1v0"; 3548bab661aSEmmanuel Vadot regulator-min-microvolt = <1000000>; 3558bab661aSEmmanuel Vadot regulator-max-microvolt = <1000000>; 3568bab661aSEmmanuel Vadot regulator-always-on; 3578bab661aSEmmanuel Vadot regulator-boot-on; 3588bab661aSEmmanuel Vadot 3598bab661aSEmmanuel Vadot regulator-state-mem { 3608bab661aSEmmanuel Vadot regulator-on-in-suspend; 3618bab661aSEmmanuel Vadot regulator-suspend-microvolt = <1000000>; 3628bab661aSEmmanuel Vadot }; 3638bab661aSEmmanuel Vadot }; 3648bab661aSEmmanuel Vadot 3658bab661aSEmmanuel Vadot vcc3v3_pmu: LDO_REG4 { 3668bab661aSEmmanuel Vadot regulator-name = "vcc3v3_pmu"; 3678bab661aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 3688bab661aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 3698bab661aSEmmanuel Vadot regulator-always-on; 3708bab661aSEmmanuel Vadot regulator-boot-on; 3718bab661aSEmmanuel Vadot 3728bab661aSEmmanuel Vadot regulator-state-mem { 3738bab661aSEmmanuel Vadot regulator-on-in-suspend; 3748bab661aSEmmanuel Vadot regulator-suspend-microvolt = <3300000>; 3758bab661aSEmmanuel Vadot }; 3768bab661aSEmmanuel Vadot }; 3778bab661aSEmmanuel Vadot 3788bab661aSEmmanuel Vadot vccio_sd: LDO_REG5 { 3798bab661aSEmmanuel Vadot regulator-name = "vccio_sd"; 3808bab661aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 3818bab661aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 3828bab661aSEmmanuel Vadot regulator-always-on; 3838bab661aSEmmanuel Vadot regulator-boot-on; 3848bab661aSEmmanuel Vadot 3858bab661aSEmmanuel Vadot regulator-state-mem { 3868bab661aSEmmanuel Vadot regulator-on-in-suspend; 3878bab661aSEmmanuel Vadot regulator-suspend-microvolt = <3300000>; 3888bab661aSEmmanuel Vadot }; 3898bab661aSEmmanuel Vadot }; 3908bab661aSEmmanuel Vadot 3918bab661aSEmmanuel Vadot vcc_sd: LDO_REG6 { 3928bab661aSEmmanuel Vadot regulator-name = "vcc_sd"; 3938bab661aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 3948bab661aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 3958bab661aSEmmanuel Vadot regulator-boot-on; 3968bab661aSEmmanuel Vadot 3978bab661aSEmmanuel Vadot regulator-state-mem { 3988bab661aSEmmanuel Vadot regulator-on-in-suspend; 3998bab661aSEmmanuel Vadot regulator-suspend-microvolt = <3300000>; 4008bab661aSEmmanuel Vadot }; 4018bab661aSEmmanuel Vadot }; 4028bab661aSEmmanuel Vadot 4038bab661aSEmmanuel Vadot vcc_bl: LDO_REG7 { 4048bab661aSEmmanuel Vadot regulator-name = "vcc_bl"; 4058bab661aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 4068bab661aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 4078bab661aSEmmanuel Vadot 4088bab661aSEmmanuel Vadot regulator-state-mem { 4098bab661aSEmmanuel Vadot regulator-off-in-suspend; 4108bab661aSEmmanuel Vadot regulator-suspend-microvolt = <3300000>; 4118bab661aSEmmanuel Vadot }; 4128bab661aSEmmanuel Vadot }; 4138bab661aSEmmanuel Vadot 4148bab661aSEmmanuel Vadot vcc_lcd: LDO_REG8 { 4158bab661aSEmmanuel Vadot regulator-name = "vcc_lcd"; 4168bab661aSEmmanuel Vadot regulator-min-microvolt = <2800000>; 4178bab661aSEmmanuel Vadot regulator-max-microvolt = <2800000>; 4188bab661aSEmmanuel Vadot 4198bab661aSEmmanuel Vadot regulator-state-mem { 4208bab661aSEmmanuel Vadot regulator-off-in-suspend; 4218bab661aSEmmanuel Vadot regulator-suspend-microvolt = <2800000>; 4228bab661aSEmmanuel Vadot }; 4238bab661aSEmmanuel Vadot }; 4248bab661aSEmmanuel Vadot 4258bab661aSEmmanuel Vadot LDO_REG9 { 4268bab661aSEmmanuel Vadot /* unused */ 4278bab661aSEmmanuel Vadot }; 4288bab661aSEmmanuel Vadot 4298bab661aSEmmanuel Vadot usb_midu: BOOST { 4308bab661aSEmmanuel Vadot regulator-name = "usb_midu"; 4318bab661aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 4328bab661aSEmmanuel Vadot regulator-max-microvolt = <5400000>; 4338bab661aSEmmanuel Vadot regulator-always-on; 4348bab661aSEmmanuel Vadot regulator-boot-on; 4358bab661aSEmmanuel Vadot }; 4368bab661aSEmmanuel Vadot }; 4378bab661aSEmmanuel Vadot 4388bab661aSEmmanuel Vadot rk817_charger: charger { 4398bab661aSEmmanuel Vadot rockchip,resistor-sense-micro-ohms = <10000>; 4408bab661aSEmmanuel Vadot rockchip,sleep-enter-current-microamp = <300000>; 4418bab661aSEmmanuel Vadot rockchip,sleep-filter-current-microamp = <100000>; 4428bab661aSEmmanuel Vadot }; 4438bab661aSEmmanuel Vadot 4448bab661aSEmmanuel Vadot rk817_codec: codec { 4458bab661aSEmmanuel Vadot rockchip,mic-in-differential; 4468bab661aSEmmanuel Vadot }; 4478bab661aSEmmanuel Vadot }; 4488bab661aSEmmanuel Vadot}; 4498bab661aSEmmanuel Vadot 4508bab661aSEmmanuel Vadot/* EXT Header(P2): 7(SCL:GPIO0.C2), 8(SDA:GPIO0.C3) */ 4518bab661aSEmmanuel Vadot&i2c1 { 4528bab661aSEmmanuel Vadot clock-frequency = <400000>; 4538bab661aSEmmanuel Vadot status = "okay"; 4548bab661aSEmmanuel Vadot}; 4558bab661aSEmmanuel Vadot 4568bab661aSEmmanuel Vadot/* I2S 1 Channel Used */ 4578bab661aSEmmanuel Vadot&i2s1_2ch { 4588bab661aSEmmanuel Vadot status = "okay"; 4598bab661aSEmmanuel Vadot}; 4608bab661aSEmmanuel Vadot 4618bab661aSEmmanuel Vadot&io_domains { 4628bab661aSEmmanuel Vadot vccio1-supply = <&vcc_3v3>; 4638bab661aSEmmanuel Vadot vccio2-supply = <&vccio_sd>; 4648bab661aSEmmanuel Vadot vccio3-supply = <&vcc_3v3>; 4658bab661aSEmmanuel Vadot vccio4-supply = <&vcc_3v3>; 4668bab661aSEmmanuel Vadot vccio5-supply = <&vcc_3v3>; 4678bab661aSEmmanuel Vadot vccio6-supply = <&vcc_3v3>; 4688bab661aSEmmanuel Vadot status = "okay"; 4698bab661aSEmmanuel Vadot}; 4708bab661aSEmmanuel Vadot 4718bab661aSEmmanuel Vadot&pmu_io_domains { 4728bab661aSEmmanuel Vadot pmuio1-supply = <&vcc3v3_pmu>; 4738bab661aSEmmanuel Vadot pmuio2-supply = <&vcc3v3_pmu>; 4748bab661aSEmmanuel Vadot status = "okay"; 4758bab661aSEmmanuel Vadot}; 4768bab661aSEmmanuel Vadot 4778bab661aSEmmanuel Vadot&pwm1 { 4788bab661aSEmmanuel Vadot status = "okay"; 4798bab661aSEmmanuel Vadot}; 4808bab661aSEmmanuel Vadot 481*cb7aa33aSEmmanuel Vadot&pwm3 { 482*cb7aa33aSEmmanuel Vadot status = "okay"; 483*cb7aa33aSEmmanuel Vadot}; 484*cb7aa33aSEmmanuel Vadot 4858bab661aSEmmanuel Vadot&saradc { 4868bab661aSEmmanuel Vadot vref-supply = <&vcc_1v8>; 4878bab661aSEmmanuel Vadot status = "okay"; 4888bab661aSEmmanuel Vadot}; 4898bab661aSEmmanuel Vadot 4908bab661aSEmmanuel Vadot&sdmmc { 4918bab661aSEmmanuel Vadot cap-sd-highspeed; 4928bab661aSEmmanuel Vadot card-detect-delay = <200>; 4938bab661aSEmmanuel Vadot cd-gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_LOW>; /*[> CD GPIO <]*/ 4948bab661aSEmmanuel Vadot sd-uhs-sdr12; 4958bab661aSEmmanuel Vadot sd-uhs-sdr25; 4968bab661aSEmmanuel Vadot sd-uhs-sdr50; 4978bab661aSEmmanuel Vadot sd-uhs-sdr104; 4988bab661aSEmmanuel Vadot vmmc-supply = <&vcc_sd>; 4998bab661aSEmmanuel Vadot vqmmc-supply = <&vccio_sd>; 5008bab661aSEmmanuel Vadot status = "okay"; 5018bab661aSEmmanuel Vadot}; 5028bab661aSEmmanuel Vadot 5038bab661aSEmmanuel Vadot&sfc { 5048bab661aSEmmanuel Vadot pinctrl-0 = <&sfc_clk &sfc_cs0 &sfc_bus2>; 5058bab661aSEmmanuel Vadot pinctrl-names = "default"; 5068bab661aSEmmanuel Vadot #address-cells = <1>; 5078bab661aSEmmanuel Vadot #size-cells = <0>; 5088bab661aSEmmanuel Vadot status = "okay"; 5098bab661aSEmmanuel Vadot 5108bab661aSEmmanuel Vadot flash@0 { 5118bab661aSEmmanuel Vadot compatible = "jedec,spi-nor"; 5128bab661aSEmmanuel Vadot reg = <0>; 5138bab661aSEmmanuel Vadot spi-max-frequency = <108000000>; 5148bab661aSEmmanuel Vadot spi-rx-bus-width = <2>; 5158bab661aSEmmanuel Vadot spi-tx-bus-width = <1>; 5168bab661aSEmmanuel Vadot }; 5178bab661aSEmmanuel Vadot}; 5188bab661aSEmmanuel Vadot 5198bab661aSEmmanuel Vadot&tsadc { 5208bab661aSEmmanuel Vadot status = "okay"; 5218bab661aSEmmanuel Vadot}; 5228bab661aSEmmanuel Vadot 5238bab661aSEmmanuel Vadot&u2phy { 5248bab661aSEmmanuel Vadot status = "okay"; 5258bab661aSEmmanuel Vadot 5268bab661aSEmmanuel Vadot u2phy_host: host-port { 5278bab661aSEmmanuel Vadot status = "okay"; 5288bab661aSEmmanuel Vadot }; 5298bab661aSEmmanuel Vadot 5308bab661aSEmmanuel Vadot u2phy_otg: otg-port { 5318bab661aSEmmanuel Vadot status = "disabled"; 5328bab661aSEmmanuel Vadot }; 5338bab661aSEmmanuel Vadot}; 5348bab661aSEmmanuel Vadot 5358bab661aSEmmanuel Vadot&usb20_otg { 5368bab661aSEmmanuel Vadot status = "okay"; 5378bab661aSEmmanuel Vadot}; 5388bab661aSEmmanuel Vadot 5398bab661aSEmmanuel Vadot/* EXT Header(P2): 2(RXD:GPIO1.C0),3(TXD:.C1),4(CTS:.C2),5(RTS:.C3) */ 5408bab661aSEmmanuel Vadot&uart1 { 5418bab661aSEmmanuel Vadot pinctrl-names = "default"; 5428bab661aSEmmanuel Vadot pinctrl-0 = <&uart1_xfer &uart1_cts>; 5438bab661aSEmmanuel Vadot status = "okay"; 5448bab661aSEmmanuel Vadot}; 5458bab661aSEmmanuel Vadot 5468bab661aSEmmanuel Vadot&uart2 { 5478bab661aSEmmanuel Vadot pinctrl-names = "default"; 5488bab661aSEmmanuel Vadot pinctrl-0 = <&uart2m1_xfer>; 5498bab661aSEmmanuel Vadot status = "okay"; 5508bab661aSEmmanuel Vadot}; 5518bab661aSEmmanuel Vadot 5528bab661aSEmmanuel Vadot&vopb { 5538bab661aSEmmanuel Vadot status = "okay"; 5548bab661aSEmmanuel Vadot}; 5558bab661aSEmmanuel Vadot 5568bab661aSEmmanuel Vadot&vopb_mmu { 5578bab661aSEmmanuel Vadot status = "okay"; 5588bab661aSEmmanuel Vadot}; 5598bab661aSEmmanuel Vadot 5608bab661aSEmmanuel Vadot&pinctrl { 5618bab661aSEmmanuel Vadot btns { 5628bab661aSEmmanuel Vadot btn_pins: btn-pins { 5638bab661aSEmmanuel Vadot rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 5648bab661aSEmmanuel Vadot <1 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 5658bab661aSEmmanuel Vadot <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 5668bab661aSEmmanuel Vadot <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>, 5678bab661aSEmmanuel Vadot <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>, 5688bab661aSEmmanuel Vadot <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>, 5698bab661aSEmmanuel Vadot <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>, 5708bab661aSEmmanuel Vadot <1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>, 5718bab661aSEmmanuel Vadot <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>, 5728bab661aSEmmanuel Vadot <2 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>, 5738bab661aSEmmanuel Vadot <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 5748bab661aSEmmanuel Vadot <2 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>, 5758bab661aSEmmanuel Vadot <2 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, 5768bab661aSEmmanuel Vadot <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 5778bab661aSEmmanuel Vadot <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 5788bab661aSEmmanuel Vadot <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; 5798bab661aSEmmanuel Vadot }; 5808bab661aSEmmanuel Vadot }; 5818bab661aSEmmanuel Vadot 5828bab661aSEmmanuel Vadot headphone { 5838bab661aSEmmanuel Vadot hp_det: hp-det { 5848bab661aSEmmanuel Vadot rockchip,pins = <2 RK_PC6 RK_FUNC_GPIO &pcfg_pull_down>; 5858bab661aSEmmanuel Vadot }; 5868bab661aSEmmanuel Vadot }; 5878bab661aSEmmanuel Vadot 5888bab661aSEmmanuel Vadot leds { 589*cb7aa33aSEmmanuel Vadot red_led_pin: red-led-pin { 590*cb7aa33aSEmmanuel Vadot rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 5918bab661aSEmmanuel Vadot }; 5928bab661aSEmmanuel Vadot }; 5938bab661aSEmmanuel Vadot 5948bab661aSEmmanuel Vadot pmic { 5958bab661aSEmmanuel Vadot dc_det: dc-det { 5968bab661aSEmmanuel Vadot rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 5978bab661aSEmmanuel Vadot }; 5988bab661aSEmmanuel Vadot 5998bab661aSEmmanuel Vadot pmic_int: pmic-int { 6008bab661aSEmmanuel Vadot rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>; 6018bab661aSEmmanuel Vadot }; 6028bab661aSEmmanuel Vadot 6038bab661aSEmmanuel Vadot soc_slppin_gpio: soc_slppin_gpio { 6048bab661aSEmmanuel Vadot rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_output_low>; 6058bab661aSEmmanuel Vadot }; 6068bab661aSEmmanuel Vadot 6078bab661aSEmmanuel Vadot soc_slppin_rst: soc_slppin_rst { 6088bab661aSEmmanuel Vadot rockchip,pins = <0 RK_PA4 2 &pcfg_pull_none>; 6098bab661aSEmmanuel Vadot }; 6108bab661aSEmmanuel Vadot 6118bab661aSEmmanuel Vadot soc_slppin_slp: soc_slppin_slp { 6128bab661aSEmmanuel Vadot rockchip,pins = <0 RK_PA4 1 &pcfg_pull_none>; 6138bab661aSEmmanuel Vadot }; 6148bab661aSEmmanuel Vadot }; 6158bab661aSEmmanuel Vadot}; 616