156198acdSHeiko Stuebner// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 256198acdSHeiko Stuebner/* 356198acdSHeiko Stuebner * Copyright (c) 2025 Cherry Embedded Solutions GmbH 456198acdSHeiko Stuebner */ 556198acdSHeiko Stuebner 656198acdSHeiko Stuebner/dts-v1/; 756198acdSHeiko Stuebner#include <dt-bindings/gpio/gpio.h> 856198acdSHeiko Stuebner#include <dt-bindings/input/input.h> 956198acdSHeiko Stuebner#include <dt-bindings/pinctrl/rockchip.h> 1056198acdSHeiko Stuebner#include "px30.dtsi" 1156198acdSHeiko Stuebner 1256198acdSHeiko Stuebner/ { 1356198acdSHeiko Stuebner aliases { 1456198acdSHeiko Stuebner mmc0 = &emmc; 1556198acdSHeiko Stuebner }; 1656198acdSHeiko Stuebner 1756198acdSHeiko Stuebner chosen { 1856198acdSHeiko Stuebner stdout-path = "serial5:115200n8"; 1956198acdSHeiko Stuebner }; 2056198acdSHeiko Stuebner 2156198acdSHeiko Stuebner backlight: backlight { 2256198acdSHeiko Stuebner compatible = "pwm-backlight"; 2356198acdSHeiko Stuebner power-supply = <&vcc5v0_sys>; 2456198acdSHeiko Stuebner pwms = <&pwm0 0 25000 0>; 2556198acdSHeiko Stuebner }; 2656198acdSHeiko Stuebner 2756198acdSHeiko Stuebner beeper { 2856198acdSHeiko Stuebner compatible = "pwm-beeper"; 2956198acdSHeiko Stuebner pwms = <&pwm1 0 1000 0>; 3056198acdSHeiko Stuebner }; 3156198acdSHeiko Stuebner 3256198acdSHeiko Stuebner emmc_pwrseq: emmc-pwrseq { 3356198acdSHeiko Stuebner compatible = "mmc-pwrseq-emmc"; 3456198acdSHeiko Stuebner pinctrl-0 = <&emmc_reset>; 3556198acdSHeiko Stuebner pinctrl-names = "default"; 3656198acdSHeiko Stuebner reset-gpios = <&gpio1 RK_PB3 GPIO_ACTIVE_HIGH>; 3756198acdSHeiko Stuebner }; 3856198acdSHeiko Stuebner 3956198acdSHeiko Stuebner gpio-leds { 4056198acdSHeiko Stuebner compatible = "gpio-leds"; 4156198acdSHeiko Stuebner pinctrl-names = "default"; 4256198acdSHeiko Stuebner pinctrl-0 = <&debug_led_pin>, <&heartbeat_led_pin>; 4356198acdSHeiko Stuebner 4456198acdSHeiko Stuebner /* 4556198acdSHeiko Stuebner * LED2 on the PCB, left of the USB-C connector. 4656198acdSHeiko Stuebner * Typically NOT populated. 4756198acdSHeiko Stuebner */ 4856198acdSHeiko Stuebner debug: led-0 { 4956198acdSHeiko Stuebner label = "debug"; 5056198acdSHeiko Stuebner gpios = <&gpio3 RK_PC3 GPIO_ACTIVE_HIGH>; 5156198acdSHeiko Stuebner linux,default-trigger = "none"; 5256198acdSHeiko Stuebner }; 5356198acdSHeiko Stuebner 5456198acdSHeiko Stuebner /* 5556198acdSHeiko Stuebner * LED14 on the PCB, left of the PX30 SoC. 5656198acdSHeiko Stuebner * Typically NOT populated. 5756198acdSHeiko Stuebner */ 5856198acdSHeiko Stuebner heartbeat: led-1 { 5956198acdSHeiko Stuebner label = "heartbeat"; 6056198acdSHeiko Stuebner gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>; 6156198acdSHeiko Stuebner linux,default-trigger = "heartbeat"; 6256198acdSHeiko Stuebner }; 6356198acdSHeiko Stuebner }; 6456198acdSHeiko Stuebner 6556198acdSHeiko Stuebner vcc5v0_sys: regulator-vccsys { 6656198acdSHeiko Stuebner compatible = "regulator-fixed"; 6756198acdSHeiko Stuebner regulator-name = "vcc5v0_sys"; 6856198acdSHeiko Stuebner regulator-always-on; 6956198acdSHeiko Stuebner regulator-boot-on; 7056198acdSHeiko Stuebner regulator-min-microvolt = <5000000>; 7156198acdSHeiko Stuebner regulator-max-microvolt = <5000000>; 7256198acdSHeiko Stuebner }; 7356198acdSHeiko Stuebner 7456198acdSHeiko Stuebner vcc_cam_avdd: regulator-vcc-cam-avdd { 7556198acdSHeiko Stuebner compatible = "regulator-fixed"; 7656198acdSHeiko Stuebner regulator-name = "vcc_cam_avdd"; 7756198acdSHeiko Stuebner gpio = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>; 7856198acdSHeiko Stuebner pinctrl-names = "default"; 7956198acdSHeiko Stuebner pinctrl-0 = <&cam_avdd_en>; 8056198acdSHeiko Stuebner regulator-min-microvolt = <2800000>; 8156198acdSHeiko Stuebner regulator-max-microvolt = <2800000>; 8256198acdSHeiko Stuebner vin-supply = <&vcc_2v8>; 8356198acdSHeiko Stuebner }; 8456198acdSHeiko Stuebner 8556198acdSHeiko Stuebner vcc_cam_dovdd: regulator-vcc-cam-dovdd { 8656198acdSHeiko Stuebner compatible = "regulator-fixed"; 8756198acdSHeiko Stuebner regulator-name = "vcc_cam_dovdd"; 8856198acdSHeiko Stuebner gpio = <&gpio3 RK_PC1 GPIO_ACTIVE_LOW>; 8956198acdSHeiko Stuebner pinctrl-names = "default"; 9056198acdSHeiko Stuebner pinctrl-0 = <&cam_dovdd_en>; 9156198acdSHeiko Stuebner regulator-min-microvolt = <1800000>; 9256198acdSHeiko Stuebner regulator-max-microvolt = <1800000>; 9356198acdSHeiko Stuebner vin-supply = <&vcc_1v8>; 9456198acdSHeiko Stuebner }; 9556198acdSHeiko Stuebner 9656198acdSHeiko Stuebner vcc_cam_dvdd: regulator-vcc-cam-dvdd { 9756198acdSHeiko Stuebner compatible = "regulator-fixed"; 9856198acdSHeiko Stuebner regulator-name = "vcc_cam_dvdd"; 9956198acdSHeiko Stuebner gpio = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>; 10056198acdSHeiko Stuebner enable-active-high; 10156198acdSHeiko Stuebner pinctrl-names = "default"; 10256198acdSHeiko Stuebner pinctrl-0 = <&cam_dvdd_en>; 10356198acdSHeiko Stuebner regulator-min-microvolt = <1200000>; 10456198acdSHeiko Stuebner regulator-max-microvolt = <1200000>; 10556198acdSHeiko Stuebner vin-supply = <&vcc_3v3>; 10656198acdSHeiko Stuebner }; 10756198acdSHeiko Stuebner 10856198acdSHeiko Stuebner vcc_lens_afvdd: regulator-vcc-lens-afvdd { 10956198acdSHeiko Stuebner compatible = "regulator-fixed"; 11056198acdSHeiko Stuebner regulator-name = "vcc_lens_afvdd"; 11156198acdSHeiko Stuebner gpio = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>; 11256198acdSHeiko Stuebner pinctrl-names = "default"; 11356198acdSHeiko Stuebner pinctrl-0 = <&cam_afvdd_en>; 11456198acdSHeiko Stuebner regulator-min-microvolt = <2800000>; 11556198acdSHeiko Stuebner regulator-max-microvolt = <2800000>; 11656198acdSHeiko Stuebner vin-supply = <&vcc_2v8>; 11756198acdSHeiko Stuebner }; 11856198acdSHeiko Stuebner}; 11956198acdSHeiko Stuebner 12056198acdSHeiko Stuebner&cpu0 { 12156198acdSHeiko Stuebner cpu-supply = <&vdd_arm>; 12256198acdSHeiko Stuebner}; 12356198acdSHeiko Stuebner 12456198acdSHeiko Stuebner&cpu1 { 12556198acdSHeiko Stuebner cpu-supply = <&vdd_arm>; 12656198acdSHeiko Stuebner}; 12756198acdSHeiko Stuebner 12856198acdSHeiko Stuebner&cpu2 { 12956198acdSHeiko Stuebner cpu-supply = <&vdd_arm>; 13056198acdSHeiko Stuebner}; 13156198acdSHeiko Stuebner 13256198acdSHeiko Stuebner&cpu3 { 13356198acdSHeiko Stuebner cpu-supply = <&vdd_arm>; 13456198acdSHeiko Stuebner}; 13556198acdSHeiko Stuebner 13656198acdSHeiko Stuebner&csi_dphy { 13756198acdSHeiko Stuebner status = "okay"; 13856198acdSHeiko Stuebner}; 13956198acdSHeiko Stuebner 14056198acdSHeiko Stuebner&display_subsystem { 14156198acdSHeiko Stuebner status = "okay"; 14256198acdSHeiko Stuebner}; 14356198acdSHeiko Stuebner 14456198acdSHeiko Stuebner&dsi_dphy { 14556198acdSHeiko Stuebner status = "okay"; 14656198acdSHeiko Stuebner}; 14756198acdSHeiko Stuebner 14856198acdSHeiko Stuebner&emmc { 14956198acdSHeiko Stuebner bus-width = <8>; 15056198acdSHeiko Stuebner cap-mmc-highspeed; 15156198acdSHeiko Stuebner /* 15256198acdSHeiko Stuebner * For hs200 support, U-Boot would have to set the RK809 DCDC4 15356198acdSHeiko Stuebner * rail to 1.8V from the default of 3.0V. It doesn't do that on 15456198acdSHeiko Stuebner * devices out in the field, so disable hs200. 15556198acdSHeiko Stuebner * mmc-hs200-1_8v; 15656198acdSHeiko Stuebner */ 15756198acdSHeiko Stuebner mmc-pwrseq = <&emmc_pwrseq>; 15856198acdSHeiko Stuebner non-removable; 15956198acdSHeiko Stuebner vmmc-supply = <&vcc_3v3>; 16056198acdSHeiko Stuebner vqmmc-supply = <&vcc_emmc>; 16156198acdSHeiko Stuebner status = "okay"; 16256198acdSHeiko Stuebner}; 16356198acdSHeiko Stuebner 16456198acdSHeiko Stuebner&gpu { 16556198acdSHeiko Stuebner mali-supply = <&vdd_log>; 16656198acdSHeiko Stuebner status = "okay"; 16756198acdSHeiko Stuebner}; 16856198acdSHeiko Stuebner 16956198acdSHeiko Stuebner/* I2C0 = PMIC, Touchscreen */ 17056198acdSHeiko Stuebner&i2c0 { 17156198acdSHeiko Stuebner status = "okay"; 17256198acdSHeiko Stuebner 17356198acdSHeiko Stuebner touchscreen@14 { 17456198acdSHeiko Stuebner compatible = "goodix,gt911"; 17556198acdSHeiko Stuebner reg = <0x14>; 17656198acdSHeiko Stuebner AVDD28-supply = <&vcc_2v8>; 17756198acdSHeiko Stuebner interrupt-parent = <&gpio0>; 17856198acdSHeiko Stuebner interrupts = <RK_PA1 IRQ_TYPE_LEVEL_LOW>; 17956198acdSHeiko Stuebner irq-gpios = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>; 18056198acdSHeiko Stuebner pinctrl-names = "default"; 18156198acdSHeiko Stuebner pinctrl-0 = <&tch_int &tch_rst>; 18256198acdSHeiko Stuebner reset-gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; 18356198acdSHeiko Stuebner VDDIO-supply = <&vcc_3v3>; 18456198acdSHeiko Stuebner }; 18556198acdSHeiko Stuebner 18656198acdSHeiko Stuebner rk809: pmic@20 { 18756198acdSHeiko Stuebner compatible = "rockchip,rk809"; 18856198acdSHeiko Stuebner reg = <0x20>; 18956198acdSHeiko Stuebner #clock-cells = <0>; 19056198acdSHeiko Stuebner clock-output-names = "xin32k"; 19156198acdSHeiko Stuebner interrupt-parent = <&gpio0>; 19256198acdSHeiko Stuebner interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>; 19356198acdSHeiko Stuebner pinctrl-names = "default"; 19456198acdSHeiko Stuebner pinctrl-0 = <&pmic_int>; 19556198acdSHeiko Stuebner system-power-controller; 19656198acdSHeiko Stuebner wakeup-source; 19756198acdSHeiko Stuebner 19856198acdSHeiko Stuebner vcc1-supply = <&vcc5v0_sys>; 19956198acdSHeiko Stuebner vcc2-supply = <&vcc5v0_sys>; 20056198acdSHeiko Stuebner vcc3-supply = <&vcc5v0_sys>; 20156198acdSHeiko Stuebner vcc4-supply = <&vcc5v0_sys>; 20256198acdSHeiko Stuebner vcc5-supply = <&vcc_3v3>; 20356198acdSHeiko Stuebner vcc6-supply = <&vcc_3v3>; 20456198acdSHeiko Stuebner vcc7-supply = <&vcc_3v3>; 20556198acdSHeiko Stuebner vcc9-supply = <&vcc5v0_sys>; 20656198acdSHeiko Stuebner 20756198acdSHeiko Stuebner regulators { 20856198acdSHeiko Stuebner vdd_log: DCDC_REG1 { 20956198acdSHeiko Stuebner regulator-name = "vdd_log"; 21056198acdSHeiko Stuebner regulator-always-on; 21156198acdSHeiko Stuebner regulator-boot-on; 21256198acdSHeiko Stuebner regulator-min-microvolt = <950000>; 21356198acdSHeiko Stuebner regulator-max-microvolt = <1350000>; 21456198acdSHeiko Stuebner regulator-ramp-delay = <6001>; 21556198acdSHeiko Stuebner 21656198acdSHeiko Stuebner regulator-state-mem { 21756198acdSHeiko Stuebner regulator-on-in-suspend; 21856198acdSHeiko Stuebner regulator-suspend-microvolt = <950000>; 21956198acdSHeiko Stuebner }; 22056198acdSHeiko Stuebner }; 22156198acdSHeiko Stuebner 22256198acdSHeiko Stuebner vdd_arm: DCDC_REG2 { 22356198acdSHeiko Stuebner regulator-name = "vdd_arm"; 22456198acdSHeiko Stuebner regulator-always-on; 22556198acdSHeiko Stuebner regulator-boot-on; 22656198acdSHeiko Stuebner regulator-min-microvolt = <950000>; 22756198acdSHeiko Stuebner regulator-max-microvolt = <1350000>; 22856198acdSHeiko Stuebner regulator-ramp-delay = <6001>; 22956198acdSHeiko Stuebner 23056198acdSHeiko Stuebner regulator-state-mem { 23156198acdSHeiko Stuebner regulator-off-in-suspend; 23256198acdSHeiko Stuebner regulator-suspend-microvolt = <950000>; 23356198acdSHeiko Stuebner }; 23456198acdSHeiko Stuebner }; 23556198acdSHeiko Stuebner 23656198acdSHeiko Stuebner vcc_ddr: DCDC_REG3 { 23756198acdSHeiko Stuebner regulator-name = "vcc_ddr"; 23856198acdSHeiko Stuebner regulator-always-on; 23956198acdSHeiko Stuebner regulator-boot-on; 24056198acdSHeiko Stuebner 24156198acdSHeiko Stuebner regulator-state-mem { 24256198acdSHeiko Stuebner regulator-on-in-suspend; 24356198acdSHeiko Stuebner }; 24456198acdSHeiko Stuebner }; 24556198acdSHeiko Stuebner 24656198acdSHeiko Stuebner vcc_3v0_1v8: vcc_emmc: DCDC_REG4 { 24756198acdSHeiko Stuebner regulator-name = "vcc_3v0_1v8"; 24856198acdSHeiko Stuebner regulator-always-on; 24956198acdSHeiko Stuebner regulator-boot-on; 25056198acdSHeiko Stuebner regulator-min-microvolt = <3000000>; 25156198acdSHeiko Stuebner regulator-max-microvolt = <3000000>; 25256198acdSHeiko Stuebner 25356198acdSHeiko Stuebner regulator-state-mem { 25456198acdSHeiko Stuebner regulator-on-in-suspend; 25556198acdSHeiko Stuebner regulator-suspend-microvolt = <3000000>; 25656198acdSHeiko Stuebner }; 25756198acdSHeiko Stuebner }; 25856198acdSHeiko Stuebner 25956198acdSHeiko Stuebner vcc_3v3: DCDC_REG5 { 26056198acdSHeiko Stuebner regulator-name = "vcc_3v3"; 26156198acdSHeiko Stuebner regulator-always-on; 26256198acdSHeiko Stuebner regulator-boot-on; 26356198acdSHeiko Stuebner regulator-min-microvolt = <3300000>; 26456198acdSHeiko Stuebner regulator-max-microvolt = <3300000>; 26556198acdSHeiko Stuebner 26656198acdSHeiko Stuebner regulator-state-mem { 26756198acdSHeiko Stuebner regulator-on-in-suspend; 26856198acdSHeiko Stuebner regulator-suspend-microvolt = <3300000>; 26956198acdSHeiko Stuebner }; 27056198acdSHeiko Stuebner }; 27156198acdSHeiko Stuebner 27256198acdSHeiko Stuebner vcc_1v8: LDO_REG2 { 27356198acdSHeiko Stuebner regulator-name = "vcc_1v8"; 27456198acdSHeiko Stuebner regulator-always-on; 27556198acdSHeiko Stuebner regulator-boot-on; 27656198acdSHeiko Stuebner regulator-min-microvolt = <1800000>; 27756198acdSHeiko Stuebner regulator-max-microvolt = <1800000>; 27856198acdSHeiko Stuebner 27956198acdSHeiko Stuebner regulator-state-mem { 28056198acdSHeiko Stuebner regulator-on-in-suspend; 28156198acdSHeiko Stuebner regulator-suspend-microvolt = <1800000>; 28256198acdSHeiko Stuebner }; 28356198acdSHeiko Stuebner }; 28456198acdSHeiko Stuebner 28556198acdSHeiko Stuebner vcc_1v0: LDO_REG3 { 28656198acdSHeiko Stuebner regulator-name = "vcc_1v0"; 28756198acdSHeiko Stuebner regulator-always-on; 28856198acdSHeiko Stuebner regulator-boot-on; 28956198acdSHeiko Stuebner regulator-min-microvolt = <1000000>; 29056198acdSHeiko Stuebner regulator-max-microvolt = <1000000>; 29156198acdSHeiko Stuebner 29256198acdSHeiko Stuebner regulator-state-mem { 29356198acdSHeiko Stuebner regulator-on-in-suspend; 29456198acdSHeiko Stuebner regulator-suspend-microvolt = <1000000>; 29556198acdSHeiko Stuebner }; 29656198acdSHeiko Stuebner }; 29756198acdSHeiko Stuebner 29856198acdSHeiko Stuebner vcc_2v8: LDO_REG4 { 29956198acdSHeiko Stuebner regulator-name = "vcc_2v8"; 30056198acdSHeiko Stuebner regulator-always-on; 30156198acdSHeiko Stuebner regulator-boot-on; 30256198acdSHeiko Stuebner regulator-min-microvolt = <2800000>; 30356198acdSHeiko Stuebner regulator-max-microvolt = <2800000>; 30456198acdSHeiko Stuebner 30556198acdSHeiko Stuebner regulator-state-mem { 30656198acdSHeiko Stuebner regulator-off-in-suspend; 30756198acdSHeiko Stuebner regulator-suspend-microvolt = <2800000>; 30856198acdSHeiko Stuebner }; 30956198acdSHeiko Stuebner }; 31056198acdSHeiko Stuebner 31156198acdSHeiko Stuebner vccio_sd: LDO_REG5 { 31256198acdSHeiko Stuebner regulator-name = "vccio_sd"; 31356198acdSHeiko Stuebner regulator-always-on; 31456198acdSHeiko Stuebner regulator-boot-on; 31556198acdSHeiko Stuebner regulator-min-microvolt = <3000000>; 31656198acdSHeiko Stuebner regulator-max-microvolt = <3000000>; 31756198acdSHeiko Stuebner 31856198acdSHeiko Stuebner regulator-state-mem { 31956198acdSHeiko Stuebner regulator-on-in-suspend; 32056198acdSHeiko Stuebner regulator-suspend-microvolt = <3000000>; 32156198acdSHeiko Stuebner }; 32256198acdSHeiko Stuebner }; 32356198acdSHeiko Stuebner 32456198acdSHeiko Stuebner vcc_sdio: LDO_REG6 { 32556198acdSHeiko Stuebner regulator-name = "vcc_sdio"; 32656198acdSHeiko Stuebner regulator-always-on; 32756198acdSHeiko Stuebner regulator-boot-on; 32856198acdSHeiko Stuebner regulator-min-microvolt = <1800000>; 32956198acdSHeiko Stuebner regulator-max-microvolt = <1800000>; 33056198acdSHeiko Stuebner 33156198acdSHeiko Stuebner regulator-state-mem { 33256198acdSHeiko Stuebner regulator-on-in-suspend; 33356198acdSHeiko Stuebner regulator-suspend-microvolt = <1800000>; 33456198acdSHeiko Stuebner }; 33556198acdSHeiko Stuebner }; 33656198acdSHeiko Stuebner 33756198acdSHeiko Stuebner vcc_lcd: LDO_REG7 { 33856198acdSHeiko Stuebner regulator-name = "vcc_lcd"; 33956198acdSHeiko Stuebner regulator-always-on; 34056198acdSHeiko Stuebner regulator-boot-on; 34156198acdSHeiko Stuebner regulator-min-microvolt = <1000000>; 34256198acdSHeiko Stuebner regulator-max-microvolt = <1000000>; 34356198acdSHeiko Stuebner 34456198acdSHeiko Stuebner regulator-state-mem { 34556198acdSHeiko Stuebner regulator-off-in-suspend; 34656198acdSHeiko Stuebner regulator-suspend-microvolt = <1000000>; 34756198acdSHeiko Stuebner }; 34856198acdSHeiko Stuebner }; 34956198acdSHeiko Stuebner 35056198acdSHeiko Stuebner vcc_1v8_lcd: LDO_REG8 { 35156198acdSHeiko Stuebner regulator-name = "vcc_1v8_lcd"; 35256198acdSHeiko Stuebner regulator-always-on; 35356198acdSHeiko Stuebner regulator-boot-on; 35456198acdSHeiko Stuebner regulator-min-microvolt = <1800000>; 35556198acdSHeiko Stuebner regulator-max-microvolt = <1800000>; 35656198acdSHeiko Stuebner 35756198acdSHeiko Stuebner regulator-state-mem { 35856198acdSHeiko Stuebner regulator-on-in-suspend; 35956198acdSHeiko Stuebner regulator-suspend-microvolt = <1800000>; 36056198acdSHeiko Stuebner }; 36156198acdSHeiko Stuebner }; 36256198acdSHeiko Stuebner 36356198acdSHeiko Stuebner vcca_1v8: LDO_REG9 { 36456198acdSHeiko Stuebner regulator-name = "vcca_1v8"; 36556198acdSHeiko Stuebner regulator-always-on; 36656198acdSHeiko Stuebner regulator-boot-on; 36756198acdSHeiko Stuebner regulator-min-microvolt = <1800000>; 36856198acdSHeiko Stuebner regulator-max-microvolt = <1800000>; 36956198acdSHeiko Stuebner 37056198acdSHeiko Stuebner regulator-state-mem { 37156198acdSHeiko Stuebner regulator-off-in-suspend; 37256198acdSHeiko Stuebner regulator-suspend-microvolt = <1800000>; 37356198acdSHeiko Stuebner }; 37456198acdSHeiko Stuebner }; 37556198acdSHeiko Stuebner }; 37656198acdSHeiko Stuebner }; 37756198acdSHeiko Stuebner}; 37856198acdSHeiko Stuebner 37956198acdSHeiko Stuebner&i2c1 { 38056198acdSHeiko Stuebner clock-frequency = <100000>; 38156198acdSHeiko Stuebner status = "okay"; 38256198acdSHeiko Stuebner}; 38356198acdSHeiko Stuebner 38456198acdSHeiko Stuebner/* I2C2 = Accelerometer + Camera */ 38556198acdSHeiko Stuebner&i2c2 { 38656198acdSHeiko Stuebner /* MEMSIC MXC4005 accelerometer is rated for I2C Fast Mode (<=400KHz) */ 38756198acdSHeiko Stuebner /* OmniVision OV5675 camera is rated for I2C Fast Mode (<=400KHz) */ 38856198acdSHeiko Stuebner clock-frequency = <400000>; 38956198acdSHeiko Stuebner status = "okay"; 39056198acdSHeiko Stuebner 39156198acdSHeiko Stuebner focus: focus@c { 39256198acdSHeiko Stuebner compatible = "dongwoon,dw9714"; 39356198acdSHeiko Stuebner reg = <0xc>; 39456198acdSHeiko Stuebner vcc-supply = <&vcc_lens_afvdd>; 39556198acdSHeiko Stuebner }; 39656198acdSHeiko Stuebner 39756198acdSHeiko Stuebner accel@15 { 39856198acdSHeiko Stuebner compatible = "memsic,mxc4005"; 39956198acdSHeiko Stuebner reg = <0x15>; 40056198acdSHeiko Stuebner interrupt-parent = <&gpio2>; 40156198acdSHeiko Stuebner interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>; 40256198acdSHeiko Stuebner pinctrl-names = "default"; 40356198acdSHeiko Stuebner pinctrl-0 = <&accel_int>; 40456198acdSHeiko Stuebner }; 40556198acdSHeiko Stuebner 40656198acdSHeiko Stuebner camera@36 { 40756198acdSHeiko Stuebner compatible = "ovti,ov5675"; 40856198acdSHeiko Stuebner reg = <0x36>; 40956198acdSHeiko Stuebner clocks = <&cru SCLK_CIF_OUT>; 41056198acdSHeiko Stuebner assigned-clocks = <&cru SCLK_CIF_OUT>; 41156198acdSHeiko Stuebner assigned-clock-rates = <19200000>; 41256198acdSHeiko Stuebner avdd-supply = <&vcc_cam_avdd>; 41356198acdSHeiko Stuebner dvdd-supply = <&vcc_cam_dvdd>; 41456198acdSHeiko Stuebner dovdd-supply = <&vcc_cam_dovdd>; 41556198acdSHeiko Stuebner lens-focus = <&focus>; 41656198acdSHeiko Stuebner orientation = <0>; 41756198acdSHeiko Stuebner pinctrl-names = "default"; 41856198acdSHeiko Stuebner pinctrl-0 = <&cif_clkout_m0 &cam_pwdn>; 41956198acdSHeiko Stuebner reset-gpios = <&gpio2 RK_PB0 GPIO_ACTIVE_LOW>; 42056198acdSHeiko Stuebner rotation = <0>; 42156198acdSHeiko Stuebner 42256198acdSHeiko Stuebner port { 42356198acdSHeiko Stuebner ucam_out: endpoint { 42456198acdSHeiko Stuebner remote-endpoint = <&mipi_in_ucam>; 42556198acdSHeiko Stuebner data-lanes = <1 2>; 42656198acdSHeiko Stuebner link-frequencies = /bits/ 64 <450000000>; 42756198acdSHeiko Stuebner }; 42856198acdSHeiko Stuebner }; 42956198acdSHeiko Stuebner }; 43056198acdSHeiko Stuebner}; 43156198acdSHeiko Stuebner 43256198acdSHeiko Stuebner&io_domains { 43356198acdSHeiko Stuebner vccio1-supply = <&vcc_sdio>; 43456198acdSHeiko Stuebner vccio2-supply = <&vccio_sd>; 43556198acdSHeiko Stuebner vccio3-supply = <&vcc_1v8>; 43656198acdSHeiko Stuebner vccio4-supply = <&vcc_3v3>; 43756198acdSHeiko Stuebner vccio5-supply = <&vcc_3v3>; 43856198acdSHeiko Stuebner vccio6-supply = <&vcc_emmc>; 43956198acdSHeiko Stuebner status = "okay"; 44056198acdSHeiko Stuebner}; 44156198acdSHeiko Stuebner 44256198acdSHeiko Stuebner&isp { 44356198acdSHeiko Stuebner status = "okay"; 44456198acdSHeiko Stuebner 44556198acdSHeiko Stuebner ports { 44656198acdSHeiko Stuebner port@0 { 447*5ddb2d46SQuentin Schulz mipi_in_ucam: endpoint { 44856198acdSHeiko Stuebner data-lanes = <1 2>; 44956198acdSHeiko Stuebner remote-endpoint = <&ucam_out>; 45056198acdSHeiko Stuebner }; 45156198acdSHeiko Stuebner }; 45256198acdSHeiko Stuebner }; 45356198acdSHeiko Stuebner}; 45456198acdSHeiko Stuebner 45556198acdSHeiko Stuebner&isp_mmu { 45656198acdSHeiko Stuebner status = "okay"; 45756198acdSHeiko Stuebner}; 45856198acdSHeiko Stuebner 45956198acdSHeiko Stuebner&pinctrl { 46056198acdSHeiko Stuebner accel { 46156198acdSHeiko Stuebner accel_int: accel-int { 46256198acdSHeiko Stuebner rockchip,pins = 46356198acdSHeiko Stuebner <2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; 46456198acdSHeiko Stuebner }; 46556198acdSHeiko Stuebner }; 46656198acdSHeiko Stuebner 46756198acdSHeiko Stuebner camera { 46856198acdSHeiko Stuebner cam_afvdd_en: cam-afvdd-en { 46956198acdSHeiko Stuebner rockchip,pins = 47056198acdSHeiko Stuebner <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 47156198acdSHeiko Stuebner }; 47256198acdSHeiko Stuebner 47356198acdSHeiko Stuebner cam_avdd_en: cam-avdd-en { 47456198acdSHeiko Stuebner rockchip,pins = 47556198acdSHeiko Stuebner <3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; 47656198acdSHeiko Stuebner }; 47756198acdSHeiko Stuebner 47856198acdSHeiko Stuebner cam_dovdd_en: cam-dovdd-en { 47956198acdSHeiko Stuebner rockchip,pins = 48056198acdSHeiko Stuebner <3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>; 48156198acdSHeiko Stuebner }; 48256198acdSHeiko Stuebner 48356198acdSHeiko Stuebner cam_dvdd_en: cam-dvdd-en { 48456198acdSHeiko Stuebner rockchip,pins = 48556198acdSHeiko Stuebner <3 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>; 48656198acdSHeiko Stuebner }; 48756198acdSHeiko Stuebner 48856198acdSHeiko Stuebner cam_pwdn: cam-pwdn { 48956198acdSHeiko Stuebner rockchip,pins = 49056198acdSHeiko Stuebner <2 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 49156198acdSHeiko Stuebner }; 49256198acdSHeiko Stuebner }; 49356198acdSHeiko Stuebner 49456198acdSHeiko Stuebner emmc { 49556198acdSHeiko Stuebner emmc_reset: emmc-reset { 49656198acdSHeiko Stuebner rockchip,pins = 49756198acdSHeiko Stuebner <1 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 49856198acdSHeiko Stuebner }; 49956198acdSHeiko Stuebner }; 50056198acdSHeiko Stuebner 50156198acdSHeiko Stuebner leds { 50256198acdSHeiko Stuebner debug_led_pin: debug-led-pin { 50356198acdSHeiko Stuebner rockchip,pins = 50456198acdSHeiko Stuebner <3 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>; 50556198acdSHeiko Stuebner }; 50656198acdSHeiko Stuebner 50756198acdSHeiko Stuebner heartbeat_led_pin: heartbeat-led-pin { 50856198acdSHeiko Stuebner rockchip,pins = 50956198acdSHeiko Stuebner <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; 51056198acdSHeiko Stuebner }; 51156198acdSHeiko Stuebner }; 51256198acdSHeiko Stuebner 51356198acdSHeiko Stuebner panel { 51456198acdSHeiko Stuebner dsp_rst: dsp-rst { 51556198acdSHeiko Stuebner rockchip,pins = 51656198acdSHeiko Stuebner <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; 51756198acdSHeiko Stuebner }; 51856198acdSHeiko Stuebner 51956198acdSHeiko Stuebner tch_int: tch-int { 52056198acdSHeiko Stuebner rockchip,pins = 52156198acdSHeiko Stuebner <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; 52256198acdSHeiko Stuebner }; 52356198acdSHeiko Stuebner 52456198acdSHeiko Stuebner tch_rst: tch-rst { 52556198acdSHeiko Stuebner rockchip,pins = 52656198acdSHeiko Stuebner <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 52756198acdSHeiko Stuebner }; 52856198acdSHeiko Stuebner }; 52956198acdSHeiko Stuebner 53056198acdSHeiko Stuebner pmic { 53156198acdSHeiko Stuebner pmic_int: pmic-int { 53256198acdSHeiko Stuebner rockchip,pins = 53356198acdSHeiko Stuebner <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; 53456198acdSHeiko Stuebner }; 53556198acdSHeiko Stuebner }; 53656198acdSHeiko Stuebner}; 53756198acdSHeiko Stuebner 53856198acdSHeiko Stuebner&pmu_io_domains { 53956198acdSHeiko Stuebner pmuio1-supply = <&vcc_3v3>; 54056198acdSHeiko Stuebner pmuio2-supply = <&vcc_3v3>; 54156198acdSHeiko Stuebner status = "okay"; 54256198acdSHeiko Stuebner}; 54356198acdSHeiko Stuebner 54456198acdSHeiko Stuebner&pwm0 { 54556198acdSHeiko Stuebner status = "okay"; 54656198acdSHeiko Stuebner}; 54756198acdSHeiko Stuebner 54856198acdSHeiko Stuebner&pwm1 { 54956198acdSHeiko Stuebner status = "okay"; 55056198acdSHeiko Stuebner}; 55156198acdSHeiko Stuebner 55256198acdSHeiko Stuebner&saradc { 55356198acdSHeiko Stuebner vref-supply = <&vcc_1v8>; 55456198acdSHeiko Stuebner status = "okay"; 55556198acdSHeiko Stuebner}; 55656198acdSHeiko Stuebner 55756198acdSHeiko Stuebner&tsadc { 55856198acdSHeiko Stuebner status = "okay"; 55956198acdSHeiko Stuebner}; 56056198acdSHeiko Stuebner 56156198acdSHeiko Stuebner&u2phy { 56256198acdSHeiko Stuebner status = "okay"; 56356198acdSHeiko Stuebner}; 56456198acdSHeiko Stuebner 56556198acdSHeiko Stuebner&u2phy_host { 56656198acdSHeiko Stuebner status = "okay"; 56756198acdSHeiko Stuebner}; 56856198acdSHeiko Stuebner 56956198acdSHeiko Stuebner&u2phy_otg { 57056198acdSHeiko Stuebner status = "okay"; 57156198acdSHeiko Stuebner}; 57256198acdSHeiko Stuebner 57356198acdSHeiko Stuebner&uart5 { 57456198acdSHeiko Stuebner pinctrl-0 = <&uart5_xfer>; 57556198acdSHeiko Stuebner status = "okay"; 57656198acdSHeiko Stuebner}; 57756198acdSHeiko Stuebner 57856198acdSHeiko Stuebner&usb20_otg { 57956198acdSHeiko Stuebner dr_mode = "peripheral"; 58056198acdSHeiko Stuebner status = "okay"; 58156198acdSHeiko Stuebner}; 58256198acdSHeiko Stuebner 58356198acdSHeiko Stuebner&usb_host0_ehci { 58456198acdSHeiko Stuebner status = "okay"; 58556198acdSHeiko Stuebner}; 58656198acdSHeiko Stuebner 58756198acdSHeiko Stuebner&usb_host0_ohci { 58856198acdSHeiko Stuebner status = "okay"; 58956198acdSHeiko Stuebner}; 59056198acdSHeiko Stuebner 59156198acdSHeiko Stuebner&vopb { 59256198acdSHeiko Stuebner status = "okay"; 59356198acdSHeiko Stuebner}; 59456198acdSHeiko Stuebner 59556198acdSHeiko Stuebner&vopb_mmu { 59656198acdSHeiko Stuebner status = "okay"; 59756198acdSHeiko Stuebner}; 59856198acdSHeiko Stuebner 59956198acdSHeiko Stuebner&wdt { 60056198acdSHeiko Stuebner status = "okay"; 60156198acdSHeiko Stuebner}; 602