Type: Function Redmine ID: #N/A Associated modifications: I649a447919003574d907b83b10ba3fd7496ad492 Test: N/A Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com> Change-Id: I310e7bf9f743accd3bc9b1f26c30a6b4fc3cd3c7
533 lines
11 KiB
Plaintext
533 lines
11 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2025 Rockchip Electronics Co., Ltd.
|
|
*
|
|
*/
|
|
|
|
/ {
|
|
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)
|
|
*/
|
|
reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
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>;
|
|
status = "okay";
|
|
};
|
|
|
|
vbus5v0_typec: vbus5v0-typec {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vbus5v0_typec";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
enable-active-high;
|
|
gpio = <&gpio5 RK_PD6 GPIO_ACTIVE_HIGH>;
|
|
vin-supply = <&vcc5v0_sys>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&typec5v_pwren>;
|
|
};
|
|
|
|
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 = <&gpio5 RK_PA7 GPIO_ACTIVE_HIGH>;
|
|
vin-supply = <&vcc5v0_sys>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&vcc5v0_host_en>;
|
|
};
|
|
|
|
vcc_mipi: vcc-mipi {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc_mipi";
|
|
gpio = <&gpio7 RK_PA2 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
regulator-boot-on;
|
|
};
|
|
|
|
vcc_sd: vcc-sd {
|
|
compatible = "regulator-fixed";
|
|
gpio = <&gpio0 RK_PB0 GPIO_ACTIVE_LOW>;
|
|
regulator-name = "vcc_sd";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
enable-active-low;
|
|
regulator-boot-on; // The legacy U-Boot GPIO driver needs this to set correct SDMMC0_PWREN value
|
|
vin-supply = <&vcc12v_dcin>;
|
|
};
|
|
|
|
vccio_sd: vccio-sd {
|
|
compatible = "regulator-gpio";
|
|
regulator-boot-on;
|
|
regulator-name = "vccio_sd";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&sdmmc_volt>;
|
|
gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
|
|
vin-supply = <&vcc5v0_sys>;
|
|
states = <1800000 0x0
|
|
3300000 0x1>;
|
|
};
|
|
|
|
vdd_npu: vdd-npu {
|
|
compatible = "pwm-regulator";
|
|
pwms = <&pwm0_8ch_0 0 25000 1>;
|
|
regulator-name = "vdd_npu";
|
|
regulator-init-microvolt = <950000>;
|
|
regulator-min-microvolt = <750000>;
|
|
regulator-max-microvolt = <1100000>;
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
enable-gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>;
|
|
pwm-supply = <&vcc5v0_sys>;
|
|
};
|
|
|
|
wireless-bluetooth {
|
|
compatible = "bluetooth-platdata";
|
|
uart_rts_gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_LOW>;
|
|
pinctrl-names = "default", "rts_gpio";
|
|
pinctrl-0 = <&uart2m0_rtsn_pins>;
|
|
pinctrl-1 = <&uart2_gpios>;
|
|
BT,power_gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
|
|
wireless-wlan {
|
|
compatible = "wlan-platdata";
|
|
rockchip,grf = <&grf>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&wifi_wake_host>;
|
|
wifi_chip_type = "rk96x";
|
|
WIFI,host_wake_irq = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
&acdcdig_dsm {
|
|
status = "okay";
|
|
pa-ctl-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
&acodec_sound {
|
|
status = "okay";
|
|
};
|
|
|
|
&audio_codec {
|
|
status = "okay";
|
|
};
|
|
|
|
&backlight {
|
|
pwms = <&pwm2_8ch_4 0 25000 0>;
|
|
};
|
|
|
|
&cpu0 {
|
|
cpu-supply = <&vdd_cpu>;
|
|
};
|
|
|
|
&display_subsystem {
|
|
status = "okay";
|
|
};
|
|
|
|
&dsi {
|
|
status = "okay";
|
|
};
|
|
|
|
&dsi_in_vop {
|
|
status = "okay";
|
|
};
|
|
|
|
&dsi_panel {
|
|
power-supply = <&vcc_mipi>;
|
|
};
|
|
|
|
&emmc {
|
|
bus-width = <8>;
|
|
cap-mmc-highspeed;
|
|
non-removable;
|
|
mmc-hs200-1_8v;
|
|
rockchip,default-sample-phase = <90>;
|
|
no-sdio;
|
|
no-sd;
|
|
status = "okay";
|
|
};
|
|
|
|
&fspi0 {
|
|
status = "okay";
|
|
|
|
flash@0 {
|
|
compatible = "spi-nand";
|
|
reg = <0>;
|
|
spi-max-frequency = <75000000>;
|
|
spi-rx-bus-width = <4>;
|
|
spi-tx-bus-width = <1>;
|
|
};
|
|
};
|
|
|
|
&gmac {
|
|
phy-mode = "rmii";
|
|
clock_in_out = "input";
|
|
phy-handle = <&rmii_phy>;
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c0 {
|
|
status = "okay";
|
|
|
|
rk801: rk801@27 {
|
|
compatible = "rockchip,rk801";
|
|
status = "okay";
|
|
reg = <0x27>;
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <RK_PC0 IRQ_TYPE_LEVEL_LOW>;
|
|
pwrctrl-gpios = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;
|
|
|
|
pinctrl-names = "default", "pmic-reset";
|
|
pinctrl-0 = <&pmic_int>;
|
|
pinctrl-1 = <&soc_pwrctrl_reset>;
|
|
rockchip,system-power-controller;
|
|
wakeup-source;
|
|
|
|
vcc1-supply = <&vcc12v_dcin>;
|
|
vcc2-supply = <&vcc12v_dcin>;
|
|
vcc3-supply = <&vcc5v0_sys>;
|
|
vcc4-supply = <&vcc5v0_sys>;
|
|
vcc5-supply = <&vcc3v3_sys>;
|
|
vcc6-supply = <&vcc3v3_sys>;
|
|
vcc7-supply = <&vcc3v3_sys>;
|
|
|
|
regulators {
|
|
vdd_cpu: DCDC_REG1 {
|
|
regulator-name = "vdd_cpu";
|
|
regulator-min-microvolt = <500000>;
|
|
regulator-max-microvolt = <1500000>;
|
|
regulator-initial-mode = <0x1>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-mode = <0x2>;
|
|
regulator-off-in-suspend;
|
|
regulator-suspend-microvolt = <950000>;
|
|
};
|
|
};
|
|
|
|
vcc3v3_sys: DCDC_REG2 {
|
|
regulator-name = "vcc3v3_sys";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-initial-mode = <0x1>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-mode = <0x2>;
|
|
regulator-on-in-suspend;
|
|
regulator-suspend-microvolt = <3300000>;
|
|
};
|
|
};
|
|
|
|
vcc_ddr: DCDC_REG3 {
|
|
regulator-name = "vcc_ddr";
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-mode = <0x2>;
|
|
regulator-on-in-suspend;
|
|
};
|
|
};
|
|
|
|
vdd_logic: DCDC_REG4 {
|
|
regulator-name = "vdd_logic";
|
|
regulator-min-microvolt = <500000>;
|
|
regulator-max-microvolt = <1500000>;
|
|
regulator-initial-mode = <0x1>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-mode = <0x2>;
|
|
regulator-off-in-suspend;
|
|
regulator-suspend-microvolt = <900000>;
|
|
};
|
|
};
|
|
|
|
vdd0v9_sys: LDO_REG1 {
|
|
regulator-name = "vdd0v9_sys";
|
|
regulator-min-microvolt = <900000>;
|
|
regulator-max-microvolt = <900000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
regulator-suspend-microvolt = <900000>;
|
|
};
|
|
};
|
|
|
|
vcc_1v8: LDO_REG2 {
|
|
regulator-name = "vcc_1v8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
regulator-suspend-microvolt = <1800000>;
|
|
};
|
|
};
|
|
|
|
vcc_3v3: SWITCH_REG {
|
|
regulator-name = "vcc_3v3";
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
regulator-suspend-microvolt = <3300000>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c4 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c4m3_pins>;
|
|
|
|
gt1x: gt1x@14 {
|
|
compatible = "goodix,gt1x";
|
|
reg = <0x14>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&touch_gpio>;
|
|
power-supply = <&vcc_mipi>;
|
|
goodix,rst-gpio = <&gpio7 RK_PA7 GPIO_ACTIVE_HIGH>;
|
|
goodix,irq-gpio = <&gpio7 RK_PA6 IRQ_TYPE_LEVEL_LOW>;
|
|
};
|
|
|
|
hynitron: hynitron@5a {
|
|
compatible = "hyn,3240";
|
|
reg = <0x5a>;
|
|
power-supply = <&vcc_mipi>;
|
|
|
|
pinctrl-names = "ts_active","ts_suspend";
|
|
pinctrl-0 = <&ts_int_active &ts_reset_active>;
|
|
pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
|
|
|
|
reset-gpios = <&gpio7 RK_PA7 GPIO_ACTIVE_HIGH>;
|
|
irq-gpios = <&gpio7 RK_PA6 GPIO_ACTIVE_LOW>;
|
|
|
|
max-touch-number = <5>;
|
|
display-coords = <0 0 1080 1920>;
|
|
pos-swap = <0>;
|
|
posx-reverse = <0>;
|
|
posy-reverse = <0>;
|
|
};
|
|
};
|
|
|
|
&mdio {
|
|
rmii_phy: ethernet-phy@2 {
|
|
compatible = "ethernet-phy-id0680.8101", "ethernet-phy-ieee802.3-c22";
|
|
reg = <2>;
|
|
clocks = <&cru CLK_MACPHY>;
|
|
clock-frequency = <24000000>;
|
|
resets = <&cru SRST_RESETN_MACPHY>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&fephym1_pins>;
|
|
phy-is-integrated;
|
|
};
|
|
};
|
|
|
|
&mipi_dphy {
|
|
status = "okay";
|
|
};
|
|
|
|
&pinctrl {
|
|
pmic {
|
|
pmic_int: pmic-int {
|
|
rockchip,pins = <0 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
|
|
soc_pwrctrl_reset: soc-pwrctrl-reset {
|
|
rockchip,pins = <0 RK_PC1 RK_FUNC_GPIO &pcfg_output_high>;
|
|
};
|
|
};
|
|
|
|
sdio-pwrseq {
|
|
wifi_enable_h: wifi-enable-h {
|
|
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
sdmmc {
|
|
/omit-if-no-ref/
|
|
sdmmc_volt: sdmmc-volt {
|
|
rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
touch {
|
|
touch_gpio: touch-gpio {
|
|
rockchip,pins =
|
|
<7 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>,
|
|
<7 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
|
|
ts_int_active: ts_int_active {
|
|
rockchip,pins = <7 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
|
|
ts_reset_active: ts_reset_active {
|
|
rockchip,pins = <7 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
|
|
ts_int_suspend: ts_int_suspend {
|
|
rockchip,pins = <7 RK_PA6 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
};
|
|
|
|
ts_reset_suspend: ts_reset_suspend {
|
|
rockchip,pins = <7 RK_PA7 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
};
|
|
};
|
|
|
|
usb {
|
|
typec5v_pwren: typec5v-pwren {
|
|
rockchip,pins = <5 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
|
|
vcc5v0_host_en: vcc5v0-host-en {
|
|
rockchip,pins = <5 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
wireless-bluetooth {
|
|
uart2_gpios: uart2-gpios {
|
|
rockchip,pins = <3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
wireless-wlan {
|
|
wifi_wake_host: wifi-wake-host {
|
|
rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&pwm0_8ch_0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&pwm2_8ch_4 {
|
|
pinctrl-0 = <&pwm2m1_ch4_pins>;
|
|
status = "okay";
|
|
};
|
|
|
|
&rkaiisp {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkaiisp_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkaiisp_vir0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkavsp {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkavsp_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkfec {
|
|
status = "okay";
|
|
};
|
|
|
|
&rkfec_mmu {
|
|
status = "okay";
|
|
};
|
|
|
|
&rknpu {
|
|
rknpu-supply = <&vdd_npu>;
|
|
};
|
|
|
|
&route_dsi {
|
|
status = "okay";
|
|
};
|
|
|
|
&sai2 {
|
|
status = "okay";
|
|
/delete-property/ pinctrl-names;
|
|
/delete-property/ pinctrl-0;
|
|
};
|
|
|
|
&saradc0 {
|
|
vref-supply = <&vcc_1v8>;
|
|
};
|
|
|
|
&sdmmc0 {
|
|
max-frequency = <200000000>;
|
|
no-sdio;
|
|
no-mmc;
|
|
bus-width = <4>;
|
|
cap-mmc-highspeed;
|
|
cap-sd-highspeed;
|
|
disable-wp;
|
|
sd-uhs-sdr104;
|
|
vmmc-supply = <&vcc_sd>;
|
|
vqmmc-supply = <&vccio_sd>;
|
|
status = "okay";
|
|
};
|
|
|
|
&sdmmc1 {
|
|
bus-width = <4>;
|
|
cap-sd-highspeed;
|
|
no-sd;
|
|
no-mmc;
|
|
max-frequency = <200000000>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&sdmmc1_clk_pins &sdmmc1_cmd_pins &sdmmc1_bus4_pins>;
|
|
keep-power-in-suspend;
|
|
non-removable;
|
|
mmc-pwrseq = <&sdio_pwrseq>;
|
|
//sd-uhs-sdr104;
|
|
status = "okay";
|
|
};
|
|
|
|
&uart2 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart2m0_xfer_pins &uart2m0_ctsn_pins>;
|
|
};
|
|
|
|
&usb2phy_host {
|
|
phy-supply = <&vcc5v0_host>;
|
|
};
|
|
|
|
&usb2phy_otg {
|
|
vbus-supply = <&vbus5v0_typec>;
|
|
};
|
|
|
|
&usb_drd_dwc3 {
|
|
dr_mode = "otg";
|
|
extcon = <&usb2phy>;
|
|
};
|