Message ID | 20250312104214.525242-8-andyshrk@163.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Add support for RK3588 DisplayPort Controller | expand |
On Wed, Mar 12, 2025 at 06:42:08PM +0800, Andy Yan wrote: > From: Andy Yan <andy.yan@rock-chips.com> > > The HDMI Port next to Headphone Jack is drived by > DP1 on rk3588 via a dp2hdmi converter. > > Add related dt nodes to enable it. > > Note: ROCKCHIP_VOP2_EP_DP1 is defined as 11 in dt-binding header, > but it will trigger a dtc warning like "graph node unit address > error, expected "b"" if we use it directly after endpoint, so we > use "b" instead here. > > Signed-off-by: Andy Yan <andy.yan@rock-chips.com> > --- > > (no changes since v1) > > .../boot/dts/rockchip/rk3588-rock-5-itx.dts | 37 +++++++++++++++++++ > 1 file changed, 37 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts > index 67b886329248..29f10ec9f0c1 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts > @@ -57,6 +57,18 @@ analog-sound { > "Headphone", "Headphones"; > }; > > + dp-con { > + compatible = "dp-connector"; You've written that it is an HDMI connector. Could you possibly clarify, why is it being registered as a DP connector? Is there any kind of a bridge between the DP controller and the HDMI connector? > + label = "DP OUT"; > + type = "full-size"; > + > + port { > + dp_con_in: endpoint { > + remote-endpoint = <&dp1_out_con>; > + }; > + }; > + }; > + > gpio-leds { > compatible = "gpio-leds"; > pinctrl-names = "default"; > @@ -268,6 +280,24 @@ &cpu_l3 { > cpu-supply = <&vdd_cpu_lit_s0>; > }; > > +&dp1 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&dp1m0_pins>; > +}; > + > +&dp1_in { > + dp1_in_vp2: endpoint { > + remote-endpoint = <&vp2_out_dp1>; > + }; > +}; > + > +&dp1_out { > + dp1_out_con: endpoint { > + remote-endpoint = <&dp_con_in>; > + }; > +}; > + > &gpu { > mali-supply = <&vdd_gpu_s0>; > status = "okay"; > @@ -1262,3 +1292,10 @@ vp1_out_hdmi1: endpoint@ROCKCHIP_VOP2_EP_HDMI1 { > remote-endpoint = <&hdmi1_in_vp1>; > }; > }; > + > +&vp2 { > + vp2_out_dp1: endpoint@b { > + reg = <ROCKCHIP_VOP2_EP_DP1>; > + remote-endpoint = <&dp1_in_vp2>; > + }; > +}; > -- > 2.34.1 >
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts index 67b886329248..29f10ec9f0c1 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts @@ -57,6 +57,18 @@ analog-sound { "Headphone", "Headphones"; }; + dp-con { + compatible = "dp-connector"; + label = "DP OUT"; + type = "full-size"; + + port { + dp_con_in: endpoint { + remote-endpoint = <&dp1_out_con>; + }; + }; + }; + gpio-leds { compatible = "gpio-leds"; pinctrl-names = "default"; @@ -268,6 +280,24 @@ &cpu_l3 { cpu-supply = <&vdd_cpu_lit_s0>; }; +&dp1 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&dp1m0_pins>; +}; + +&dp1_in { + dp1_in_vp2: endpoint { + remote-endpoint = <&vp2_out_dp1>; + }; +}; + +&dp1_out { + dp1_out_con: endpoint { + remote-endpoint = <&dp_con_in>; + }; +}; + &gpu { mali-supply = <&vdd_gpu_s0>; status = "okay"; @@ -1262,3 +1292,10 @@ vp1_out_hdmi1: endpoint@ROCKCHIP_VOP2_EP_HDMI1 { remote-endpoint = <&hdmi1_in_vp1>; }; }; + +&vp2 { + vp2_out_dp1: endpoint@b { + reg = <ROCKCHIP_VOP2_EP_DP1>; + remote-endpoint = <&dp1_in_vp2>; + }; +};