1532 lines
30 KiB
Plaintext
1532 lines
30 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2021 Rockchip Electronics Co., Ltd.
|
|
*
|
|
*/
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/pwm/pwm.h>
|
|
#include <dt-bindings/pinctrl/rockchip.h>
|
|
#include <dt-bindings/input/rk-input.h>
|
|
#include <dt-bindings/display/drm_mipi_dsi.h>
|
|
#include <dt-bindings/display/rockchip_vop.h>
|
|
#include <dt-bindings/sensor-dev.h>
|
|
#include "dt-bindings/usb/pd.h"
|
|
#include "dt-bindings/leds/common.h"
|
|
#include "rk3588.dtsi"
|
|
#include "rk3588-rk806.dtsi"
|
|
|
|
/ {
|
|
adc_keys: adc-keys {
|
|
compatible = "adc-keys";
|
|
io-channels = <&saradc 1>;
|
|
io-channel-names = "buttons";
|
|
keyup-threshold-microvolt = <1800000>;
|
|
poll-interval = <100>;
|
|
|
|
vol-up-key {
|
|
label = "volume up";
|
|
linux,code = <KEY_VOLUMEUP>;
|
|
press-threshold-microvolt = <17000>;
|
|
};
|
|
|
|
vol-down-key {
|
|
label = "volume down";
|
|
linux,code = <KEY_VOLUMEDOWN>;
|
|
press-threshold-microvolt = <417000>;
|
|
};
|
|
|
|
home-key {
|
|
label = "home";
|
|
linux,code = <BTN_MODE>;
|
|
press-threshold-microvolt = <890000>;
|
|
};
|
|
|
|
menu-key {
|
|
label = "menu";
|
|
linux,code = <KEY_APPSELECT>;
|
|
press-threshold-microvolt = <1235000>;
|
|
};
|
|
};
|
|
|
|
joypad: slpad-joypad {
|
|
compatible = "rocknix-joypad";
|
|
poll-interval = <10>;
|
|
status = "okay";
|
|
|
|
joypad-name = "Microsoft X-Box 360 pad";
|
|
joypad-vendor = <0x045e>;
|
|
joypad-product = <0x028e>;
|
|
joypad-revision = <0x0503>;
|
|
|
|
/* Analog sticks */
|
|
io-channels = <&saradc 2>, <&saradc 3>, <&saradc 4>, <&saradc 5>;
|
|
io-channel-names = "key-X", "key-Y", "key-RX", "key-RY";
|
|
button-adc-scale = <4>;
|
|
button-adc-deadzone = <150>;
|
|
button-adc-fuzz = <32>;
|
|
button-adc-flat = <32>;
|
|
abs_x-p-tuning = <350>;
|
|
abs_x-n-tuning = <350>;
|
|
abs_y-p-tuning = <350>;
|
|
abs_y-n-tuning = <350>;
|
|
abs_rx-p-tuning = <350>;
|
|
abs_rx-n-tuning = <350>;
|
|
abs_ry-p-tuning = <350>;
|
|
abs_ry-n-tuning = <350>;
|
|
invert-absx;
|
|
invert-absy;
|
|
|
|
/* gpio pincontrol setup */
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&btn_pins>;
|
|
|
|
/* gpio button auto repeat set value : default disable */
|
|
/*
|
|
autorepeat;
|
|
*/
|
|
|
|
/*
|
|
*** SLPad switch layout ***
|
|
|-------------------------------------------------------|
|
|
| sw15(b4) sw21(b6) sw20(b7) sw16(b5) |
|
|
|-------------------------------------------------------|
|
|
| sw19(b12)|-------------------| sw22(b13) |
|
|
| | | |
|
|
| sw1(b8) | | sw8(b2) |
|
|
|sw3(b10) sw4(b11)| OLED Display | sw7(b3) sw5(b1) |
|
|
| sw2(b9) | | sw6(b0) |
|
|
| sw11(b14) | | sw12(b15) |
|
|
| menu(sys) |-------------------| home(sys) |
|
|
| |
|
|
|-------------------------------------------------------|
|
|
*/
|
|
|
|
sw1 {
|
|
gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO DPAD-UP";
|
|
linux,code = <ABS_HAT0Y>;
|
|
linux,input-type = <EV_ABS>;
|
|
linux,input-value = <0xffffffff>; /* -1 */
|
|
};
|
|
sw2 {
|
|
gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO DPAD-DOWN";
|
|
linux,code = <ABS_HAT0Y>;
|
|
linux,input-type = <EV_ABS>;
|
|
linux,input-value= <1>;
|
|
};
|
|
sw3 {
|
|
gpios = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO DPAD-LEFT";
|
|
linux,code = <ABS_HAT0X>;
|
|
linux,input-type = <EV_ABS>;
|
|
linux,input-value = <0xffffffff>; /* -1 */
|
|
};
|
|
sw4 {
|
|
gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO DPAD-RIGHT";
|
|
linux,code = <ABS_HAT0X>;
|
|
linux,input-type = <EV_ABS>;
|
|
linux,input-value= <1>;
|
|
};
|
|
sw5 {
|
|
gpios = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO KEY BTN-A";
|
|
linux,code = <BTN_SOUTH>;
|
|
};
|
|
sw6 {
|
|
gpios = <&gpio3 RK_PA0 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-B";
|
|
linux,code = <BTN_EAST>;
|
|
};
|
|
sw7 {
|
|
gpios = <&gpio3 RK_PA2 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-Y";
|
|
linux,code = <BTN_WEST>;
|
|
};
|
|
sw8 {
|
|
gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-X";
|
|
linux,code = <BTN_NORTH>;
|
|
};
|
|
sw11 {
|
|
gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_HIGH>;
|
|
label = "GPIO BTN-THUMBR";
|
|
linux,code = <BTN_THUMBR>;
|
|
};
|
|
sw12 {
|
|
gpios = <&gpio3 RK_PB6 GPIO_ACTIVE_HIGH>;
|
|
label = "GPIO BTN-THUMBL";
|
|
linux,code = <BTN_THUMBL>;
|
|
};
|
|
sw15 {
|
|
gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-L";
|
|
linux,code = <BTN_TL>;
|
|
};
|
|
sw16 {
|
|
gpios = <&gpio3 RK_PA4 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-R";
|
|
linux,code = <BTN_TR>;
|
|
};
|
|
sw19 {
|
|
gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-SELECT";
|
|
linux,code = <BTN_SELECT>;
|
|
};
|
|
sw20 {
|
|
gpios = <&gpio3 RK_PA5 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-ZR";
|
|
linux,code = <ABS_RZ>;
|
|
linux,input-type = <EV_ABS>;
|
|
linux,input-value= <255>;
|
|
};
|
|
sw21 {
|
|
gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-ZL";
|
|
linux,code = <ABS_Z>;
|
|
linux,input-type = <EV_ABS>;
|
|
linux,input-value= <255>;
|
|
};
|
|
sw22 {
|
|
gpios = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO BTN-START";
|
|
linux,code = <BTN_START>;
|
|
};
|
|
};
|
|
|
|
vibrator {
|
|
compatible = "rk-vibrator-gpio";
|
|
status = "okay";
|
|
vibrator-gpio = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
/* If hdmirx node is disabled, delete the reserved-memory node here. */
|
|
reserved-memory {
|
|
#address-cells = <2>;
|
|
#size-cells = <2>;
|
|
ranges;
|
|
|
|
/* Reserve 128MB memory for hdmirx-controller@fdee0000 */
|
|
cma {
|
|
compatible = "shared-dma-pool";
|
|
reusable;
|
|
reg = <0x0 (256 * 0x100000) 0x0 (128 * 0x100000)>;
|
|
linux,cma-default;
|
|
};
|
|
};
|
|
|
|
es8388_sound: es8388-sound {
|
|
status = "okay";
|
|
compatible = "rockchip,multicodecs-card";
|
|
rockchip,card-name = "rockchip-es8388";
|
|
hp-det-gpio = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>;
|
|
io-channels = <&saradc 7>;
|
|
io-channel-names = "adc-detect";
|
|
keyup-threshold-microvolt = <1800000>;
|
|
poll-interval = <100>;
|
|
spk-con-gpio = <&gpio4 RK_PA0 GPIO_ACTIVE_HIGH>;
|
|
hp-con-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>;
|
|
rockchip,aw8733-mode = <3>;
|
|
rockchip,format = "i2s";
|
|
rockchip,mclk-fs = <256>;
|
|
rockchip,cpu = <&i2s0_8ch>;
|
|
rockchip,codec = <&es8388>;
|
|
rockchip,audio-routing =
|
|
"Headphone", "LOUT1",
|
|
"Headphone", "ROUT1",
|
|
"Speaker", "LOUT2",
|
|
"Speaker", "ROUT2",
|
|
"Headphone", "Headphone Power",
|
|
"Headphone", "Headphone Power",
|
|
"Speaker", "Speaker Power",
|
|
"Speaker", "Speaker Power",
|
|
"LINPUT1", "Main Mic",
|
|
"LINPUT2", "Main Mic",
|
|
"RINPUT1", "Headset Mic",
|
|
"RINPUT2", "Headset Mic";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&hp_det>;
|
|
play-pause-key {
|
|
label = "playpause";
|
|
linux,code = <KEY_PLAYPAUSE>;
|
|
press-threshold-microvolt = <2000>;
|
|
};
|
|
};
|
|
|
|
fan: pwm-fan {
|
|
compatible = "pwm-fan";
|
|
#cooling-cells = <2>;
|
|
pwms = <&pwm14 0 50000 0>;
|
|
cooling-levels = <0 70 130 180 200 255>;
|
|
rockchip,temp-trips = <
|
|
45000 1
|
|
50000 2
|
|
55000 3
|
|
60000 4
|
|
65000 5
|
|
>;
|
|
};
|
|
|
|
charge-animation {
|
|
compatible = "rockchip,uboot-charge";
|
|
rockchip,uboot-charge-on = <1>;
|
|
rockchip,android-charge-on = <0>;
|
|
rockchip,uboot-low-power-voltage = <3300>;
|
|
rockchip,screen-on-voltage = <3400>;
|
|
rockchip,uboot-exit-charge-level = <2>;
|
|
rockchip,uboot-exit-charge-auto = <1>;
|
|
rockchip,system-suspend = <1>;
|
|
regulator-on-in-mem = <&vdd_log_s0>, <&vcc_2v0_pldo_s3>,
|
|
<&vdd2_ddr_s3>, <&vcc_1v8_s3>, <&avcc_1v8_s0>,
|
|
<&vdd_0v75_s3>, <&pldo6_s3>, <&vcc_3v3_s3>;
|
|
|
|
regulator-off-in-mem = <&vdd_gpu_s0>, <&vdd_npu_s0>,
|
|
<&vdd_vdenc_s0>, <&vdd_gpu_mem_s0>, <&vdd_npu_mem_s0>,
|
|
<&vdd_vdenc_mem_s0>, <&vcc_1v8_s0>, <&vcc_3v3_s0>,
|
|
<&vccio_sd_s0>, <&avdd_0v75_s0>, <&avdd_0v85_s0>,
|
|
<&vdd_cpu_big1_s0>, <&vdd_cpu_big0_s0>, <&vdd_cpu_lit_s0>,
|
|
<&vdd_cpu_big1_mem_s0>, <&vdd_cpu_big0_mem_s0>, <&vdd_cpu_lit_mem_s0>,
|
|
<&vddq_ddr_s0>, <&vdd_ddr_s0>, <&vdd_ddr_pll_s0>,
|
|
<&avdd_1v2_s0>, <&vdd_0v75_s0>;
|
|
status = "okay";
|
|
};
|
|
|
|
hdmi0_sound: hdmi0-sound {
|
|
status = "okay";
|
|
compatible = "rockchip,hdmi";
|
|
rockchip,mclk-fs = <128>;
|
|
rockchip,card-name = "rockchip-hdmi0";
|
|
rockchip,cpu = <&i2s5_8ch>;
|
|
rockchip,codec = <&hdmi0>;
|
|
rockchip,jack-det;
|
|
};
|
|
|
|
hdmi1_sound: hdmi1-sound {
|
|
status = "disabled";
|
|
compatible = "rockchip,hdmi";
|
|
rockchip,mclk-fs = <128>;
|
|
rockchip,card-name = "rockchip-hdmi1";
|
|
rockchip,cpu = <&i2s6_8ch>;
|
|
rockchip,codec = <&hdmi1>;
|
|
rockchip,jack-det;
|
|
};
|
|
|
|
dp0_sound: dp0-sound {
|
|
status = "okay";
|
|
compatible = "rockchip,hdmi";
|
|
rockchip,card-name= "rockchip,dp0";
|
|
rockchip,mclk-fs = <512>;
|
|
rockchip,cpu = <&spdif_tx2>;
|
|
rockchip,codec = <&dp0 1>;
|
|
rockchip,jack-det;
|
|
};
|
|
|
|
dp1_sound: dp1-sound {
|
|
status = "disabled";
|
|
compatible = "rockchip,hdmi";
|
|
rockchip,card-name= "rockchip,dp1";
|
|
rockchip,mclk-fs = <512>;
|
|
rockchip,cpu = <&spdif_tx5>;
|
|
rockchip,codec = <&dp1 1>;
|
|
rockchip,jack-det;
|
|
};
|
|
|
|
spdif_tx0_dc: spdif-tx0-dc {
|
|
status = "disabled";
|
|
compatible = "linux,spdif-dit";
|
|
#sound-dai-cells = <0>;
|
|
};
|
|
|
|
spdif_tx0_sound: spdif-tx0-sound {
|
|
status = "disabled";
|
|
compatible = "simple-audio-card";
|
|
simple-audio-card,mclk-fs = <128>;
|
|
simple-audio-card,name = "rockchip,spdif-tx0";
|
|
simple-audio-card,cpu {
|
|
sound-dai = <&spdif_tx0>;
|
|
};
|
|
simple-audio-card,codec {
|
|
sound-dai = <&spdif_tx0_dc>;
|
|
};
|
|
};
|
|
|
|
spdif_tx1_dc: spdif-tx1-dc {
|
|
status = "disabled";
|
|
compatible = "linux,spdif-dit";
|
|
#sound-dai-cells = <0>;
|
|
};
|
|
|
|
spdif_tx1_sound: spdif-tx1-sound {
|
|
status = "disabled";
|
|
compatible = "simple-audio-card";
|
|
simple-audio-card,mclk-fs = <128>;
|
|
simple-audio-card,name = "rockchip,spdif-tx1";
|
|
simple-audio-card,cpu {
|
|
sound-dai = <&spdif_tx1>;
|
|
};
|
|
simple-audio-card,codec {
|
|
sound-dai = <&spdif_tx1_dc>;
|
|
};
|
|
};
|
|
|
|
vcc12v_dcin: vcc12v-dcin {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc12v_dcin";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <12000000>;
|
|
regulator-max-microvolt = <12000000>;
|
|
};
|
|
|
|
vcc5v0_sys: vcc5v0-sys {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc5v0_sys";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
vin-supply = <&vcc12v_dcin>;
|
|
};
|
|
|
|
vcc_1v1_nldo_s3: vcc-1v1-nldo-s3 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc_1v1_nldo_s3";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <1100000>;
|
|
vin-supply = <&vcc5v0_sys>;
|
|
};
|
|
|
|
vcc5v0_usbdcin: vcc5v0-usbdcin {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc5v0_usbdcin";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
vin-supply = <&vcc12v_dcin>;
|
|
};
|
|
|
|
vcc5v0_usb: vcc5v0-usb {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc5v0_usb";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
vin-supply = <&vcc5v0_usbdcin>;
|
|
};
|
|
|
|
sdio_pwrseq: sdio-pwrseq {
|
|
compatible = "mmc-pwrseq-simple";
|
|
clocks = <&hym8563>;
|
|
clock-names = "ext_clock";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&wifi_enable_h>;
|
|
/*
|
|
* On the module itself this is one of these (depending
|
|
* on the actual card populated):
|
|
* - SDIO_RESET_L_WL_REG_ON
|
|
* - PDN (power down when low)
|
|
*/
|
|
post-power-on-delay-ms = <200>;
|
|
reset-gpios = <&gpio0 RK_PC4 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
wireless_bluetooth: wireless-bluetooth {
|
|
compatible = "bluetooth-platdata";
|
|
clocks = <&hym8563>;
|
|
clock-names = "ext_clock";
|
|
uart_rts_gpios = <&gpio4 RK_PC4 GPIO_ACTIVE_LOW>;
|
|
pinctrl-names = "default", "rts_gpio";
|
|
pinctrl-0 = <&uart9m0_rtsn>, <&bt_gpio>;
|
|
pinctrl-1 = <&uart9_gpios>;
|
|
BT,reset_gpio = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
|
|
BT,wake_gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
|
|
BT,wake_host_irq = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
|
|
wireless_wlan: wireless-wlan {
|
|
compatible = "wlan-platdata";
|
|
wifi_chip_type = "ap6398sv";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&wifi_host_wake_irq>;
|
|
WIFI,host_wake_irq = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
|
|
WIFI,poweren_gpio = <&gpio0 RK_PC4 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
&i2s0_8ch {
|
|
status = "okay";
|
|
pinctrl-0 = <&i2s0_lrck
|
|
&i2s0_sclk
|
|
&i2s0_sdi0
|
|
&i2s0_sdo0>;
|
|
};
|
|
|
|
&i2s5_8ch {
|
|
status = "okay";
|
|
};
|
|
|
|
&av1d_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&cpu_l0 {
|
|
cpu-supply = <&vdd_cpu_lit_s0>;
|
|
mem-supply = <&vdd_cpu_lit_mem_s0>;
|
|
};
|
|
|
|
&cpu_b0 {
|
|
cpu-supply = <&vdd_cpu_big0_s0>;
|
|
mem-supply = <&vdd_cpu_big0_mem_s0>;
|
|
};
|
|
|
|
&cpu_b2 {
|
|
cpu-supply = <&vdd_cpu_big1_s0>;
|
|
mem-supply = <&vdd_cpu_big1_mem_s0>;
|
|
};
|
|
|
|
&gpu {
|
|
mali-supply = <&vdd_gpu_s0>;
|
|
mem-supply = <&vdd_gpu_mem_s0>;
|
|
status = "okay";
|
|
};
|
|
|
|
&iep {
|
|
status = "okay";
|
|
};
|
|
|
|
&iep_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpegd {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpegd_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege_ccu {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege0_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege1_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege2_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege3 {
|
|
status = "okay";
|
|
};
|
|
|
|
&jpege3_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&mpp_srv {
|
|
status = "okay";
|
|
};
|
|
|
|
&rga3_core0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rga3_0_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rga3_core1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rga3_1_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rga2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rknpu {
|
|
rknpu-supply = <&vdd_npu_s0>;
|
|
mem-supply = <&vdd_npu_mem_s0>;
|
|
status = "okay";
|
|
};
|
|
|
|
&rknpu_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvdec_ccu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvdec0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvdec0_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvdec1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvdec1_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvenc_ccu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvenc0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvenc0_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvenc1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkvenc1_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rockchip_suspend {
|
|
status = "okay";
|
|
rockchip,sleep-debug-en = <1>;
|
|
rockchip,sleep-mode-config = <
|
|
(0
|
|
| RKPM_SLP_ARMOFF_LOGOFF
|
|
| RKPM_SLP_PMU_PMUALIVE_32K
|
|
| RKPM_SLP_PMU_DIS_OSC
|
|
| RKPM_SLP_32K_EXT
|
|
)
|
|
>;
|
|
rockchip,wakeup-config = <
|
|
(0
|
|
| RKPM_GPIO_WKUP_EN
|
|
)
|
|
>;
|
|
};
|
|
|
|
&saradc {
|
|
status = "okay";
|
|
vref-supply = <&vcc_1v8_s0>;
|
|
};
|
|
|
|
&tsadc {
|
|
status = "okay";
|
|
};
|
|
|
|
&spdif_tx2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&combphy0_ps {
|
|
status = "disabled";
|
|
};
|
|
|
|
&combphy1_ps {
|
|
status = "disabled";
|
|
};
|
|
|
|
&combphy2_psu {
|
|
status = "disabled";
|
|
};
|
|
|
|
&dmc {
|
|
center-supply = <&vdd_ddr_s0>;
|
|
mem-supply = <&vdd_log_s0>;
|
|
status = "okay";
|
|
};
|
|
|
|
&dfi {
|
|
status = "okay";
|
|
};
|
|
|
|
&dp0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&dp0_in_vp2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&dp1 {
|
|
status = "disable";
|
|
};
|
|
|
|
&dp1_in_vp2 {
|
|
status = "disabled";
|
|
};
|
|
|
|
/*
|
|
* mipi_dcphy0 needs to be enabled
|
|
* when dsi0 is enabled
|
|
*/
|
|
&mipi_dcphy0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&mipi_dcphy1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&dsi0 {
|
|
status = "okay";
|
|
//rockchip,lane-rate = <1000>;
|
|
dsi0_panel: panel@0 {
|
|
status = "okay";
|
|
compatible = "simple-panel-dsi";
|
|
reg = <0>;
|
|
power-supply = <&vcc5v0_sys>;
|
|
cmd_later_reset = <0>;
|
|
//backlight = <&backlight>;
|
|
|
|
reset-gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>;
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&lcd_rst_gpio>;
|
|
reset-delay-ms = <20>;
|
|
init-delay-ms = <20>;
|
|
enable-delay-ms = <120>;
|
|
prepare-delay-ms = <120>;
|
|
unprepare-delay-ms = <10>;
|
|
disable-delay-ms = <60>;
|
|
width-mm = <121>;
|
|
height-mm = <68>;
|
|
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
|
|
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
|
|
dsi,format = <MIPI_DSI_FMT_RGB888>;
|
|
dsi,lanes = <4>;
|
|
panel-init-sequence = [
|
|
15 00 02 FE 0E
|
|
15 00 02 4B 00
|
|
15 00 02 4C 0F
|
|
15 00 02 4D 20
|
|
15 00 02 4E 40
|
|
15 00 02 4F 60
|
|
15 00 02 50 A0
|
|
15 00 02 51 C0
|
|
15 00 02 52 E0
|
|
15 00 02 53 FF
|
|
|
|
15 00 02 FE 0D
|
|
15 00 02 18 08
|
|
15 00 02 42 01
|
|
15 00 02 08 41
|
|
15 00 02 46 02
|
|
15 00 02 72 09
|
|
|
|
15 00 02 FE 0A
|
|
15 00 02 24 17
|
|
15 00 02 04 07
|
|
15 00 02 1A 0C
|
|
15 00 02 0F 44
|
|
|
|
15 00 02 FE 04
|
|
15 00 02 00 0C
|
|
15 00 02 0A E6
|
|
15 00 02 0B 8C
|
|
15 00 02 1A 12
|
|
15 00 02 29 93
|
|
15 00 02 2A 93
|
|
15 00 02 2F 02
|
|
15 00 02 31 02
|
|
15 00 02 33 05
|
|
15 00 02 37 2D
|
|
15 00 02 38 3D
|
|
15 00 02 3A 1E
|
|
15 00 02 3B 1E
|
|
15 00 02 3D 27
|
|
15 00 02 3F 80
|
|
15 00 02 40 40
|
|
15 00 02 41 E0
|
|
15 00 02 4F 3F
|
|
15 00 02 50 1E
|
|
|
|
15 00 02 FE 06
|
|
15 00 02 00 CC
|
|
15 00 02 05 05
|
|
15 00 02 07 A2
|
|
15 00 02 08 CC
|
|
15 00 02 0D 03
|
|
15 00 02 0F A2
|
|
15 00 02 32 CC
|
|
15 00 02 37 05
|
|
15 00 02 39 83
|
|
15 00 02 3A CC
|
|
15 00 02 41 04
|
|
15 00 02 43 83
|
|
15 00 02 44 CC
|
|
15 00 02 49 05
|
|
15 00 02 4B A2
|
|
15 00 02 4C CC
|
|
15 00 02 51 03
|
|
15 00 02 4B A2
|
|
15 00 02 4C CC
|
|
15 00 02 51 03
|
|
15 00 02 53 A2
|
|
15 00 02 75 CC
|
|
15 00 02 7A 03
|
|
15 00 02 7C 83
|
|
15 00 02 7D CC
|
|
15 00 02 82 02
|
|
15 00 02 84 83
|
|
15 00 02 85 EC
|
|
15 00 02 86 0F
|
|
15 00 02 87 FF
|
|
15 00 02 88 00
|
|
15 00 02 8A 02
|
|
15 00 02 8C A2
|
|
15 00 02 8D EA
|
|
15 00 02 8E 01
|
|
15 00 02 8F E8
|
|
15 00 02 90 0A
|
|
15 00 02 92 06
|
|
15 00 02 93 A0
|
|
15 00 02 94 A8
|
|
15 00 02 95 EC
|
|
15 00 02 96 0F
|
|
15 00 02 97 FF
|
|
15 00 02 98 00
|
|
15 00 02 9A 02
|
|
15 00 02 9C A2
|
|
15 00 02 AC 04
|
|
15 00 02 B1 12
|
|
15 00 02 B2 17
|
|
15 00 02 B3 17
|
|
15 00 02 B4 17
|
|
15 00 02 B5 17
|
|
15 00 02 B6 11
|
|
15 00 02 B7 08
|
|
15 00 02 B8 09
|
|
15 00 02 B9 06
|
|
15 00 02 BA 07
|
|
15 00 02 BB 17
|
|
15 00 02 BC 17
|
|
15 00 02 BD 17
|
|
15 00 02 BE 17
|
|
15 00 02 BF 17
|
|
15 00 02 C0 17
|
|
15 00 02 C1 17
|
|
15 00 02 C2 17
|
|
15 00 02 C3 17
|
|
15 00 02 C4 0F
|
|
15 00 02 C5 0E
|
|
15 00 02 C6 00
|
|
15 00 02 C7 01
|
|
15 00 02 C8 10
|
|
|
|
15 00 02 FE 00
|
|
15 00 02 C2 08
|
|
15 00 02 35 00
|
|
39 00 03 44 03 80
|
|
|
|
15 00 02 51 FF
|
|
|
|
05 78 01 11
|
|
05 64 01 29
|
|
];
|
|
|
|
panel-exit-sequence = [
|
|
05 00 01 28
|
|
05 00 01 10
|
|
];
|
|
|
|
disp_timings0: display-timings {
|
|
native-mode = <&dsi0_timing0>;
|
|
dsi0_timing0: timing0 {
|
|
clock-frequency = <135000000>;
|
|
hactive = <1080>;
|
|
vactive = <1920>;
|
|
hback-porch = <36>;
|
|
hfront-porch = <26>;
|
|
vback-porch = <16>;
|
|
vfront-porch = <8>;
|
|
hsync-len = <2>;
|
|
vsync-len = <4>;
|
|
hsync-active = <0>;
|
|
vsync-active = <0>;
|
|
de-active = <0>;
|
|
pixelclk-active = <0>;
|
|
};
|
|
};
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
panel_in_dsi: endpoint {
|
|
remote-endpoint = <&dsi_out_panel>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
dsi_out_panel: endpoint {
|
|
remote-endpoint = <&panel_in_dsi>;
|
|
};
|
|
};
|
|
};
|
|
|
|
};
|
|
|
|
&dsi0_in_vp3 {
|
|
status = "okay";
|
|
};
|
|
|
|
&u2phy0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&u2phy1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&u2phy2 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&u2phy3 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&u2phy0_otg {
|
|
status = "okay";
|
|
rockchip,typec-vbus-det;
|
|
};
|
|
|
|
&u2phy1_otg {
|
|
status = "disabled";
|
|
};
|
|
|
|
&u2phy2_host {
|
|
status = "disabled";
|
|
};
|
|
|
|
&u2phy3_host {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usb_host0_ehci {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_host0_ohci {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_host1_ehci {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usb_host1_ohci {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbdp_phy0_dp {
|
|
status = "okay";
|
|
};
|
|
|
|
&usbdp_phy0_u3 {
|
|
status = "okay";
|
|
};
|
|
|
|
&usbdp_phy1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbdp_phy1_dp {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbdp_phy1_u3 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbdrd3_0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&usbhost3_0 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbhost_dwc3_0 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbdrd3_1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&usbdrd_dwc3_1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&hdmi0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&hdmi0_in_vp0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&hdptxphy_hdmi0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&spi0 {
|
|
status = "okay";
|
|
pinctrl-0 = <&spi0usr_pins>;
|
|
|
|
rgb@0 {
|
|
compatible = "opsco,sk9822";
|
|
status = "okay";
|
|
reg = <0>;
|
|
spi-max-frequency = <30000000>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
led@0 {
|
|
reg = <0>;
|
|
label = "led1";
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c3 {
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
focaltech@38 {
|
|
status = "okay";
|
|
compatible = "focaltech,fts";
|
|
reg = <0x38>;
|
|
|
|
interrupt-parent = <&gpio1>;
|
|
interrupts = <RK_PD2 IRQ_TYPE_EDGE_FALLING>;
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&tp_gpio>;
|
|
|
|
focaltech,irq-gpio = <&gpio1 RK_PD2 IRQ_TYPE_EDGE_FALLING>;
|
|
focaltech,reset-gpio = <&gpio1 RK_PD3 GPIO_ACTIVE_HIGH>;
|
|
focaltech,max-touch-number = <6>;
|
|
focaltech,display-coords = <0 0 1079 1919>;
|
|
focaltech,touchscreen-inverted-x;
|
|
focaltech,touchscreen-inverted-y;
|
|
};
|
|
};
|
|
|
|
&i2c4 {
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c4m1_xfer>;
|
|
|
|
lsm6ds3@6a {
|
|
compatible = "st,lsm6ds3tr-c";
|
|
status = "okay";
|
|
reg = <0x6a>;
|
|
interrupt-parent = <&gpio4>;
|
|
interrupts = <RK_PC2 IRQ_TYPE_LEVEL_HIGH>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&gyr_int_l>;
|
|
vdd-supply = <&vcc_1v8_s0>;
|
|
vddio-supply = <&vcc_1v8_s0>;
|
|
st,drdy-int-pin = <1>;
|
|
st,module_id = <5>;
|
|
};
|
|
};
|
|
|
|
&i2c6 {
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
usbc0: fusb302@22 {
|
|
compatible = "fcs,fusb302";
|
|
reg = <0x22>;
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&usbc0_int>;
|
|
vbus-supply = <&vbus5v0_typec>;
|
|
charge-dev = <&bq25890>;
|
|
status = "okay";
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
usbc0_role_sw: endpoint@0 {
|
|
remote-endpoint = <&dwc3_0_role_switch>;
|
|
};
|
|
};
|
|
};
|
|
|
|
usb_con: connector {
|
|
compatible = "usb-c-connector";
|
|
label = "USB-C";
|
|
data-role = "dual";
|
|
power-role = "dual";
|
|
try-power-role = "sink";
|
|
op-sink-microwatt = <1000000>;
|
|
sink-pdos =
|
|
<PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
|
|
PDO_FIXED(9000, 3000, PDO_FIXED_USB_COMM)
|
|
PDO_FIXED(12000, 3000, PDO_FIXED_USB_COMM)>;
|
|
source-pdos =
|
|
<PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
|
|
|
|
altmodes {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
altmode@0 {
|
|
reg = <0>;
|
|
svid = <0xff01>;
|
|
vdo = <0xffffffff>;
|
|
};
|
|
};
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
usbc0_orien_sw: endpoint {
|
|
remote-endpoint = <&usbdp_phy0_orientation_switch>;
|
|
};
|
|
};
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
dp_altmode_mux: endpoint {
|
|
remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
hym8563: hym8563@51 {
|
|
status = "okay";
|
|
compatible = "haoyu,hym8563";
|
|
reg = <0x51>;
|
|
#clock-cells = <0>;
|
|
clock-frequency = <32768>;
|
|
clock-output-names = "hym8563";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&hym8563_int>;
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <RK_PD4 IRQ_TYPE_LEVEL_LOW>;
|
|
wakeup-source;
|
|
};
|
|
|
|
cw2015@62 {
|
|
status = "okay";
|
|
compatible = "cellwise,cw2015";
|
|
reg = <0x62>;
|
|
cellwise,battery-profile = /bits/ 8
|
|
<0x18 0x0A 0x68 0x68 0x6B 0x6B 0x69 0x67
|
|
0x63 0x61 0x5E 0x61 0x5E 0x53 0x46 0x3F
|
|
0x36 0x30 0x29 0x26 0x2C 0x37 0x44 0x4E
|
|
0x1E 0x6F 0x0A 0x3E 0x18 0x31 0x52 0x60
|
|
0x6F 0x6E 0x6E 0x70 0x3E 0x1B 0x6E 0x5F
|
|
0x0B 0x2F 0x21 0x4F 0x89 0x92 0x96 0x1B
|
|
0x49 0x69 0x9D 0xBC 0x80 0x5C 0x7F 0xCB
|
|
0x2F 0x00 0x64 0xA5 0xB5 0xC1 0x46 0xAE>;
|
|
cellwise,monitor-interval-ms = <5000>;
|
|
power-supplies = <&bq25890>;
|
|
};
|
|
|
|
bq25890: charger@6a {
|
|
status = "okay";
|
|
compatible = "ti,bq25890";
|
|
reg = <0x6a>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&charger_ok>;
|
|
interrupt-parent = <&gpio4>;
|
|
interrupts = <RK_PB0 IRQ_TYPE_EDGE_FALLING>;
|
|
otg-mode-en-gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
|
|
ti,usb-charger-detection = <&usbc0>;
|
|
|
|
ti,battery-regulation-voltage = <4400000>; /* 4.4V */
|
|
ti,charge-current = <5000000>; /* 5A */
|
|
ti,termination-current = <66000>; /* 66mA */
|
|
ti,precharge-current = <130000>; /* 130mA */
|
|
ti,minimum-sys-voltage = <3800000>; /* 3.8V */
|
|
ti,boost-voltage = <5000000>; /* 5V */
|
|
ti,boost-max-current = <2000000>; /* 2000mA */
|
|
regulators {
|
|
vbus5v0_typec: vbus5v0-typec {
|
|
regulator-compatible = "otg-vbus";
|
|
regulator-name = "vbus5v0_typec";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&uart2 {
|
|
status = "disable";
|
|
};
|
|
|
|
&uart9 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart9m0_xfer &uart9m0_ctsn>;
|
|
};
|
|
|
|
|
|
&i2c7 {
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
es8388: es8388@11 {
|
|
status = "okay";
|
|
#sound-dai-cells = <0>;
|
|
compatible = "everest,es8388", "everest,es8323";
|
|
reg = <0x11>;
|
|
clocks = <&mclkout_i2s0>;
|
|
clock-names = "mclk";
|
|
assigned-clocks = <&mclkout_i2s0>;
|
|
assigned-clock-rates = <12288000>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2s0_mclk>;
|
|
};
|
|
};
|
|
|
|
&pinctrl {
|
|
headphone {
|
|
hp_det: hp-det {
|
|
rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
hym8563 {
|
|
hym8563_int: hym8563-int {
|
|
rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
charger {
|
|
charger_ok: charger_ok {
|
|
rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
wireless-bluetooth {
|
|
uart9_gpios: uart9-gpios {
|
|
rockchip,pins = <4 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
|
|
bt_gpio: bt-gpio {
|
|
rockchip,pins =
|
|
<0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>,
|
|
<0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>,
|
|
<0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
sdio-pwrseq {
|
|
wifi_enable_h: wifi-enable-h {
|
|
rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
wireless-wlan {
|
|
wifi_host_wake_irq: wifi-host-wake-irq {
|
|
rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
};
|
|
|
|
wifi_poweren_gpio: wifi-poweren-gpio {
|
|
rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
tp {
|
|
tp_gpio: tp-gpio {
|
|
rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>,
|
|
<1 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
lcd {
|
|
lcd_rst_gpio: lcd-rst-gpio {
|
|
rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
spi0 {
|
|
spi0usr_pins: spi0usr-pins {
|
|
rockchip,pins =
|
|
/* spi0_clk_m1 */
|
|
<4 RK_PA2 8 &pcfg_pull_up_drv_level_6>,
|
|
/* spi0_mosi_m1 */
|
|
<4 RK_PA1 8 &pcfg_pull_up_drv_level_6>;
|
|
};
|
|
};
|
|
|
|
usb-typec {
|
|
usbc0_int: usbc0-int {
|
|
rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
|
|
lsm6ds3 {
|
|
gyr_int_l: gyr-int-l {
|
|
rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
btns {
|
|
btn_pins: btn-pins {
|
|
rockchip,pins = <3 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_down>,
|
|
<3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<3 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>,
|
|
<3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
&pwm12 {
|
|
status = "disabled";
|
|
pinctrl-names = "active";
|
|
pinctrl-0 = <&pwm12m1_pins>;
|
|
};
|
|
|
|
&pwm14 {
|
|
status = "okay";
|
|
pinctrl-names = "active";
|
|
pinctrl-0 = <&pwm14m1_pins>;
|
|
};
|
|
|
|
&route_dsi0 {
|
|
status = "okay";
|
|
logo,uboot = "logo.bmp";
|
|
logo,kernel = "logo_kernel.bmp";
|
|
logo,mode = "center";
|
|
logo,rotate = <90>;
|
|
charge_logo,mode = "center";
|
|
connect = <&vp3_out_dsi0>;
|
|
};
|
|
|
|
&route_dp0 {
|
|
status = "okay";
|
|
logo,uboot = "logo.bmp";
|
|
logo,kernel = "logo_kernel.bmp";
|
|
logo,mode = "center";
|
|
logo,rotate = <90>;
|
|
charge_logo,mode = "center";
|
|
connect = <&vp2_out_dp0>;
|
|
};
|
|
|
|
&route_hdmi0 {
|
|
status = "okay";
|
|
logo,uboot = "logo.bmp";
|
|
logo,kernel = "logo_kernel.bmp";
|
|
logo,mode = "center";
|
|
logo,rotate = <90>;
|
|
charge_logo,mode = "center";
|
|
connect = <&vp0_out_hdmi0>;
|
|
};
|
|
|
|
&sata0 {
|
|
status = "disabled";
|
|
};
|
|
|
|
// emmc
|
|
&sdhci {
|
|
bus-width = <8>;
|
|
no-sdio;
|
|
no-sd;
|
|
supports-sd;
|
|
non-removable;
|
|
max-frequency = <200000000>;
|
|
mmc-hs400-1_8v;
|
|
mmc-hs400-enhanced-strobe;
|
|
status = "okay";
|
|
};
|
|
|
|
// WLAN
|
|
&sdio {
|
|
max-frequency = <150000000>;
|
|
no-sd;
|
|
no-mmc;
|
|
bus-width = <4>;
|
|
disable-wp;
|
|
cap-sd-highspeed;
|
|
cap-sdio-irq;
|
|
keep-power-in-suspend;
|
|
mmc-pwrseq = <&sdio_pwrseq>;
|
|
non-removable;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&sdiom0_pins>;
|
|
sd-uhs-sdr104;
|
|
status = "okay";
|
|
};
|
|
|
|
// SDCARD
|
|
&sdmmc {
|
|
max-frequency = <200000000>;
|
|
no-sdio;
|
|
no-mmc;
|
|
bus-width = <4>;
|
|
cap-mmc-highspeed;
|
|
cap-sd-highspeed;
|
|
disable-wp;
|
|
sd-uhs-sdr104;
|
|
supports-emmc;
|
|
vmmc-supply = <&vcc_3v3_s3>;
|
|
vqmmc-supply = <&vccio_sd_s0>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&sdmmc_bus4 &sdmmc_clk &sdmmc_cmd &sdmmc_det>;
|
|
status = "okay";
|
|
};
|
|
|
|
|
|
|
|
// #USB3.1/DP PHY0
|
|
&usbdp_phy0 {
|
|
status = "okay";
|
|
orientation-switch;
|
|
svid = <0xff01>;
|
|
sbu1-dc-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
|
|
sbu2-dc-gpios = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
|
|
|
|
port {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
usbdp_phy0_orientation_switch: endpoint@0 {
|
|
reg = <0>;
|
|
remote-endpoint = <&usbc0_orien_sw>;
|
|
};
|
|
|
|
usbdp_phy0_dp_altmode_mux: endpoint@1 {
|
|
reg = <1>;
|
|
remote-endpoint = <&dp_altmode_mux>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&usbdrd_dwc3_0 {
|
|
status = "okay";
|
|
dr_mode = "otg";
|
|
usb-role-switch;
|
|
port {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
dwc3_0_role_switch: endpoint@0 {
|
|
reg = <0>;
|
|
remote-endpoint = <&usbc0_role_sw>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&vdpu {
|
|
status = "okay";
|
|
};
|
|
|
|
&vdpu_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&vepu {
|
|
status = "okay";
|
|
};
|
|
|
|
&vop {
|
|
status = "okay";
|
|
};
|
|
|
|
&vop_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
/* vp0 & vp1 splice for 8K output */
|
|
&vp0 {
|
|
rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0)>;
|
|
rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART0>;
|
|
};
|
|
|
|
&vp1 {
|
|
rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER1 | 1 << ROCKCHIP_VOP2_ESMART1)>;
|
|
rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART1>;
|
|
};
|
|
|
|
&vp2 {
|
|
rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER2 | 1 << ROCKCHIP_VOP2_ESMART2)>;
|
|
rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART2>;
|
|
};
|
|
|
|
&vp3 {
|
|
rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESMART3)>;
|
|
rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART3>;
|
|
};
|
|
|
|
&display_subsystem {
|
|
clocks = <&hdptxphy_hdmi_clk0>;
|
|
clock-names = "hdmi0_phy_pll";
|
|
};
|
|
|
|
&hdptxphy_hdmi_clk0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&wdt {
|
|
status = "okay";
|
|
}; |