// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
/*
|
* Copyright (c) 2021 Rockchip Electronics Co., Ltd.
|
*
|
*/
|
|
/dts-v1/;
|
|
#include "rk3588s-orangepi-5.dtsi"
|
#include "rk3588-linux.dtsi"
|
#include "rk3588s-orangepi-5-lcd.dtsi"
|
|
#include "rk3588s-orangepi-5-camera1.dtsi"
|
#include "rk3588s-orangepi-5-camera2.dtsi"
|
#include "rk3588s-orangepi-5-camera3.dtsi"
|
|
/ {
|
model = "Orange Pi 5";
|
compatible = "rockchip,rk3588s-orangepi-5", "rockchip,rk3588";
|
|
/delete-node/ chosen;
|
|
vcc_3v3_sd_s0: vcc-3v3-sd-s0 {
|
compatible = "regulator-fixed";
|
regulator-name = "vcc_3v3_sd_s0";
|
regulator-min-microvolt = <3300000>;
|
regulator-max-microvolt = <3300000>;
|
gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_LOW>;
|
enable-active-low;
|
vin-supply = <&vcc_3v3_s3>;
|
regulator-state-mem {
|
regulator-off-in-suspend;
|
};
|
};
|
|
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>;
|
};
|
|
vcc3v3_pcie2x1l2: vcc3v3-pcie2x1l2 {
|
compatible = "regulator-fixed";
|
regulator-name = "vcc3v3_pcie2x1l2";
|
regulator-min-microvolt = <1800000>;
|
regulator-max-microvolt = <1800000>;
|
enable-active-high;
|
regulator-boot-on;
|
regulator-always-on;
|
gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
|
startup-delay-us = <50000>;
|
vin-supply = <&vcc5v0_sys>;
|
};
|
|
leds: gpio-leds {
|
compatible = "gpio-leds";
|
pinctrl-names = "default";
|
pinctrl-0 =<&leds_gpio>;
|
status = "okay";
|
|
led@1 {
|
gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_HIGH>;
|
label = "status_led";
|
linux,default-trigger = "heartbeat";
|
linux,default-trigger-delay-ms = <0>;
|
};
|
};
|
|
/* If hdmirx node is disabled, delete the reserved-memory node here. */
|
reserved-memory {
|
#address-cells = <2>;
|
#size-cells = <2>;
|
ranges;
|
|
/* Reserve 256MB memory for hdmirx-controller@fdee0000 */
|
cma {
|
compatible = "shared-dma-pool";
|
reusable;
|
reg = <0x0 (256 * 0x100000) 0x0 (256 * 0x100000)>;
|
linux,cma-default;
|
};
|
};
|
};
|
|
&gmac1 {
|
/* Use rgmii-rxid mode to disable rx delay inside Soc */
|
phy-mode = "rgmii-rxid";
|
clock_in_out = "output";
|
|
snps,reset-gpio = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>;
|
snps,reset-active-low;
|
/* Reset time is 20ms, 100ms for rtl8211f */
|
snps,reset-delays-us = <0 20000 100000>;
|
|
pinctrl-names = "default";
|
pinctrl-0 = <&gmac1_miim
|
&gmac1_tx_bus2
|
&gmac1_rx_bus2
|
&gmac1_rgmii_clk
|
&gmac1_rgmii_bus>;
|
|
tx_delay = <0x42>;
|
/* rx_delay = <0x3f>; */
|
|
phy-handle = <&rgmii_phy1>;
|
status = "okay";
|
};
|
|
&mdio1 {
|
rgmii_phy1: phy@1 {
|
compatible = "ethernet-phy-ieee802.3-c22";
|
reg = <0x1>;
|
};
|
};
|
|
&hdmi0 {
|
enable-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
|
cec-enable;
|
status = "okay";
|
};
|
|
&hdmi0_in_vp0 {
|
status = "okay";
|
};
|
|
&hdmi0_sound {
|
status = "okay";
|
};
|
|
&hdptxphy_hdmi0 {
|
status = "okay";
|
};
|
|
&route_hdmi0{
|
status = "okay";
|
};
|
|
&i2s5_8ch {
|
status = "okay";
|
};
|
|
&i2s1_8ch {
|
status = "okay";
|
rockchip,i2s-tx-route = <3 2 1 0>;
|
rockchip,i2s-rx-route = <1 3 2 0>;
|
pinctrl-names = "default";
|
pinctrl-0 = <&i2s1m0_sclk
|
&i2s1m0_lrck
|
&i2s1m0_sdi1
|
&i2s1m0_sdo3>;
|
};
|
|
&i2c0 {
|
status = "okay";
|
pinctrl-names = "default";
|
pinctrl-0 = <&i2c0m2_xfer>;
|
|
vdd_cpu_big0_s0: vdd_cpu_big0_mem_s0: rk8602@42 {
|
compatible = "rockchip,rk8602";
|
reg = <0x42>;
|
vin-supply = <&vcc5v0_sys>;
|
regulator-compatible = "rk860x-reg";
|
regulator-name = "vdd_cpu_big0_s0";
|
regulator-min-microvolt = <550000>;
|
regulator-max-microvolt = <1050000>;
|
regulator-ramp-delay = <2300>;
|
rockchip,suspend-voltage-selector = <1>;
|
regulator-boot-on;
|
regulator-always-on;
|
regulator-state-mem {
|
regulator-off-in-suspend;
|
};
|
};
|
|
vdd_cpu_big1_s0: vdd_cpu_big1_mem_s0: rk8603@43 {
|
compatible = "rockchip,rk8603";
|
reg = <0x43>;
|
vin-supply = <&vcc5v0_sys>;
|
regulator-compatible = "rk860x-reg";
|
regulator-name = "vdd_cpu_big1_s0";
|
regulator-min-microvolt = <550000>;
|
regulator-max-microvolt = <1050000>;
|
regulator-ramp-delay = <2300>;
|
rockchip,suspend-voltage-selector = <1>;
|
regulator-boot-on;
|
regulator-always-on;
|
regulator-state-mem {
|
regulator-off-in-suspend;
|
};
|
};
|
};
|
|
&i2c2 {
|
status = "okay";
|
|
vdd_npu_s0: vdd_npu_mem_s0: rk8602@42 {
|
compatible = "rockchip,rk8602";
|
reg = <0x42>;
|
vin-supply = <&vcc5v0_sys>;
|
regulator-compatible = "rk860x-reg";
|
regulator-name = "vdd_npu_s0";
|
regulator-min-microvolt = <550000>;
|
regulator-max-microvolt = <950000>;
|
regulator-ramp-delay = <2300>;
|
rockchip,suspend-voltage-selector = <1>;
|
regulator-boot-on;
|
regulator-always-on;
|
regulator-state-mem {
|
regulator-off-in-suspend;
|
};
|
};
|
};
|
|
/*
|
pin3: GPIO1_B7
|
pin5: GPIO1_B6
|
*/
|
&i2c5 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&i2c5m3_xfer>;
|
};
|
|
&uart1 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&uart1m1_xfer>;
|
};
|
|
&pwm13 {
|
status = "disabled";
|
pinctrl-names = "active";
|
pinctrl-0 = <&pwm13m2_pins>;
|
};
|
|
/*
|
pin7: GPIO1_C6
|
*/
|
&pwm15 {
|
status = "disabled";
|
pinctrl-names = "active";
|
pinctrl-0 = <&pwm15m2_pins>;
|
};
|
|
/*
|
pin11: GPIO4_B2
|
pin13: GPIO4_B3
|
*/
|
&pwm14 {
|
status = "disabled";
|
pinctrl-names = "active";
|
pinctrl-0 = <&pwm14m1_pins>;
|
};
|
|
&can1 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&can1m1_pins>;
|
assigned-clocks = <&cru CLK_CAN1>;
|
assigned-clock-rates = <200000000>;
|
};
|
|
/*
|
pin15: GPIO0_D4
|
pin12: GPIO0_D5
|
*/
|
&can2 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&can2m1_pins>;
|
assigned-clocks = <&cru CLK_CAN2>;
|
assigned-clock-rates = <200000000>;
|
};
|
|
/*
|
pin19: GPIO1_C1
|
pin21: GPIO1_C0
|
pin23: GPIO1_C2
|
pin24: GPIO1_C4
|
*/
|
&spi4 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&spi4m0_cs1 &spi4m0_pins>;
|
assigned-clocks = <&cru CLK_SPI4>;
|
assigned-clock-rates = <200000000>;
|
num-cs = <2>;
|
|
spi_dev@1 {
|
compatible = "rockchip,spidev";
|
reg = <1>;
|
spi-max-frequency = <50000000>;
|
};
|
};
|
|
&i2c3 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&i2c3m0_xfer>;
|
};
|
|
&uart3 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&uart3m0_xfer>;
|
};
|
|
&pwm3 {
|
status = "disabled";
|
pinctrl-names = "active";
|
pinctrl-0 = <&pwm3m2_pins>;
|
//pinctrl-0 = <&pwm3m0_pins>;
|
};
|
|
/*
|
pin8: GPIO4_A3
|
pin10: GPIO4_A4
|
*/
|
&uart0 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&uart0m2_xfer>;
|
};
|
|
/*
|
pin16: GPIO1_D3
|
pin18: GPIO1_D2
|
*/
|
&uart4 {
|
status = "disabled";
|
pinctrl-names = "default";
|
pinctrl-0 = <&uart4m0_xfer>;
|
};
|
|
&i2c1 {
|
status = "disabled";
|
pinctrl-names = "default";
|
//pinctrl-0 = <&i2c1m4_xfer>;
|
pinctrl-0 = <&i2c1m2_xfer>;
|
};
|
|
&pwm0 {
|
status = "disabled";
|
pinctrl-names = "active";
|
pinctrl-0 = <&pwm0m1_pins>;
|
};
|
|
/*
|
pin26: GPIO1_A3
|
*/
|
&pwm1 {
|
status = "disabled";
|
pinctrl-names = "active";
|
//pinctrl-0 = <&pwm1m2_pins>;
|
pinctrl-0 = <&pwm1m1_pins>;
|
};
|
|
/* watchdog */
|
&wdt {
|
status = "okay";
|
};
|
|
&sfc {
|
status = "okay";
|
max-freq = <100000000>;
|
#address-cells = <1>;
|
#size-cells = <0>;
|
pinctrl-names = "default";
|
pinctrl-0 = <&fspim0_pins>;
|
|
spi_flash: spi-flash@0 {
|
#address-cells = <1>;
|
#size-cells = <0>;
|
compatible = "jedec,spi-nor";
|
reg = <0x0>;
|
spi-max-frequency = <100000000>;
|
spi-tx-bus-width = <1>;
|
spi-rx-bus-width = <4>;
|
status = "okay";
|
|
partitions {
|
compatible = "fixed-partitions";
|
#address-cells = <1>;
|
#size-cells = <1>;
|
|
loader@0 {
|
label = "loader";
|
reg = <0x0 0x1000000>;
|
};
|
};
|
};
|
};
|
|
&mipi_dcphy0 {
|
status = "okay";
|
};
|
|
&mipi_dcphy1 {
|
status = "okay";
|
};
|
|
&rkcif {
|
status = "okay";
|
};
|
|
&rkcif_mmu {
|
status = "okay";
|
};
|
|
&rkisp0 {
|
status = "okay";
|
};
|
|
&isp0_mmu {
|
status = "okay";
|
};
|
|
&rkisp1 {
|
status = "okay";
|
};
|
|
&isp1_mmu {
|
status = "okay";
|
};
|
|
&sata0 {
|
pinctrl-names = "default";
|
pinctrl-0 = <&sata_reset>;
|
status = "disabled";
|
};
|
|
&pcie2x1l2 {
|
reset-gpios = <&gpio3 RK_PD1 GPIO_ACTIVE_HIGH>;
|
vpcie3v3-supply = <&vcc3v3_pcie2x1l2>;
|
rockchip,skip-scan-in-resume;
|
status = "okay";
|
};
|