rockchip-rk3588-current: disable HDMIRX by default and add heartbeat LED on OPi5+

This commit is contained in:
Muhammed Efe Cetin 2024-08-08 17:09:14 +03:00 committed by Igor
parent 8ceeb33c3b
commit 0a0eb467de
4 changed files with 114 additions and 34 deletions

View File

@ -3743,3 +3743,28 @@ index 000000000000..111111111111
--
Armbian
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Muhammed Efe Cetin <efectn@protonmail.com>
Date: Thu, 1 Aug 2024 16:47:35 +0300
Subject: comment v4l2 error on hdmirx
---
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
index 111111111111..222222222222 100644
--- a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
+++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
@@ -1180,7 +1180,7 @@ static int hdmirx_wait_lock_and_get_timing(struct snps_hdmirx_dev *hdmirx_dev)
break;
if (!tx_5v_power_present(hdmirx_dev)) {
- v4l2_err(v4l2_dev, "%s: HDMI pull out, return\n", __func__);
+ //v4l2_err(v4l2_dev, "%s: HDMI pull out, return\n", __func__);
return -1;
}
--
Armbian

View File

@ -4,8 +4,8 @@ Date: Thu, 16 Nov 2023 18:15:09 +0300
Subject: arm64: dts: Add missing nodes to Orange Pi 5 Plus
---
arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts | 203 +++++++++-
1 file changed, 202 insertions(+), 1 deletion(-)
arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts | 221 +++++++++-
1 file changed, 218 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts b/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts
index 111111111111..222222222222 100644
@ -19,7 +19,38 @@ index 111111111111..222222222222 100644
#include "rk3588.dtsi"
/ {
@@ -158,6 +159,20 @@ daicodec: simple-audio-card,codec {
@@ -72,6 +73,17 @@ ir-receiver {
pinctrl-0 = <&ir_receiver_pin>;
};
+ hdmi0-con {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi0_con_in: endpoint {
+ remote-endpoint = <&hdmi0_out_con>;
+ };
+ };
+ };
+
gpio-leds {
compatible = "gpio-leds";
pinctrl-names = "default";
@@ -98,10 +110,10 @@ pwm-leds {
led {
color = <LED_COLOR_ID_GREEN>;
- function = LED_FUNCTION_INDICATOR;
- function-enumerator = <2>;
+ function = LED_FUNCTION_HEARTBEAT;
max-brightness = <255>;
pwms = <&pwm2 0 25000 0>;
+ linux,default-trigger = "heartbeat";
};
};
@@ -158,6 +170,20 @@ daicodec: simple-audio-card,codec {
};
};
@ -40,7 +71,7 @@ index 111111111111..222222222222 100644
vcc3v3_pcie30: vcc3v3-pcie30-regulator {
compatible = "regulator-fixed";
enable-active-high;
@@ -199,6 +214,18 @@ vcc5v0_sys: vcc5v0-sys-regulator {
@@ -199,6 +225,18 @@ vcc5v0_sys: vcc5v0-sys-regulator {
regulator-max-microvolt = <5000000>;
};
@ -59,7 +90,7 @@ index 111111111111..222222222222 100644
vcc5v0_usb20: vcc5v0-usb20-regulator {
compatible = "regulator-fixed";
enable-active-high;
@@ -311,6 +338,53 @@ hym8563: rtc@51 {
@@ -311,6 +349,53 @@ hym8563: rtc@51 {
pinctrl-0 = <&hym8563_int>;
wakeup-source;
};
@ -113,13 +144,13 @@ index 111111111111..222222222222 100644
};
&i2c7 {
@@ -383,9 +457,15 @@ &pcie3x4 {
@@ -383,9 +468,15 @@ &pcie3x4 {
};
&pinctrl {
+ hdmirx {
+ hdmirx_5v_detection: hdmirx-5v-detection {
+ rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
+ hdmirx {
+ hdmirx_hpd: hdmirx-hpd {
+ rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
+ };
+
@ -130,7 +161,7 @@ index 111111111111..222222222222 100644
};
};
@@ -408,6 +488,14 @@ hp_detect: hp-detect {
@@ -408,6 +499,14 @@ hp_detect: hp-detect {
};
usb {
@ -145,7 +176,7 @@ index 111111111111..222222222222 100644
vcc5v0_usb20_en: vcc5v0-usb20-en {
rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
};
@@ -803,6 +891,22 @@ &tsadc {
@@ -803,6 +902,22 @@ &tsadc {
status = "okay";
};
@ -168,7 +199,7 @@ index 111111111111..222222222222 100644
&u2phy2 {
status = "okay";
};
@@ -831,6 +935,35 @@ &uart9 {
@@ -831,6 +946,35 @@ &uart9 {
status = "okay";
};
@ -204,7 +235,7 @@ index 111111111111..222222222222 100644
&usb_host0_ehci {
status = "okay";
};
@@ -839,6 +972,20 @@ &usb_host0_ohci {
@@ -839,6 +983,20 @@ &usb_host0_ohci {
status = "okay";
};
@ -225,7 +256,7 @@ index 111111111111..222222222222 100644
&usb_host1_ehci {
status = "okay";
};
@@ -846,3 +993,57 @@ &usb_host1_ehci {
@@ -846,3 +1004,60 @@ &usb_host1_ehci {
&usb_host1_ohci {
status = "okay";
};
@ -240,30 +271,12 @@ index 111111111111..222222222222 100644
+ status = "okay";
+};
+
+&hdmi0 {
+ status = "okay";
+ enable-gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
+ cec-enable = "true";
+};
+
+&hdptxphy_hdmi0 {
+ status = "okay";
+};
+
+&hdmi_receiver {
+ status = "okay";
+ hpd-gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>;
+ pinctrl-0 = <&hdmim1_rx_cec &hdmim1_rx_hpdin &hdmim1_rx_scl
+ &hdmim1_rx_sda &hdmirx_5v_detection>;
+ pinctrl-names = "default";
+};
+
+&hdmi_receiver_cma {
+ status = "okay";
+};
+
+
+&vop_mmu {
+&hdmi0 {
+ enable-gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+};
+
@ -273,10 +286,31 @@ index 111111111111..222222222222 100644
+ };
+};
+
+&hdmi0_out {
+ hdmi0_out_con: endpoint {
+ remote-endpoint = <&hdmi0_con_in>;
+ };
+};
+
+&hdmi_receiver_cma {
+ status = "disabled";
+};
+
+&hdmi_receiver {
+ hpd-gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>;
+ pinctrl-0 = <&hdmim1_rx_cec &hdmim1_rx_hpdin &hdmim1_rx_scl &hdmim1_rx_sda &hdmirx_hpd>;
+ pinctrl-names = "default";
+ status = "disabled";
+};
+
+&vop {
+ status = "okay";
+};
+
+&vop_mmu {
+ status = "okay";
+};
+
+&vp0 {
+ vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
+ reg = <ROCKCHIP_VOP2_EP_HDMI0>;

View File

@ -2,6 +2,7 @@
dtbo-$(CONFIG_ARCH_ROCKCHIP) += \
rockchip-rk3588-sata1.dtbo \
rockchip-rk3588-sata2.dtbo \
rockchip-rk3588-hdmirx.dtbo \
rockchip-rk3588-i2c8-m2.dtbo \
rockchip-rk3588-pwm0-m0.dtbo \
rockchip-rk3588-pwm0-m1.dtbo \

View File

@ -0,0 +1,20 @@
/dts-v1/;
/plugin/;
/ {
fragment@0 {
target = <&hdmi_receiver_cma>;
__overlay__ {
status = "okay";
};
};
fragment@1 {
target = <&hdmi_receiver>;
__overlay__ {
status = "okay";
};
};
};