104ea3e30SMaya Matuszczyk// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 204ea3e30SMaya Matuszczyk/* 304ea3e30SMaya Matuszczyk * Copyright (c) 2019 Hardkernel Co., Ltd 404ea3e30SMaya Matuszczyk * Copyright (c) 2020 Theobroma Systems Design und Consulting GmbH 504ea3e30SMaya Matuszczyk * Copyright (c) 2022 Maya Matuszczyk <maccraft123mc@gmail.com> 604ea3e30SMaya Matuszczyk */ 704ea3e30SMaya Matuszczyk 804ea3e30SMaya Matuszczyk/dts-v1/; 904ea3e30SMaya Matuszczyk#include <dt-bindings/gpio/gpio.h> 1004ea3e30SMaya Matuszczyk#include <dt-bindings/input/input.h> 11*dd48a030SChris Morgan#include <dt-bindings/leds/common.h> 1204ea3e30SMaya Matuszczyk#include <dt-bindings/pinctrl/rockchip.h> 1304ea3e30SMaya Matuszczyk#include "rk3326.dtsi" 1404ea3e30SMaya Matuszczyk 1504ea3e30SMaya Matuszczyk/ { 1604ea3e30SMaya Matuszczyk aliases { 1704ea3e30SMaya Matuszczyk mmc0 = &sdmmc; 1804ea3e30SMaya Matuszczyk }; 1904ea3e30SMaya Matuszczyk 2004ea3e30SMaya Matuszczyk chosen { 2104ea3e30SMaya Matuszczyk stdout-path = "serial2:115200n8"; 2204ea3e30SMaya Matuszczyk }; 2304ea3e30SMaya Matuszczyk 2404ea3e30SMaya Matuszczyk backlight: backlight { 2504ea3e30SMaya Matuszczyk compatible = "pwm-backlight"; 2604ea3e30SMaya Matuszczyk power-supply = <&vcc_bl>; 2704ea3e30SMaya Matuszczyk pwms = <&pwm1 0 25000 0>; 2804ea3e30SMaya Matuszczyk }; 2904ea3e30SMaya Matuszczyk 3004ea3e30SMaya Matuszczyk builtin_gamepad: gpio-keys { 3104ea3e30SMaya Matuszczyk compatible = "gpio-keys"; 3204ea3e30SMaya Matuszczyk pinctrl-names = "default"; 3304ea3e30SMaya Matuszczyk pinctrl-0 = <&btn_pins>; 3404ea3e30SMaya Matuszczyk 3504ea3e30SMaya Matuszczyk button-sw1 { 3604ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_LOW>; 3704ea3e30SMaya Matuszczyk label = "DPAD-UP"; 3804ea3e30SMaya Matuszczyk linux,code = <BTN_DPAD_UP>; 3904ea3e30SMaya Matuszczyk }; 4004ea3e30SMaya Matuszczyk button-sw2 { 4104ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_LOW>; 4204ea3e30SMaya Matuszczyk label = "DPAD-DOWN"; 4304ea3e30SMaya Matuszczyk linux,code = <BTN_DPAD_DOWN>; 4404ea3e30SMaya Matuszczyk }; 4504ea3e30SMaya Matuszczyk button-sw3 { 4604ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_LOW>; 4704ea3e30SMaya Matuszczyk label = "DPAD-LEFT"; 4804ea3e30SMaya Matuszczyk linux,code = <BTN_DPAD_LEFT>; 4904ea3e30SMaya Matuszczyk }; 5004ea3e30SMaya Matuszczyk button-sw4 { 5104ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PB7 GPIO_ACTIVE_LOW>; 5204ea3e30SMaya Matuszczyk label = "DPAD-RIGHT"; 5304ea3e30SMaya Matuszczyk linux,code = <BTN_DPAD_RIGHT>; 5404ea3e30SMaya Matuszczyk }; 5504ea3e30SMaya Matuszczyk button-sw5 { 5604ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_LOW>; 5704ea3e30SMaya Matuszczyk label = "BTN-A"; 5804ea3e30SMaya Matuszczyk linux,code = <BTN_EAST>; 5904ea3e30SMaya Matuszczyk }; 6004ea3e30SMaya Matuszczyk button-sw6 { 6104ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PA5 GPIO_ACTIVE_LOW>; 6204ea3e30SMaya Matuszczyk label = "BTN-B"; 6304ea3e30SMaya Matuszczyk linux,code = <BTN_SOUTH>; 6404ea3e30SMaya Matuszczyk }; 6504ea3e30SMaya Matuszczyk button-sw7 { 6604ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PA6 GPIO_ACTIVE_LOW>; 6704ea3e30SMaya Matuszczyk label = "BTN-Y"; 6804ea3e30SMaya Matuszczyk linux,code = <BTN_WEST>; 6904ea3e30SMaya Matuszczyk }; 7004ea3e30SMaya Matuszczyk button-sw8 { 7104ea3e30SMaya Matuszczyk gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_LOW>; 7204ea3e30SMaya Matuszczyk label = "BTN-X"; 7304ea3e30SMaya Matuszczyk linux,code = <BTN_NORTH>; 7404ea3e30SMaya Matuszczyk }; 7504ea3e30SMaya Matuszczyk btn_f1: button-sw9 { 7604ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA0 GPIO_ACTIVE_LOW>; 7704ea3e30SMaya Matuszczyk label = "F1"; 7804ea3e30SMaya Matuszczyk linux,code = <BTN_TRIGGER_HAPPY1>; 7904ea3e30SMaya Matuszczyk }; 8004ea3e30SMaya Matuszczyk btn_f2: button-sw10 { 8104ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA1 GPIO_ACTIVE_LOW>; 8204ea3e30SMaya Matuszczyk label = "F2"; 8304ea3e30SMaya Matuszczyk linux,code = <BTN_TRIGGER_HAPPY2>; 8404ea3e30SMaya Matuszczyk }; 8504ea3e30SMaya Matuszczyk btn_f3: button-sw11 { 8604ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; 8704ea3e30SMaya Matuszczyk label = "F3"; 8804ea3e30SMaya Matuszczyk linux,code = <BTN_TRIGGER_HAPPY3>; 8904ea3e30SMaya Matuszczyk }; 9004ea3e30SMaya Matuszczyk btn_f4: button-sw12 { 9104ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>; 9204ea3e30SMaya Matuszczyk label = "F4"; 9304ea3e30SMaya Matuszczyk linux,code = <BTN_TRIGGER_HAPPY4>; 9404ea3e30SMaya Matuszczyk }; 9504ea3e30SMaya Matuszczyk btn_f5: button-sw13 { 9604ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_LOW>; 9704ea3e30SMaya Matuszczyk label = "F5"; 9804ea3e30SMaya Matuszczyk linux,code = <BTN_TRIGGER_HAPPY5>; 9904ea3e30SMaya Matuszczyk }; 10004ea3e30SMaya Matuszczyk btn_f6: button-sw14 { 10104ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA5 GPIO_ACTIVE_LOW>; 10204ea3e30SMaya Matuszczyk label = "F6"; 10304ea3e30SMaya Matuszczyk linux,code = <BTN_TRIGGER_HAPPY6>; 10404ea3e30SMaya Matuszczyk }; 10504ea3e30SMaya Matuszczyk button-sw15 { 10604ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA6 GPIO_ACTIVE_LOW>; 10704ea3e30SMaya Matuszczyk label = "TOP-LEFT"; 10804ea3e30SMaya Matuszczyk linux,code = <BTN_TL>; 10904ea3e30SMaya Matuszczyk }; 11004ea3e30SMaya Matuszczyk button-sw16 { 11104ea3e30SMaya Matuszczyk gpios = <&gpio2 RK_PA7 GPIO_ACTIVE_LOW>; 11204ea3e30SMaya Matuszczyk label = "TOP-RIGHT"; 11304ea3e30SMaya Matuszczyk linux,code = <BTN_TR>; 11404ea3e30SMaya Matuszczyk }; 11504ea3e30SMaya Matuszczyk }; 11604ea3e30SMaya Matuszczyk 117*dd48a030SChris Morgan /* led-1 is wired directly to output of always-on regulator */ 118*dd48a030SChris Morgan 119*dd48a030SChris Morgan gpio_led: gpio-leds { 12004ea3e30SMaya Matuszczyk compatible = "gpio-leds"; 12104ea3e30SMaya Matuszczyk pinctrl-names = "default"; 122*dd48a030SChris Morgan pinctrl-0 = <&red_led_pin>; 12304ea3e30SMaya Matuszczyk 124*dd48a030SChris Morgan red_led: led-3 { 125*dd48a030SChris Morgan color = <LED_COLOR_ID_RED>; 126*dd48a030SChris Morgan gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; 127*dd48a030SChris Morgan function = LED_FUNCTION_CHARGING; 128*dd48a030SChris Morgan }; 129*dd48a030SChris Morgan }; 130*dd48a030SChris Morgan 131*dd48a030SChris Morgan pwm_led: led-controller { 132*dd48a030SChris Morgan compatible = "pwm-leds"; 133*dd48a030SChris Morgan 134*dd48a030SChris Morgan blue_led: led-2 { 135*dd48a030SChris Morgan color = <LED_COLOR_ID_BLUE>; 136*dd48a030SChris Morgan function = LED_FUNCTION_STATUS; 13704ea3e30SMaya Matuszczyk linux,default-trigger = "heartbeat"; 138*dd48a030SChris Morgan max-brightness = <255>; 139*dd48a030SChris Morgan pwms = <&pwm3 0 25000 0>; 14004ea3e30SMaya Matuszczyk }; 14104ea3e30SMaya Matuszczyk }; 14204ea3e30SMaya Matuszczyk 14304ea3e30SMaya Matuszczyk rk817-sound { 14404ea3e30SMaya Matuszczyk compatible = "simple-audio-card"; 1450d434398SChris Morgan simple-audio-card,name = "rk817_int"; 14604ea3e30SMaya Matuszczyk simple-audio-card,format = "i2s"; 14704ea3e30SMaya Matuszczyk simple-audio-card,hp-det-gpio = <&gpio2 RK_PC6 GPIO_ACTIVE_HIGH>; 14804ea3e30SMaya Matuszczyk simple-audio-card,mclk-fs = <256>; 14904ea3e30SMaya Matuszczyk simple-audio-card,widgets = 15004ea3e30SMaya Matuszczyk "Microphone", "Mic Jack", 15104ea3e30SMaya Matuszczyk "Headphone", "Headphones", 15204ea3e30SMaya Matuszczyk "Speaker", "Speaker"; 15304ea3e30SMaya Matuszczyk simple-audio-card,routing = 15404ea3e30SMaya Matuszczyk "MICL", "Mic Jack", 15504ea3e30SMaya Matuszczyk "Headphones", "HPOL", 15604ea3e30SMaya Matuszczyk "Headphones", "HPOR", 15704ea3e30SMaya Matuszczyk "Speaker", "SPKO"; 15804ea3e30SMaya Matuszczyk 15904ea3e30SMaya Matuszczyk simple-audio-card,codec { 16004ea3e30SMaya Matuszczyk sound-dai = <&rk817>; 16104ea3e30SMaya Matuszczyk }; 16204ea3e30SMaya Matuszczyk 16304ea3e30SMaya Matuszczyk simple-audio-card,cpu { 16404ea3e30SMaya Matuszczyk sound-dai = <&i2s1_2ch>; 16504ea3e30SMaya Matuszczyk }; 16604ea3e30SMaya Matuszczyk }; 16704ea3e30SMaya Matuszczyk 16804ea3e30SMaya Matuszczyk vccsys: vccsys { 16904ea3e30SMaya Matuszczyk compatible = "regulator-fixed"; 17004ea3e30SMaya Matuszczyk regulator-name = "vcc3v8_sys"; 17104ea3e30SMaya Matuszczyk regulator-always-on; 17204ea3e30SMaya Matuszczyk regulator-min-microvolt = <3800000>; 17304ea3e30SMaya Matuszczyk regulator-max-microvolt = <3800000>; 17404ea3e30SMaya Matuszczyk }; 17504ea3e30SMaya Matuszczyk 17604ea3e30SMaya Matuszczyk vcc_host: vcc_host { 17704ea3e30SMaya Matuszczyk compatible = "regulator-fixed"; 17804ea3e30SMaya Matuszczyk regulator-name = "vcc_host"; 17904ea3e30SMaya Matuszczyk regulator-min-microvolt = <5000000>; 18004ea3e30SMaya Matuszczyk regulator-max-microvolt = <5000000>; 18104ea3e30SMaya Matuszczyk 18204ea3e30SMaya Matuszczyk gpio = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; 18304ea3e30SMaya Matuszczyk enable-active-high; 18404ea3e30SMaya Matuszczyk regulator-always-on; 18504ea3e30SMaya Matuszczyk regulator-boot-on; 18604ea3e30SMaya Matuszczyk vin-supply = <&usb_midu>; 18704ea3e30SMaya Matuszczyk }; 18804ea3e30SMaya Matuszczyk}; 18904ea3e30SMaya Matuszczyk 19004ea3e30SMaya Matuszczyk&cpu0 { 19104ea3e30SMaya Matuszczyk cpu-supply = <&vdd_arm>; 19204ea3e30SMaya Matuszczyk}; 19304ea3e30SMaya Matuszczyk 19404ea3e30SMaya Matuszczyk&cpu1 { 19504ea3e30SMaya Matuszczyk cpu-supply = <&vdd_arm>; 19604ea3e30SMaya Matuszczyk}; 19704ea3e30SMaya Matuszczyk 19804ea3e30SMaya Matuszczyk&cpu2 { 19904ea3e30SMaya Matuszczyk cpu-supply = <&vdd_arm>; 20004ea3e30SMaya Matuszczyk}; 20104ea3e30SMaya Matuszczyk 20204ea3e30SMaya Matuszczyk&cpu3 { 20304ea3e30SMaya Matuszczyk cpu-supply = <&vdd_arm>; 20404ea3e30SMaya Matuszczyk}; 20504ea3e30SMaya Matuszczyk 20604ea3e30SMaya Matuszczyk&cru { 20704ea3e30SMaya Matuszczyk assigned-clocks = <&cru PLL_NPLL>, 20804ea3e30SMaya Matuszczyk <&cru ACLK_BUS_PRE>, <&cru ACLK_PERI_PRE>, 20904ea3e30SMaya Matuszczyk <&cru HCLK_BUS_PRE>, <&cru HCLK_PERI_PRE>, 210b8e3a0ffSChris Morgan <&cru PCLK_BUS_PRE>, <&cru SCLK_GPU>; 21104ea3e30SMaya Matuszczyk 21204ea3e30SMaya Matuszczyk assigned-clock-rates = <1188000000>, 21304ea3e30SMaya Matuszczyk <200000000>, <200000000>, 21404ea3e30SMaya Matuszczyk <150000000>, <150000000>, 215b8e3a0ffSChris Morgan <100000000>, <200000000>; 21604ea3e30SMaya Matuszczyk}; 21704ea3e30SMaya Matuszczyk 21804ea3e30SMaya Matuszczyk&display_subsystem { 21904ea3e30SMaya Matuszczyk status = "okay"; 22004ea3e30SMaya Matuszczyk}; 22104ea3e30SMaya Matuszczyk 22204ea3e30SMaya Matuszczyk&dsi { 22304ea3e30SMaya Matuszczyk status = "okay"; 22404ea3e30SMaya Matuszczyk 22504ea3e30SMaya Matuszczyk ports { 22604ea3e30SMaya Matuszczyk mipi_out: port@1 { 22704ea3e30SMaya Matuszczyk reg = <1>; 22804ea3e30SMaya Matuszczyk 22904ea3e30SMaya Matuszczyk mipi_out_panel: endpoint { 23004ea3e30SMaya Matuszczyk remote-endpoint = <&mipi_in_panel>; 23104ea3e30SMaya Matuszczyk }; 23204ea3e30SMaya Matuszczyk }; 23304ea3e30SMaya Matuszczyk }; 23404ea3e30SMaya Matuszczyk 23504ea3e30SMaya Matuszczyk internal_display: panel@0 { 23604ea3e30SMaya Matuszczyk reg = <0>; 23704ea3e30SMaya Matuszczyk backlight = <&backlight>; 23804ea3e30SMaya Matuszczyk reset-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>; 23904ea3e30SMaya Matuszczyk rotation = <270>; 24004ea3e30SMaya Matuszczyk 24104ea3e30SMaya Matuszczyk port { 24204ea3e30SMaya Matuszczyk mipi_in_panel: endpoint { 24304ea3e30SMaya Matuszczyk remote-endpoint = <&mipi_out_panel>; 24404ea3e30SMaya Matuszczyk }; 24504ea3e30SMaya Matuszczyk }; 24604ea3e30SMaya Matuszczyk }; 24704ea3e30SMaya Matuszczyk}; 24804ea3e30SMaya Matuszczyk 24904ea3e30SMaya Matuszczyk&dsi_dphy { 25004ea3e30SMaya Matuszczyk status = "okay"; 25104ea3e30SMaya Matuszczyk}; 25204ea3e30SMaya Matuszczyk 25304ea3e30SMaya Matuszczyk&gpu { 25404ea3e30SMaya Matuszczyk mali-supply = <&vdd_logic>; 25504ea3e30SMaya Matuszczyk status = "okay"; 25604ea3e30SMaya Matuszczyk}; 25704ea3e30SMaya Matuszczyk 25804ea3e30SMaya Matuszczyk&i2c0 { 25904ea3e30SMaya Matuszczyk clock-frequency = <400000>; 26004ea3e30SMaya Matuszczyk i2c-scl-falling-time-ns = <16>; 26104ea3e30SMaya Matuszczyk i2c-scl-rising-time-ns = <280>; 26204ea3e30SMaya Matuszczyk status = "okay"; 26304ea3e30SMaya Matuszczyk 26404ea3e30SMaya Matuszczyk rk817: pmic@20 { 26504ea3e30SMaya Matuszczyk compatible = "rockchip,rk817"; 26604ea3e30SMaya Matuszczyk reg = <0x20>; 26704ea3e30SMaya Matuszczyk interrupt-parent = <&gpio0>; 26804ea3e30SMaya Matuszczyk interrupts = <RK_PB2 IRQ_TYPE_LEVEL_LOW>; 26904ea3e30SMaya Matuszczyk clock-output-names = "rk808-clkout1", "xin32k"; 27004ea3e30SMaya Matuszczyk clock-names = "mclk"; 27104ea3e30SMaya Matuszczyk clocks = <&cru SCLK_I2S1_OUT>; 27204ea3e30SMaya Matuszczyk pinctrl-names = "default"; 27304ea3e30SMaya Matuszczyk pinctrl-0 = <&pmic_int>, <&i2s1_2ch_mclk>; 27404ea3e30SMaya Matuszczyk wakeup-source; 27504ea3e30SMaya Matuszczyk #clock-cells = <1>; 27604ea3e30SMaya Matuszczyk #sound-dai-cells = <0>; 27704ea3e30SMaya Matuszczyk 27804ea3e30SMaya Matuszczyk vcc1-supply = <&vccsys>; 27904ea3e30SMaya Matuszczyk vcc2-supply = <&vccsys>; 28004ea3e30SMaya Matuszczyk vcc3-supply = <&vccsys>; 28104ea3e30SMaya Matuszczyk vcc4-supply = <&vccsys>; 28204ea3e30SMaya Matuszczyk vcc5-supply = <&vccsys>; 28304ea3e30SMaya Matuszczyk vcc6-supply = <&vccsys>; 28404ea3e30SMaya Matuszczyk vcc7-supply = <&vccsys>; 28504ea3e30SMaya Matuszczyk vcc8-supply = <&vccsys>; 28604ea3e30SMaya Matuszczyk 28704ea3e30SMaya Matuszczyk regulators { 28804ea3e30SMaya Matuszczyk vdd_logic: DCDC_REG1 { 28904ea3e30SMaya Matuszczyk regulator-name = "vdd_logic"; 29004ea3e30SMaya Matuszczyk regulator-min-microvolt = <950000>; 29104ea3e30SMaya Matuszczyk regulator-max-microvolt = <1150000>; 29204ea3e30SMaya Matuszczyk regulator-ramp-delay = <6001>; 29304ea3e30SMaya Matuszczyk regulator-always-on; 29404ea3e30SMaya Matuszczyk regulator-boot-on; 29504ea3e30SMaya Matuszczyk 29604ea3e30SMaya Matuszczyk regulator-state-mem { 29704ea3e30SMaya Matuszczyk regulator-on-in-suspend; 29804ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <950000>; 29904ea3e30SMaya Matuszczyk }; 30004ea3e30SMaya Matuszczyk }; 30104ea3e30SMaya Matuszczyk 30204ea3e30SMaya Matuszczyk vdd_arm: DCDC_REG2 { 30304ea3e30SMaya Matuszczyk regulator-name = "vdd_arm"; 30404ea3e30SMaya Matuszczyk regulator-min-microvolt = <950000>; 30504ea3e30SMaya Matuszczyk regulator-max-microvolt = <1350000>; 30604ea3e30SMaya Matuszczyk regulator-ramp-delay = <6001>; 30704ea3e30SMaya Matuszczyk regulator-always-on; 30804ea3e30SMaya Matuszczyk regulator-boot-on; 30904ea3e30SMaya Matuszczyk 31004ea3e30SMaya Matuszczyk regulator-state-mem { 31104ea3e30SMaya Matuszczyk regulator-off-in-suspend; 31204ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <950000>; 31304ea3e30SMaya Matuszczyk }; 31404ea3e30SMaya Matuszczyk }; 31504ea3e30SMaya Matuszczyk 31604ea3e30SMaya Matuszczyk vcc_ddr: DCDC_REG3 { 31704ea3e30SMaya Matuszczyk regulator-name = "vcc_ddr"; 31804ea3e30SMaya Matuszczyk regulator-always-on; 31904ea3e30SMaya Matuszczyk regulator-boot-on; 32004ea3e30SMaya Matuszczyk 32104ea3e30SMaya Matuszczyk regulator-state-mem { 32204ea3e30SMaya Matuszczyk regulator-on-in-suspend; 32304ea3e30SMaya Matuszczyk }; 32404ea3e30SMaya Matuszczyk }; 32504ea3e30SMaya Matuszczyk 32604ea3e30SMaya Matuszczyk vcc_3v3: DCDC_REG4 { 32704ea3e30SMaya Matuszczyk regulator-name = "vcc_3v3"; 32804ea3e30SMaya Matuszczyk regulator-min-microvolt = <3300000>; 32904ea3e30SMaya Matuszczyk regulator-max-microvolt = <3300000>; 33004ea3e30SMaya Matuszczyk regulator-always-on; 33104ea3e30SMaya Matuszczyk regulator-boot-on; 33204ea3e30SMaya Matuszczyk 33304ea3e30SMaya Matuszczyk regulator-state-mem { 33404ea3e30SMaya Matuszczyk regulator-off-in-suspend; 33504ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <3300000>; 33604ea3e30SMaya Matuszczyk }; 33704ea3e30SMaya Matuszczyk }; 33804ea3e30SMaya Matuszczyk 33904ea3e30SMaya Matuszczyk vcc_1v8: LDO_REG2 { 34004ea3e30SMaya Matuszczyk regulator-name = "vcc_1v8"; 34104ea3e30SMaya Matuszczyk regulator-min-microvolt = <1800000>; 34204ea3e30SMaya Matuszczyk regulator-max-microvolt = <1800000>; 34304ea3e30SMaya Matuszczyk regulator-always-on; 34404ea3e30SMaya Matuszczyk regulator-boot-on; 34504ea3e30SMaya Matuszczyk 34604ea3e30SMaya Matuszczyk regulator-state-mem { 34704ea3e30SMaya Matuszczyk regulator-on-in-suspend; 34804ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <1800000>; 34904ea3e30SMaya Matuszczyk }; 35004ea3e30SMaya Matuszczyk }; 35104ea3e30SMaya Matuszczyk 35204ea3e30SMaya Matuszczyk vdd_1v0: LDO_REG3 { 35304ea3e30SMaya Matuszczyk regulator-name = "vdd_1v0"; 35404ea3e30SMaya Matuszczyk regulator-min-microvolt = <1000000>; 35504ea3e30SMaya Matuszczyk regulator-max-microvolt = <1000000>; 35604ea3e30SMaya Matuszczyk regulator-always-on; 35704ea3e30SMaya Matuszczyk regulator-boot-on; 35804ea3e30SMaya Matuszczyk 35904ea3e30SMaya Matuszczyk regulator-state-mem { 36004ea3e30SMaya Matuszczyk regulator-on-in-suspend; 36104ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <1000000>; 36204ea3e30SMaya Matuszczyk }; 36304ea3e30SMaya Matuszczyk }; 36404ea3e30SMaya Matuszczyk 36504ea3e30SMaya Matuszczyk vcc3v3_pmu: LDO_REG4 { 36604ea3e30SMaya Matuszczyk regulator-name = "vcc3v3_pmu"; 36704ea3e30SMaya Matuszczyk regulator-min-microvolt = <3300000>; 36804ea3e30SMaya Matuszczyk regulator-max-microvolt = <3300000>; 36904ea3e30SMaya Matuszczyk regulator-always-on; 37004ea3e30SMaya Matuszczyk regulator-boot-on; 37104ea3e30SMaya Matuszczyk 37204ea3e30SMaya Matuszczyk regulator-state-mem { 37304ea3e30SMaya Matuszczyk regulator-on-in-suspend; 37404ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <3300000>; 37504ea3e30SMaya Matuszczyk }; 37604ea3e30SMaya Matuszczyk }; 37704ea3e30SMaya Matuszczyk 37804ea3e30SMaya Matuszczyk vccio_sd: LDO_REG5 { 37904ea3e30SMaya Matuszczyk regulator-name = "vccio_sd"; 38004ea3e30SMaya Matuszczyk regulator-min-microvolt = <1800000>; 38104ea3e30SMaya Matuszczyk regulator-max-microvolt = <3300000>; 38204ea3e30SMaya Matuszczyk regulator-always-on; 38304ea3e30SMaya Matuszczyk regulator-boot-on; 38404ea3e30SMaya Matuszczyk 38504ea3e30SMaya Matuszczyk regulator-state-mem { 38604ea3e30SMaya Matuszczyk regulator-on-in-suspend; 38704ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <3300000>; 38804ea3e30SMaya Matuszczyk }; 38904ea3e30SMaya Matuszczyk }; 39004ea3e30SMaya Matuszczyk 39104ea3e30SMaya Matuszczyk vcc_sd: LDO_REG6 { 39204ea3e30SMaya Matuszczyk regulator-name = "vcc_sd"; 39304ea3e30SMaya Matuszczyk regulator-min-microvolt = <3300000>; 39404ea3e30SMaya Matuszczyk regulator-max-microvolt = <3300000>; 39504ea3e30SMaya Matuszczyk regulator-boot-on; 39604ea3e30SMaya Matuszczyk 39704ea3e30SMaya Matuszczyk regulator-state-mem { 39804ea3e30SMaya Matuszczyk regulator-on-in-suspend; 39904ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <3300000>; 40004ea3e30SMaya Matuszczyk }; 40104ea3e30SMaya Matuszczyk }; 40204ea3e30SMaya Matuszczyk 40304ea3e30SMaya Matuszczyk vcc_bl: LDO_REG7 { 40404ea3e30SMaya Matuszczyk regulator-name = "vcc_bl"; 40504ea3e30SMaya Matuszczyk regulator-min-microvolt = <3300000>; 40604ea3e30SMaya Matuszczyk regulator-max-microvolt = <3300000>; 40704ea3e30SMaya Matuszczyk 40804ea3e30SMaya Matuszczyk regulator-state-mem { 40904ea3e30SMaya Matuszczyk regulator-off-in-suspend; 41004ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <3300000>; 41104ea3e30SMaya Matuszczyk }; 41204ea3e30SMaya Matuszczyk }; 41304ea3e30SMaya Matuszczyk 41404ea3e30SMaya Matuszczyk vcc_lcd: LDO_REG8 { 41504ea3e30SMaya Matuszczyk regulator-name = "vcc_lcd"; 41604ea3e30SMaya Matuszczyk regulator-min-microvolt = <2800000>; 41704ea3e30SMaya Matuszczyk regulator-max-microvolt = <2800000>; 41804ea3e30SMaya Matuszczyk 41904ea3e30SMaya Matuszczyk regulator-state-mem { 42004ea3e30SMaya Matuszczyk regulator-off-in-suspend; 42104ea3e30SMaya Matuszczyk regulator-suspend-microvolt = <2800000>; 42204ea3e30SMaya Matuszczyk }; 42304ea3e30SMaya Matuszczyk }; 42404ea3e30SMaya Matuszczyk 42504ea3e30SMaya Matuszczyk LDO_REG9 { 42604ea3e30SMaya Matuszczyk /* unused */ 42704ea3e30SMaya Matuszczyk }; 42804ea3e30SMaya Matuszczyk 42904ea3e30SMaya Matuszczyk usb_midu: BOOST { 43004ea3e30SMaya Matuszczyk regulator-name = "usb_midu"; 43104ea3e30SMaya Matuszczyk regulator-min-microvolt = <5000000>; 43204ea3e30SMaya Matuszczyk regulator-max-microvolt = <5400000>; 43304ea3e30SMaya Matuszczyk regulator-always-on; 43404ea3e30SMaya Matuszczyk regulator-boot-on; 43504ea3e30SMaya Matuszczyk }; 43604ea3e30SMaya Matuszczyk }; 43704ea3e30SMaya Matuszczyk 43804ea3e30SMaya Matuszczyk rk817_charger: charger { 43904ea3e30SMaya Matuszczyk rockchip,resistor-sense-micro-ohms = <10000>; 44004ea3e30SMaya Matuszczyk rockchip,sleep-enter-current-microamp = <300000>; 44104ea3e30SMaya Matuszczyk rockchip,sleep-filter-current-microamp = <100000>; 44204ea3e30SMaya Matuszczyk }; 44304ea3e30SMaya Matuszczyk 44404ea3e30SMaya Matuszczyk rk817_codec: codec { 44504ea3e30SMaya Matuszczyk rockchip,mic-in-differential; 44604ea3e30SMaya Matuszczyk }; 44704ea3e30SMaya Matuszczyk }; 44804ea3e30SMaya Matuszczyk}; 44904ea3e30SMaya Matuszczyk 45004ea3e30SMaya Matuszczyk/* EXT Header(P2): 7(SCL:GPIO0.C2), 8(SDA:GPIO0.C3) */ 45104ea3e30SMaya Matuszczyk&i2c1 { 45204ea3e30SMaya Matuszczyk clock-frequency = <400000>; 45304ea3e30SMaya Matuszczyk status = "okay"; 45404ea3e30SMaya Matuszczyk}; 45504ea3e30SMaya Matuszczyk 45604ea3e30SMaya Matuszczyk/* I2S 1 Channel Used */ 45704ea3e30SMaya Matuszczyk&i2s1_2ch { 45804ea3e30SMaya Matuszczyk status = "okay"; 45904ea3e30SMaya Matuszczyk}; 46004ea3e30SMaya Matuszczyk 46104ea3e30SMaya Matuszczyk&io_domains { 46204ea3e30SMaya Matuszczyk vccio1-supply = <&vcc_3v3>; 46304ea3e30SMaya Matuszczyk vccio2-supply = <&vccio_sd>; 46404ea3e30SMaya Matuszczyk vccio3-supply = <&vcc_3v3>; 46504ea3e30SMaya Matuszczyk vccio4-supply = <&vcc_3v3>; 46604ea3e30SMaya Matuszczyk vccio5-supply = <&vcc_3v3>; 46704ea3e30SMaya Matuszczyk vccio6-supply = <&vcc_3v3>; 46804ea3e30SMaya Matuszczyk status = "okay"; 46904ea3e30SMaya Matuszczyk}; 47004ea3e30SMaya Matuszczyk 47104ea3e30SMaya Matuszczyk&pmu_io_domains { 47204ea3e30SMaya Matuszczyk pmuio1-supply = <&vcc3v3_pmu>; 47304ea3e30SMaya Matuszczyk pmuio2-supply = <&vcc3v3_pmu>; 47404ea3e30SMaya Matuszczyk status = "okay"; 47504ea3e30SMaya Matuszczyk}; 47604ea3e30SMaya Matuszczyk 47704ea3e30SMaya Matuszczyk&pwm1 { 47804ea3e30SMaya Matuszczyk status = "okay"; 47904ea3e30SMaya Matuszczyk}; 48004ea3e30SMaya Matuszczyk 481*dd48a030SChris Morgan&pwm3 { 482*dd48a030SChris Morgan status = "okay"; 483*dd48a030SChris Morgan}; 484*dd48a030SChris Morgan 48504ea3e30SMaya Matuszczyk&saradc { 48604ea3e30SMaya Matuszczyk vref-supply = <&vcc_1v8>; 48704ea3e30SMaya Matuszczyk status = "okay"; 48804ea3e30SMaya Matuszczyk}; 48904ea3e30SMaya Matuszczyk 49004ea3e30SMaya Matuszczyk&sdmmc { 49104ea3e30SMaya Matuszczyk cap-sd-highspeed; 49204ea3e30SMaya Matuszczyk card-detect-delay = <200>; 49304ea3e30SMaya Matuszczyk cd-gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_LOW>; /*[> CD GPIO <]*/ 49404ea3e30SMaya Matuszczyk sd-uhs-sdr12; 49504ea3e30SMaya Matuszczyk sd-uhs-sdr25; 49604ea3e30SMaya Matuszczyk sd-uhs-sdr50; 49704ea3e30SMaya Matuszczyk sd-uhs-sdr104; 49804ea3e30SMaya Matuszczyk vmmc-supply = <&vcc_sd>; 49904ea3e30SMaya Matuszczyk vqmmc-supply = <&vccio_sd>; 50004ea3e30SMaya Matuszczyk status = "okay"; 50104ea3e30SMaya Matuszczyk}; 50204ea3e30SMaya Matuszczyk 50304ea3e30SMaya Matuszczyk&sfc { 50404ea3e30SMaya Matuszczyk pinctrl-0 = <&sfc_clk &sfc_cs0 &sfc_bus2>; 50504ea3e30SMaya Matuszczyk pinctrl-names = "default"; 50604ea3e30SMaya Matuszczyk #address-cells = <1>; 50704ea3e30SMaya Matuszczyk #size-cells = <0>; 50804ea3e30SMaya Matuszczyk status = "okay"; 50904ea3e30SMaya Matuszczyk 51004ea3e30SMaya Matuszczyk flash@0 { 51104ea3e30SMaya Matuszczyk compatible = "jedec,spi-nor"; 51204ea3e30SMaya Matuszczyk reg = <0>; 51304ea3e30SMaya Matuszczyk spi-max-frequency = <108000000>; 51404ea3e30SMaya Matuszczyk spi-rx-bus-width = <2>; 51504ea3e30SMaya Matuszczyk spi-tx-bus-width = <1>; 51604ea3e30SMaya Matuszczyk }; 51704ea3e30SMaya Matuszczyk}; 51804ea3e30SMaya Matuszczyk 51904ea3e30SMaya Matuszczyk&tsadc { 52004ea3e30SMaya Matuszczyk status = "okay"; 52104ea3e30SMaya Matuszczyk}; 52204ea3e30SMaya Matuszczyk 52304ea3e30SMaya Matuszczyk&u2phy { 52404ea3e30SMaya Matuszczyk status = "okay"; 52504ea3e30SMaya Matuszczyk 52604ea3e30SMaya Matuszczyk u2phy_host: host-port { 52704ea3e30SMaya Matuszczyk status = "okay"; 52804ea3e30SMaya Matuszczyk }; 52904ea3e30SMaya Matuszczyk 53004ea3e30SMaya Matuszczyk u2phy_otg: otg-port { 53104ea3e30SMaya Matuszczyk status = "disabled"; 53204ea3e30SMaya Matuszczyk }; 53304ea3e30SMaya Matuszczyk}; 53404ea3e30SMaya Matuszczyk 53504ea3e30SMaya Matuszczyk&usb20_otg { 53604ea3e30SMaya Matuszczyk status = "okay"; 53704ea3e30SMaya Matuszczyk}; 53804ea3e30SMaya Matuszczyk 53904ea3e30SMaya Matuszczyk/* EXT Header(P2): 2(RXD:GPIO1.C0),3(TXD:.C1),4(CTS:.C2),5(RTS:.C3) */ 54004ea3e30SMaya Matuszczyk&uart1 { 54104ea3e30SMaya Matuszczyk pinctrl-names = "default"; 54204ea3e30SMaya Matuszczyk pinctrl-0 = <&uart1_xfer &uart1_cts>; 54304ea3e30SMaya Matuszczyk status = "okay"; 54404ea3e30SMaya Matuszczyk}; 54504ea3e30SMaya Matuszczyk 54604ea3e30SMaya Matuszczyk&uart2 { 54704ea3e30SMaya Matuszczyk pinctrl-names = "default"; 54804ea3e30SMaya Matuszczyk pinctrl-0 = <&uart2m1_xfer>; 54904ea3e30SMaya Matuszczyk status = "okay"; 55004ea3e30SMaya Matuszczyk}; 55104ea3e30SMaya Matuszczyk 55204ea3e30SMaya Matuszczyk&vopb { 55304ea3e30SMaya Matuszczyk status = "okay"; 55404ea3e30SMaya Matuszczyk}; 55504ea3e30SMaya Matuszczyk 55604ea3e30SMaya Matuszczyk&vopb_mmu { 55704ea3e30SMaya Matuszczyk status = "okay"; 55804ea3e30SMaya Matuszczyk}; 55904ea3e30SMaya Matuszczyk 56004ea3e30SMaya Matuszczyk&pinctrl { 56104ea3e30SMaya Matuszczyk btns { 56204ea3e30SMaya Matuszczyk btn_pins: btn-pins { 56304ea3e30SMaya Matuszczyk rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 56404ea3e30SMaya Matuszczyk <1 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 56504ea3e30SMaya Matuszczyk <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 56604ea3e30SMaya Matuszczyk <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>, 56704ea3e30SMaya Matuszczyk <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>, 56804ea3e30SMaya Matuszczyk <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>, 56904ea3e30SMaya Matuszczyk <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>, 57004ea3e30SMaya Matuszczyk <1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>, 57104ea3e30SMaya Matuszczyk <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>, 57204ea3e30SMaya Matuszczyk <2 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>, 57304ea3e30SMaya Matuszczyk <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 57404ea3e30SMaya Matuszczyk <2 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>, 57504ea3e30SMaya Matuszczyk <2 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, 57604ea3e30SMaya Matuszczyk <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 57704ea3e30SMaya Matuszczyk <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 57804ea3e30SMaya Matuszczyk <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; 57904ea3e30SMaya Matuszczyk }; 58004ea3e30SMaya Matuszczyk }; 58104ea3e30SMaya Matuszczyk 58204ea3e30SMaya Matuszczyk headphone { 58304ea3e30SMaya Matuszczyk hp_det: hp-det { 58404ea3e30SMaya Matuszczyk rockchip,pins = <2 RK_PC6 RK_FUNC_GPIO &pcfg_pull_down>; 58504ea3e30SMaya Matuszczyk }; 58604ea3e30SMaya Matuszczyk }; 58704ea3e30SMaya Matuszczyk 58804ea3e30SMaya Matuszczyk leds { 589*dd48a030SChris Morgan red_led_pin: red-led-pin { 590*dd48a030SChris Morgan rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 59104ea3e30SMaya Matuszczyk }; 59204ea3e30SMaya Matuszczyk }; 59304ea3e30SMaya Matuszczyk 59404ea3e30SMaya Matuszczyk pmic { 59504ea3e30SMaya Matuszczyk dc_det: dc-det { 59604ea3e30SMaya Matuszczyk rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 59704ea3e30SMaya Matuszczyk }; 59804ea3e30SMaya Matuszczyk 59904ea3e30SMaya Matuszczyk pmic_int: pmic-int { 60004ea3e30SMaya Matuszczyk rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>; 60104ea3e30SMaya Matuszczyk }; 60204ea3e30SMaya Matuszczyk 60304ea3e30SMaya Matuszczyk soc_slppin_gpio: soc_slppin_gpio { 60404ea3e30SMaya Matuszczyk rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_output_low>; 60504ea3e30SMaya Matuszczyk }; 60604ea3e30SMaya Matuszczyk 60704ea3e30SMaya Matuszczyk soc_slppin_rst: soc_slppin_rst { 60804ea3e30SMaya Matuszczyk rockchip,pins = <0 RK_PA4 2 &pcfg_pull_none>; 60904ea3e30SMaya Matuszczyk }; 61004ea3e30SMaya Matuszczyk 61104ea3e30SMaya Matuszczyk soc_slppin_slp: soc_slppin_slp { 61204ea3e30SMaya Matuszczyk rockchip,pins = <0 RK_PA4 1 &pcfg_pull_none>; 61304ea3e30SMaya Matuszczyk }; 61404ea3e30SMaya Matuszczyk }; 61504ea3e30SMaya Matuszczyk}; 616