mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
arm64: dts: rockchip: add rk3588 pc demo board
V2: key: remove Non existent key panel: use simple-panel driver regulator: correct usb gpio gpio: add hub_en,camera_en fix some typo V3: WIFI/BT: add support V4: remove Makefile for easy rebase V5: fixed wifi_pwren issue support pcie ssd increase Sdio Driver Strength Selection V6: support es8326/es7243e/pdm sound Supports DP dual display fixed PINCtrl conflict V7: support sc8886 disabled pcie now for some board can not boot Add the hardware mouse layer V8: support cw2017 Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com> Change-Id: Ia516536751ac645b704b5cae9bb275bd48b5aba8
This commit is contained in:
@@ -107,6 +107,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-evb6-lp4-v10-linux.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-nvr-demo-v10.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-nvr-demo-v10-android.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-nvr-demo-v10-spi-nand.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-th240n.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588s-evb1-lp4x-v10.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588s-evb1-lp4x-v10-linux.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588s-evb2-lp5-v10.dtb
|
||||
|
||||
320
arch/arm64/boot/dts/rockchip/rk3588-pc.dtsi
Normal file
320
arch/arm64/boot/dts/rockchip/rk3588-pc.dtsi
Normal file
@@ -0,0 +1,320 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2021 Rockchip Electronics Co., Ltd.
|
||||
*
|
||||
*/
|
||||
|
||||
/ {
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
brightness-levels = <
|
||||
0 20 20 21 21 22 22 23
|
||||
23 24 24 25 25 26 26 27
|
||||
27 28 28 29 29 30 30 31
|
||||
31 32 32 33 33 34 34 35
|
||||
35 36 36 37 37 38 38 39
|
||||
40 41 42 43 44 45 46 47
|
||||
48 49 50 51 52 53 54 55
|
||||
56 57 58 59 60 61 62 63
|
||||
64 65 66 67 68 69 70 71
|
||||
72 73 74 75 76 77 78 79
|
||||
80 81 82 83 84 85 86 87
|
||||
88 89 90 91 92 93 94 95
|
||||
96 97 98 99 100 101 102 103
|
||||
104 105 106 107 108 109 110 111
|
||||
112 113 114 115 116 117 118 119
|
||||
120 121 122 123 124 125 126 127
|
||||
128 129 130 131 132 133 134 135
|
||||
136 137 138 139 140 141 142 143
|
||||
144 145 146 147 148 149 150 151
|
||||
152 153 154 155 156 157 158 159
|
||||
160 161 162 163 164 165 166 167
|
||||
168 169 170 171 172 173 174 175
|
||||
176 177 178 179 180 181 182 183
|
||||
184 185 186 187 188 189 190 191
|
||||
192 193 194 195 196 197 198 199
|
||||
200 201 202 203 204 205 206 207
|
||||
208 209 210 211 212 213 214 215
|
||||
216 217 218 219 220 221 222 223
|
||||
224 225 226 227 228 229 230 231
|
||||
232 233 234 235 236 237 238 239
|
||||
240 241 242 243 244 245 246 247
|
||||
248 249 250 251 252 253 254 255
|
||||
>;
|
||||
default-brightness-level = <200>;
|
||||
};
|
||||
|
||||
hdmi1_sound: hdmi1-sound {
|
||||
compatible = "rockchip,hdmi";
|
||||
rockchip,mclk-fs = <128>;
|
||||
rockchip,card-name = "rockchip,hdmi1";
|
||||
rockchip,cpu = <&i2s6_8ch>;
|
||||
rockchip,codec = <&hdmi1>;
|
||||
rockchip,jack-det;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
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>;
|
||||
};
|
||||
|
||||
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>;
|
||||
};
|
||||
};
|
||||
|
||||
&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";
|
||||
};
|
||||
|
||||
&jpege0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&jpege0_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";
|
||||
};
|
||||
|
||||
&rkvdec0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&rkvdec0_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&rkvenc0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&rkvenc0_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saradc {
|
||||
status = "okay";
|
||||
vref-supply = <&vcc_1v8_s0>;
|
||||
};
|
||||
|
||||
&tsadc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy0_otg {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy1_otg {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy2_host {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy3_host {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host1_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host1_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdp_phy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdp_phy0_dp {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdp_phy0_u3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdp_phy1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdp_phy1_dp {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdp_phy1_u3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd3_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbhost3_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbhost_dwc3_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd3_1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vdpu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vdpu_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vop {
|
||||
disable-win-move;
|
||||
assigned-clocks = <&cru DCLK_VOP0_SRC>,
|
||||
<&cru DCLK_VOP1_SRC>,
|
||||
<&cru DCLK_VOP2_SRC>,
|
||||
<&cru DCLK_VOP3>;
|
||||
assigned-clock-parents = <0>, <0>, <&cru PLL_V0PLL>, <0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vop_mmu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vp0 {
|
||||
cursor-win-id=<ROCKCHIP_VOP2_ESMART2>;
|
||||
rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0 | 1 << ROCKCHIP_VOP2_ESMART2)>;
|
||||
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 {
|
||||
cursor-win-id=<ROCKCHIP_VOP2_ESMART3>;
|
||||
rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER2 | 1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESMART3)>;
|
||||
rockchip,primary-plane = <ROCKCHIP_VOP2_CLUSTER3>;
|
||||
};
|
||||
|
||||
&vp3 {
|
||||
/delete-property/ rockchip,plane-mask;
|
||||
/delete-property/ rockchip,primary-plane;
|
||||
};
|
||||
641
arch/arm64/boot/dts/rockchip/rk3588-th240n.dts
Normal file
641
arch/arm64/boot/dts/rockchip/rk3588-th240n.dts
Normal file
@@ -0,0 +1,641 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2021 Rockchip Electronics Co., Ltd.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/usb/pd.h>
|
||||
#include <dt-bindings/display/rockchip_vop.h>
|
||||
|
||||
#include "rk3588.dtsi"
|
||||
#include "rk3588-rk806-dual.dtsi"
|
||||
#include "rk3588-linux.dtsi"
|
||||
#include "rk3588-pc.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Rockchip RK3588 ARM PC Demo";
|
||||
compatible = "rockchip,rk3588-arm-pc-demo", "rockchip,rk3588";
|
||||
|
||||
chosen: chosen {
|
||||
bootargs = "earlycon=uart8250,mmio32,0xfeb50000 console=tty1 console=ttyFIQ0 root=PARTUUID=614e0000-0000 rw rootwait wifibt=ap6275s:ttyS1";
|
||||
};
|
||||
|
||||
dmic_sound: dmic-sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,mclk-fs = <256>;
|
||||
simple-audio-card,name = "rockchip,dmic-sound";
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&pdm1>;
|
||||
};
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&dmic_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
dmic_codec: dmic-codec {
|
||||
compatible = "rockchip,dummy-codec";
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
|
||||
es_sound: es-sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,mclk-fs = <256>;
|
||||
simple-audio-card,name = "rockchip,es-sound";
|
||||
|
||||
simple-audio-card,dai-link@0 {
|
||||
format = "i2s";
|
||||
cpu {
|
||||
sound-dai = <&i2s0_8ch>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&es8326>;
|
||||
};
|
||||
};
|
||||
simple-audio-card,dai-link@1 {
|
||||
format = "i2s";
|
||||
cpu {
|
||||
sound-dai = <&i2s0_8ch>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&es7243e>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
hall_sensor: hall-mh248 {
|
||||
compatible = "hall-mh248";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mh248_irq_gpio>;
|
||||
irq-gpio = <&gpio0 RK_PD2 IRQ_TYPE_EDGE_BOTH>;
|
||||
hall-active = <1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
leds: leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 =<&leds_gpio>;
|
||||
};
|
||||
|
||||
panel-edp {
|
||||
compatible = "simple-panel";
|
||||
backlight = <&backlight>;
|
||||
enable-gpios = <&gpio1 RK_PC4 GPIO_ACTIVE_HIGH>;
|
||||
power-supply = <&vcc3v3_lcd>;
|
||||
prepare-delay-ms = <210>;
|
||||
enable-delay-ms = <50>;
|
||||
unprepare-delay-ms = <160>;
|
||||
disable-delay-ms = <120>;
|
||||
width-mm = <309>;
|
||||
height-mm = <174>;
|
||||
|
||||
panel-timing {
|
||||
clock-frequency = <148500000>;
|
||||
hactive = <1920>;
|
||||
vactive = <1080>;
|
||||
hfront-porch = <48>;
|
||||
hsync-len = <32>;
|
||||
hback-porch = <200>;
|
||||
vfront-porch = <3>;
|
||||
vsync-len = <5>;
|
||||
vback-porch = <37>;
|
||||
hsync-active = <0>;
|
||||
vsync-active = <0>;
|
||||
de-active = <0>;
|
||||
pixelclk-active = <0>;
|
||||
};
|
||||
|
||||
port {
|
||||
panel_in_edp0: endpoint {
|
||||
remote-endpoint = <&edp0_out_panel>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
sdio_pwrseq: sdio-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
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_PC7 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
vcc3v3_lcd: vcc3v3-lcd {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3_lcd";
|
||||
vin-supply = <&vcc_3v3_s0>;
|
||||
};
|
||||
|
||||
vcc3v3_pcie30: vcc3v3-pcie30 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc3v3_pcie30";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
enable-active-high;
|
||||
gpios = <&gpio3 RK_PC3 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <5000>;
|
||||
vin-supply = <&vcc12v_dcin>;
|
||||
};
|
||||
|
||||
vcc5v0_host: vcc5v0-host {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc5v0_host";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
enable-active-high;
|
||||
gpio = <&gpio4 RK_PC3 GPIO_ACTIVE_HIGH>;
|
||||
vin-supply = <&vcc5v0_usb>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vcc5v0_host_en>;
|
||||
};
|
||||
|
||||
vbus5v0_typec: vbus5v0-typec {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbus5v0_typec";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
enable-active-high;
|
||||
gpio = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>;
|
||||
vin-supply = <&vcc5v0_sys>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&typec5v_pwren>;
|
||||
|
||||
};
|
||||
|
||||
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>;
|
||||
};
|
||||
|
||||
wifi_bat: wifi_bat {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "wifi_vbat";
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
gpio = <&gpio3 RK_PC6 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_3v3>;
|
||||
};
|
||||
|
||||
wireless_bluetooth: wireless-bluetooth {
|
||||
compatible = "bluetooth-platdata";
|
||||
clocks = <&hym8563>;
|
||||
clock-names = "ext_clock";
|
||||
uart_rts_gpios = <&gpio1 RK_PD6 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default", "rts_gpio";
|
||||
pinctrl-0 = <&uart1m1_rtsn>;
|
||||
pinctrl-1 = <&uart1_gpios>;
|
||||
BT,reset_gpio = <&gpio3 RK_PB1 GPIO_ACTIVE_HIGH>;
|
||||
BT,wake_gpio = <&gpio4 RK_PC4 GPIO_ACTIVE_HIGH>;
|
||||
BT,wake_host_irq = <&gpio3 RK_PA6 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
wireless_wlan: wireless-wlan {
|
||||
compatible = "wlan-platdata";
|
||||
wifi_chip_type = "ap6275s";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_host_wake_irq>;
|
||||
WIFI,host_wake_irq = <&gpio0 RK_PC4 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&backlight {
|
||||
status = "okay";
|
||||
pwms = <&pwm15 0 25000 0>;
|
||||
enable-gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&dp0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&dp0_in_vp2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&edp0 {
|
||||
force-hpd;
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
|
||||
edp0_out_panel: endpoint {
|
||||
remote-endpoint = <&panel_in_edp0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&edp0_in_vp0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi1 {
|
||||
pinctrl-0=<&hdmim2_tx1_cec &hdmim0_tx1_hpd &hdmim2_tx1_scl &hdmim2_tx1_sda>;
|
||||
pinctrl-names = "default";
|
||||
enable-gpios = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi1_in_vp1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi1_sound {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&hdptxphy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdptxphy_hdmi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
status = "okay";
|
||||
cw2017: cw2017@63 {
|
||||
status = "okay";
|
||||
compatible = "cellwise,cw2017";
|
||||
reg = <0x63>;
|
||||
cellwise,battery-profile = /bits/ 8
|
||||
<0x46 0x00 0x00 0x00 0x00 0x00 0x00 0x00
|
||||
0xA1 0xC1 0xC6 0xC9 0xCE 0xC6 0x8B 0x48
|
||||
0x28 0xFF 0xFF 0xCC 0x9F 0x75 0x60 0x50
|
||||
0x47 0x43 0x3D 0x74 0xA2 0xD8 0x96 0xD9
|
||||
0xD1 0xCF 0xCD 0xCA 0xB8 0xE0 0xDB 0x91
|
||||
0xA8 0xAF 0xAB 0x96 0x89 0x7E 0x71 0x5F
|
||||
0x53 0x4C 0x66 0x87 0x9B 0x8B 0x78 0x99
|
||||
0x00 0x00 0x90 0x02 0x00 0x00 0x00 0x00
|
||||
0x00 0x00 0x64 0x00 0x00 0x00 0x00 0x00
|
||||
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x6E>;
|
||||
cellwise,dual-cell;
|
||||
cellwise,monitor-interval-ms = <5000>;
|
||||
power-supplies = <&sc8886>;
|
||||
};
|
||||
|
||||
hym8563: hym8563@51 {
|
||||
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>;
|
||||
};
|
||||
|
||||
sc8886: sc8886@6b {
|
||||
compatible = "southchip,sc8886";
|
||||
reg = <0x6b>;
|
||||
ti,usb-charger-detection = <&usbc0>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PD0 IRQ_TYPE_LEVEL_LOW>;
|
||||
otg-mode-en-gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&charger_ok>;
|
||||
extcon = <&u2phy0>;
|
||||
ti,charge-current = <2500000>;
|
||||
ti,max-input-voltage = <20000000>;
|
||||
ti,max-input-current = <6000000>;
|
||||
ti,max-charge-voltage = <8750000>;
|
||||
ti,input-current = <500000>;
|
||||
ti,input-current-sdp = <500000>;
|
||||
ti,input-current-dcp = <2000000>;
|
||||
ti,input-current-cdp = <2000000>;
|
||||
ti,minimum-sys-voltage = <7400000>;
|
||||
ti,otg-voltage = <5000000>;
|
||||
ti,otg-current = <500000>;
|
||||
pd-charge-only = <0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
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>;
|
||||
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, 1000, PDO_FIXED_USB_COMM)
|
||||
PDO_FIXED(20000, 2250, 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>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
status = "okay";
|
||||
es7243e: es7243e@10 {
|
||||
status = "okay";
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "ES7243E_MicArray_0";
|
||||
reg = <0x10>;
|
||||
};
|
||||
|
||||
es8326: es8326@19 {
|
||||
compatible = "everest,es8326";
|
||||
status = "okay";
|
||||
reg = <0x19>;
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&cru I2S0_8CH_MCLKOUT>;
|
||||
clock-names = "mclk";
|
||||
assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
|
||||
assigned-clock-rates = <12288000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2s0_mclk>;
|
||||
spk-con-gpio = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2s0_8ch {
|
||||
status = "okay";
|
||||
#sound-dai-cells = <0>;
|
||||
rockchip,i2s-rx-route = <0 2 1 3>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2s0_lrck
|
||||
&i2s0_sclk
|
||||
&i2s0_sdi0
|
||||
&i2s0_sdi1
|
||||
&i2s0_sdi2
|
||||
&i2s0_sdo0>;
|
||||
};
|
||||
|
||||
&i2s6_8ch {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie30phy {
|
||||
rockchip,pcie30-phymode = <PHY_MODE_PCIE_AGGREGATION>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie3x4 {
|
||||
reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
|
||||
vpcie3v3-supply = <&vcc3v3_pcie30>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pdm1 {
|
||||
status = "okay";
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pdm1m1_clk
|
||||
&pdm1m1_sdi0>;
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
|
||||
gpio-leds {
|
||||
leds_gpio: leds-gpio {
|
||||
rockchip,pins = <3 RK_PC1 RK_FUNC_GPIO &pcfg_output_high>;
|
||||
};
|
||||
};
|
||||
|
||||
hym8563 {
|
||||
hym8563_int: hym8563-int {
|
||||
rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
sc8886 {
|
||||
charger_ok: charger-ok {
|
||||
rockchip,pins = <0 RK_PD0 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
sdio-pwrseq {
|
||||
wifi_enable_h: wifi-enable-h {
|
||||
rockchip,pins = <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
sdio-wifi {
|
||||
sdio_pins: sdio-pins {
|
||||
rockchip,pins =
|
||||
/* sdio_clk_m1 */
|
||||
<3 RK_PA5 2 &pcfg_pull_up_drv_level_2>,
|
||||
/* sdio_cmd_m1 */
|
||||
<3 RK_PA4 2 &pcfg_pull_up_drv_level_2>,
|
||||
/* sdio_d0_m1 */
|
||||
<3 RK_PA0 2 &pcfg_pull_up_drv_level_2>,
|
||||
/* sdio_d1_m1 */
|
||||
<3 RK_PA1 2 &pcfg_pull_up_drv_level_2>,
|
||||
/* sdio_d2_m1 */
|
||||
<3 RK_PA2 2 &pcfg_pull_up_drv_level_2>,
|
||||
/* sdio_d3_m1 */
|
||||
<3 RK_PA3 2 &pcfg_pull_up_drv_level_2>;
|
||||
};
|
||||
};
|
||||
|
||||
sensor {
|
||||
mh248_irq_gpio: mh248-irq-gpio {
|
||||
rockchip,pins = <0 RK_PD2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
usb {
|
||||
vcc5v0_host_en: vcc5v0-host-en {
|
||||
rockchip,pins = <4 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>,
|
||||
<2 RK_PB6 RK_FUNC_GPIO &pcfg_output_high>, /* CAM_EN */
|
||||
<3 RK_PC0 RK_FUNC_GPIO &pcfg_output_high>; /* HUB_EN */
|
||||
};
|
||||
};
|
||||
|
||||
usb-typec {
|
||||
usbc0_int: usbc0-int {
|
||||
rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
|
||||
typec5v_pwren: typec5v-pwren {
|
||||
rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_vbat {
|
||||
wifi_3v3: wifi-vbat {
|
||||
rockchip,pins = <3 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
wireless-bluetooth {
|
||||
uart1_gpios: uart1-gpios {
|
||||
rockchip,pins = <1 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
wireless-wlan {
|
||||
wifi_host_wake_irq: wifi-host-wake-irq {
|
||||
rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm15 {
|
||||
pinctrl-0 = <&pwm15m1_pins>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
bus-width = <8>;
|
||||
no-sdio;
|
||||
no-sd;
|
||||
non-removable;
|
||||
max-frequency = <200000000>;
|
||||
mmc-hs400-1_8v;
|
||||
mmc-hs400-enhanced-strobe;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&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 = <&sdio_pins>;
|
||||
sd-uhs-sdr104;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
max-frequency = <150000000>;
|
||||
no-sdio;
|
||||
no-mmc;
|
||||
bus-width = <4>;
|
||||
cap-mmc-highspeed;
|
||||
cap-sd-highspeed;
|
||||
disable-wp;
|
||||
sd-uhs-sdr104;
|
||||
vmmc-supply = <&vcc_3v3_sd_s0>;
|
||||
vqmmc-supply = <&vccio_sd_s0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1m1_xfer &uart1m1_ctsn>;
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
status = "okay";
|
||||
usb-role-switch;
|
||||
port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
dwc3_0_role_switch: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&usbc0_role_sw>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&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>;
|
||||
};
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user