// SPDX-License-Identifier: (GPL-2.0 OR MIT) /* * Copyright (C) 2025 Michael Opdenacker */ #include #include #include #include #include "rk3566.dtsi" / { aliases { i2c0 = &i2c0; i2c2 = &i2c2; mmc1 = &sdmmc0; serial2 = &uart2; }; chosen { stdout-path = "serial2:1500000n8"; }; gpio_leds: gpio-leds { compatible = "gpio-leds"; act-led { gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>; linux,default-trigger="mmc1"; }; rsv-led { gpios = <&gpio0 RK_PD6 GPIO_ACTIVE_HIGH>; linux,default-trigger="none"; }; }; vcc3v3_sys: regulator-3v3-vcc-sys { compatible = "regulator-fixed"; regulator-name = "vcc3v3_sys"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; vin-supply = <&vcc5v0_sys>; }; vcc5v0_sys: regulator-5v0-vcc-sys { compatible = "regulator-fixed"; regulator-name = "vcc5v0_sys"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; vcc5v0_usb_host: regulator-5v0-vcc-usb-host { compatible = "regulator-fixed"; enable-active-high; gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&u2_a_vbus_en>; regulator-name = "vcc5v0_usb_host"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; vin-supply = <&vcc5v0_sys>; }; }; &cpu0 { cpu-supply = <&vdd_cpu>; }; &cpu1 { cpu-supply = <&vdd_cpu>; }; &cpu2 { cpu-supply = <&vdd_cpu>; }; &cpu3 { cpu-supply = <&vdd_cpu>; }; &i2c0 { status = "okay"; rk809: pmic@20 { compatible = "rockchip,rk809"; reg = <0x20>; assigned-clocks = <&cru I2S1_MCLKOUT_TX>; assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>; #clock-cells = <1>; clocks = <&cru I2S1_MCLKOUT_TX>; clock-names = "mclk"; clock-output-names = "rk809-clkout1", "rk809-clkout2"; interrupt-parent = <&gpio0>; interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&pmic_int_l>, <&i2s1m0_mclk>; #sound-dai-cells = <0>; system-power-controller; wakeup-source; vcc1-supply = <&vcc3v3_sys>; vcc2-supply = <&vcc3v3_sys>; vcc3-supply = <&vcc3v3_sys>; vcc4-supply = <&vcc3v3_sys>; vcc5-supply = <&vcc3v3_sys>; vcc6-supply = <&vcc3v3_sys>; vcc7-supply = <&vcc3v3_sys>; vcc8-supply = <&vcc3v3_sys>; vcc9-supply = <&vcc3v3_sys>; regulators { vcc_1v8: DCDC_REG5 { regulator-name = "vcc_1v8"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-state-mem { regulator-off-in-suspend; }; }; vcc_3v3: SWITCH_REG1 { regulator-name = "vcc_3v3"; regulator-always-on; regulator-boot-on; regulator-state-mem { regulator-off-in-suspend; }; }; vcc3v3_sd: SWITCH_REG2 { regulator-name = "vcc3v3_sd"; regulator-always-on; regulator-boot-on; regulator-state-mem { regulator-off-in-suspend; }; }; vccio_sd: LDO_REG5 { regulator-name = "vccio_sd"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>; regulator-state-mem { regulator-off-in-suspend; }; }; }; }; vdd_cpu: regulator@40 { compatible = "silergy,syr827"; reg = <0x40>; fcs,suspend-voltage-selector = <1>; regulator-name = "vdd_cpu"; regulator-always-on; regulator-boot-on; regulator-min-microvolt = <830000>; regulator-max-microvolt = <1200000>; regulator-ramp-delay = <2300>; vin-supply = <&vcc3v3_sys>; regulator-state-mem { regulator-off-in-suspend; }; }; }; &i2c2 { status = "okay"; eeprom@50 { compatible = "atmel,24c08"; reg = <0x50>; pinctrl-names = "default"; pinctrl-0 = <&eeprom_wc_n>; }; rtc_isl1208: rtc@6f { compatible = "isil,isl1208"; reg = <0x6f>; interrupt-names = "irq"; interrupts-extended = <&gpio0 RK_PD3 IRQ_TYPE_EDGE_FALLING>; pinctrl-names = "default"; pinctrl-0 = <&rtcic_int_l>; }; }; &pinctrl { eeprom { eeprom_wc_n: eeprom-wc-n { rockchip,pins = <3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>; }; }; pmic { pmic_int_l: pmic-int-l { rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; }; }; rtc { rtcic_int_l: rtcic-int-l { rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>; }; }; usb { u2_a_vbus_en: u2-a-vbus-en { rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; }; u3_a_vbus_en: u3-a-vbus-en { rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; }; }; }; &sdmmc0 { bus-width = <4>; cap-sd-highspeed; disable-wp; pinctrl-names = "default"; pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>; vmmc-supply = <&vcc3v3_sd>; vqmmc-supply = <&vccio_sd>; status = "okay"; }; &uart2 { status = "okay"; }; &usb_host0_ehci { status = "okay"; }; &usb_host0_ohci { status = "okay"; }; &usb_host1_ehci { status = "okay"; }; &usb_host1_ohci { status = "okay"; }; &usb2phy0 { status = "okay"; }; &usb2phy0_host { phy-supply = <&vcc5v0_usb_host>; status = "okay"; }; &usb2phy1 { status = "okay"; }; &usb2phy1_host { phy-supply = <&vcc5v0_usb_host>; status = "okay"; };