* [PATCH v4 0/2] Add RK3588 Tiger DisplayPort carrier
@ 2025-10-09 22:50 Heiko Stuebner
2025-10-09 22:50 ` [PATCH v4 1/2] dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma Systems Heiko Stuebner
2025-10-09 22:50 ` [PATCH v4 2/2] arm64: dts: " Heiko Stuebner
0 siblings, 2 replies; 5+ messages in thread
From: Heiko Stuebner @ 2025-10-09 22:50 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, quentin.schulz, devicetree,
linux-arm-kernel, linux-rockchip, linux-kernel, damon.ding
A board that allows easy testing of the Analogix eDP controller on the
RK3588. Requires Damon's recent work on allowing bridges in the
Rockchip variant of the controller driver [0].
Concerning displays, my current setup is
DP-carrier -> DP-port -> DP-to-eDP converter from Aliexpress -> eDP panel
which produces a nice 1080p image, but it seems Quentin's experience was
not as nice, as he reported in v2 [1] that his two test monitors produced
dfferent tints, but not real output with:
green tint on a Iiyama ProLite XU2294HSU and purple tint on a Dell P2319H
changes in v4:
- move hpd-gpio down the the analogix-dp node
As stated in commit cb640b2ca546 ("drm/bridge: display-connector: don't
set OP_DETECT for DisplayPorts") the dp-connector can't just read the
hpd-gpio and mark that as monitor detected, instead
changes in v3:
- rebase on top of 6.17-rc1
- still should wait on the analogix bridge support
changes in v2:
- collect Ack/Review for binding
- address Quentin's comments
- sorting in Makefile and dp-connector properties
- ethernet alias
- drop data-lanes comment
[0] https://lore.kernel.org/dri-devel/20250709070139.3130635-1-damon.ding@rock-chips.com/
[1] https://lore.kernel.org/linux-rockchip/0582b7bc-e5b2-4b5e-821e-8d2c4301579f@cherry.de
Heiko Stuebner (2):
dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma
Systems
arm64: dts: rockchip: add RK3588 DP carrier from Theobroma Systems
.../devicetree/bindings/arm/rockchip.yaml | 6 +-
arch/arm64/boot/dts/rockchip/Makefile | 1 +
.../rk3588-tiger-displayport-carrier.dts | 119 ++++++++++++++++++
3 files changed, 124 insertions(+), 2 deletions(-)
create mode 100644 arch/arm64/boot/dts/rockchip/rk3588-tiger-displayport-carrier.dts
--
2.47.2
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v4 1/2] dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma Systems
2025-10-09 22:50 [PATCH v4 0/2] Add RK3588 Tiger DisplayPort carrier Heiko Stuebner
@ 2025-10-09 22:50 ` Heiko Stuebner
2025-10-10 1:51 ` Krzysztof Kozlowski
2025-10-09 22:50 ` [PATCH v4 2/2] arm64: dts: " Heiko Stuebner
1 sibling, 1 reply; 5+ messages in thread
From: Heiko Stuebner @ 2025-10-09 22:50 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, quentin.schulz, devicetree,
linux-arm-kernel, linux-rockchip, linux-kernel, damon.ding,
Heiko Stuebner
From: Heiko Stuebner <heiko.stuebner@cherry.de>
The DisplayPort carrier is a very simple baseboard only providing serial,
ethernet and a displayport output.
But its main functionality is that it routes the Analogix eDP controller
to this DisplayPort output, which allows to test that controller simply
by hooking it up to a suitable monitor.
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Acked-by: "Rob Herring (Arm)" <robh@kernel.org>
Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Link: https://lore.kernel.org/r/20250723190904.37792-2-heiko@sntech.de
---
Documentation/devicetree/bindings/arm/rockchip.yaml | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Documentation/devicetree/bindings/arm/rockchip.yaml
index 6aceaa8acbb2..1bf459890c64 100644
--- a/Documentation/devicetree/bindings/arm/rockchip.yaml
+++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
@@ -1221,9 +1221,11 @@ properties:
- const: tsd,rk3588-jaguar
- const: rockchip,rk3588
- - description: Theobroma Systems RK3588-Q7 with Haikou baseboard
+ - description: Theobroma Systems RK3588-Q7 with baseboards
items:
- - const: tsd,rk3588-tiger-haikou
+ - enum:
+ - tsd,rk3588-tiger-displayport-carrier
+ - tsd,rk3588-tiger-haikou
- const: tsd,rk3588-tiger
- const: rockchip,rk3588
--
2.47.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH v4 2/2] arm64: dts: rockchip: add RK3588 DP carrier from Theobroma Systems
2025-10-09 22:50 [PATCH v4 0/2] Add RK3588 Tiger DisplayPort carrier Heiko Stuebner
2025-10-09 22:50 ` [PATCH v4 1/2] dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma Systems Heiko Stuebner
@ 2025-10-09 22:50 ` Heiko Stuebner
2025-10-15 14:32 ` Quentin Schulz
1 sibling, 1 reply; 5+ messages in thread
From: Heiko Stuebner @ 2025-10-09 22:50 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, quentin.schulz, devicetree,
linux-arm-kernel, linux-rockchip, linux-kernel, damon.ding,
Heiko Stuebner
From: Heiko Stuebner <heiko.stuebner@cherry.de>
The DisplayPort carrier is a very simple baseboard only providing serial,
ethernet and a displayport output.
But its main functionality is that it routes the Analogix eDP controller
to this DisplayPort output, which allows to test that controller simply
by hooking it up to a suitable monitor.
The Analogix-DP controller supports eDP 1.3 and DP 1.2, so can drive
both eDP displays as well as full DP monitors. It does not support DP+
so passive DP-to-HDMI adapters won't work.
Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Link: https://lore.kernel.org/r/20250723190904.37792-3-heiko@sntech.de
---
arch/arm64/boot/dts/rockchip/Makefile | 1 +
.../rk3588-tiger-displayport-carrier.dts | 119 ++++++++++++++++++
2 files changed, 120 insertions(+)
create mode 100644 arch/arm64/boot/dts/rockchip/rk3588-tiger-displayport-carrier.dts
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index ad684e3831bc..3a1739b8f167 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -188,6 +188,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-rock-5b-pcie-ep.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-rock-5b-pcie-srns.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-rock-5b-plus.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-rock-5t.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-tiger-displayport-carrier.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-tiger-haikou.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-tiger-haikou-video-demo.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-toybrick-x0.dtb
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-tiger-displayport-carrier.dts b/arch/arm64/boot/dts/rockchip/rk3588-tiger-displayport-carrier.dts
new file mode 100644
index 000000000000..c14718bc4fda
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3588-tiger-displayport-carrier.dts
@@ -0,0 +1,119 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2024 Cherry Embedded Solutions GmbH
+ */
+
+/dts-v1/;
+#include <dt-bindings/soc/rockchip,vop2.h>
+#include "rk3588-tiger.dtsi"
+
+/ {
+ model = "Theobroma Systems RK3588-Q7 SoM on Tiger Displayport Carrier v1";
+ compatible = "tsd,rk3588-tiger-displayport-carrier", "tsd,rk3588-tiger", "rockchip,rk3588";
+
+ aliases {
+ ethernet0 = &gmac0;
+ };
+
+ chosen {
+ stdout-path = "serial2:115200n8";
+ };
+
+ dp-connector {
+ compatible = "dp-connector";
+ dp-pwr-supply = <&vcc3v3_baseboard>;
+ label = "dp0";
+ type = "full-size";
+
+ port {
+ dp_con_in: endpoint {
+ remote-endpoint = <&edp0_out_con>;
+ };
+ };
+ };
+
+ vcc3v3_baseboard: regulator-vcc3v3-baseboard {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc3v3_baseboard";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&vcc5v0_baseboard>;
+ };
+
+ vcc5v0_baseboard: regulator-vcc5v0-baseboard {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc5v0_baseboard";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ };
+};
+
+&edp0 {
+ /*
+ * Q7_DP_HPD# but Q7_HDMI_HPD# could be used too
+ *
+ * HPD handling in the Analogix-DP not in dp-connector, because
+ * "Detecting the monitor for DisplayPort targets is more
+ * complicated than just reading the HPD pin level" so the
+ * "actual DP driver (should) perform detection".
+ * For reference see commit cb640b2ca546 ("drm/bridge:
+ * display-connector: don't set OP_DETECT for DisplayPorts")
+ * in the Linux-kernel.
+ */
+ hpd-gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_LOW>;
+ pinctrl-0 = <&edp0_hpd_l>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&edp0_in {
+ edp0_in_vp2: endpoint {
+ remote-endpoint = <&vp2_out_edp0>;
+ };
+};
+
+&edp0_out {
+ edp0_out_con: endpoint {
+ remote-endpoint = <&dp_con_in>;
+ };
+};
+
+&gmac0 {
+ status = "okay";
+};
+
+&hdptxphy0 {
+ status = "okay";
+};
+
+&pinctrl {
+ edp0 {
+ edp0_hpd_l: edp0-hpd-l-pin {
+ rockchip,pins = <4 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
+ };
+};
+
+&uart2 {
+ pinctrl-0 = <&uart2m2_xfer>;
+ status = "okay";
+};
+
+&vop {
+ status = "okay";
+};
+
+&vop_mmu {
+ status = "okay";
+};
+
+&vp2 {
+ vp2_out_edp0: endpoint@ROCKCHIP_VOP2_EP_EDP0 {
+ reg = <ROCKCHIP_VOP2_EP_EDP0>;
+ remote-endpoint = <&edp0_in_vp2>;
+ };
+};
--
2.47.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v4 1/2] dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma Systems
2025-10-09 22:50 ` [PATCH v4 1/2] dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma Systems Heiko Stuebner
@ 2025-10-10 1:51 ` Krzysztof Kozlowski
0 siblings, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2025-10-10 1:51 UTC (permalink / raw)
To: Heiko Stuebner
Cc: robh, krzk+dt, conor+dt, quentin.schulz, devicetree,
linux-arm-kernel, linux-rockchip, linux-kernel, damon.ding,
Heiko Stuebner
On 10/10/2025 00:50, Heiko Stuebner wrote:
> From: Heiko Stuebner <heiko.stuebner@cherry.de>
>
> The DisplayPort carrier is a very simple baseboard only providing serial,
> ethernet and a displayport output.
>
> But its main functionality is that it routes the Analogix eDP controller
> to this DisplayPort output, which allows to test that controller simply
> by hooking it up to a suitable monitor.
>
> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
> Acked-by: "Rob Herring (Arm)" <robh@kernel.org>
Please update your b4. Quotes are not needed. Weird that you had to add
them somehow, because they were not in previous version.
> Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
> Link: https://lore.kernel.org/r/20250723190904.37792-2-heiko@sntech.de
That is not really useful Link. Points to the same patch.
> ---
> Documentation/devicetree/bindings/arm/rockchip.yaml | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v4 2/2] arm64: dts: rockchip: add RK3588 DP carrier from Theobroma Systems
2025-10-09 22:50 ` [PATCH v4 2/2] arm64: dts: " Heiko Stuebner
@ 2025-10-15 14:32 ` Quentin Schulz
0 siblings, 0 replies; 5+ messages in thread
From: Quentin Schulz @ 2025-10-15 14:32 UTC (permalink / raw)
To: Heiko Stuebner
Cc: robh, krzk+dt, conor+dt, devicetree, linux-arm-kernel,
linux-rockchip, linux-kernel, damon.ding, Heiko Stuebner
Hi Heiko,
On 10/10/25 12:50 AM, Heiko Stuebner wrote:
> From: Heiko Stuebner <heiko.stuebner@cherry.de>
>
> The DisplayPort carrier is a very simple baseboard only providing serial,
> ethernet and a displayport output.
>
> But its main functionality is that it routes the Analogix eDP controller
> to this DisplayPort output, which allows to test that controller simply
> by hooking it up to a suitable monitor.
>
> The Analogix-DP controller supports eDP 1.3 and DP 1.2, so can drive
> both eDP displays as well as full DP monitors. It does not support DP+
> so passive DP-to-HDMI adapters won't work.
>
> Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
> Link: https://lore.kernel.org/r/20250723190904.37792-3-heiko@sntech.de
Please remove the Link trailer for v5 (if there's one) :)
I only have one remark: the device is stuck when shutting down or
rebooting after this one line in the logs (can be shown by adding
initcall_debug to the kernel command line)
[ 21.973452] arm-smmu-v3 fc900000.iommu: shutdown
It only reboots by chance, after ~1m30s, because the watchdog is started
before rebooting and never triggered again.
If I add:
&mmu600_pcie {
status = "disabled";
};
then the device reboots just fine. So we either temporarily disable it
or we try to fix the origin of the issue.
As reported to Damon today on the v2 of this series, I tested with
https://lore.kernel.org/all/20250930090920.131094-1-damon.ding@rock-chips.com/
https://lore.kernel.org/all/20250930094251.131314-1-damon.ding@rock-chips.com/
(patches 14-18 of the previous thread)
https://lore.kernel.org/all/20251009193028.4952-1-heiko@sntech.de/
https://lore.kernel.org/linux-rockchip/20251008133135.3745785-1-heiko@sntech.de/
and DP works as expected (minus some (I deem to be) minor issues).
Cheers,
Quentin
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-10-15 14:32 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-09 22:50 [PATCH v4 0/2] Add RK3588 Tiger DisplayPort carrier Heiko Stuebner
2025-10-09 22:50 ` [PATCH v4 1/2] dt-bindings: arm: rockchip: add RK3588 DP carrier from Theobroma Systems Heiko Stuebner
2025-10-10 1:51 ` Krzysztof Kozlowski
2025-10-09 22:50 ` [PATCH v4 2/2] arm64: dts: " Heiko Stuebner
2025-10-15 14:32 ` Quentin Schulz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).