]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: rockchip: Add HDMI to Gameforce Ace
authorChris Morgan <macromorgan@hotmail.com>
Wed, 19 Nov 2025 22:55:26 +0000 (16:55 -0600)
committerHeiko Stuebner <heiko@sntech.de>
Fri, 9 Jan 2026 19:27:47 +0000 (20:27 +0100)
Add support for the HDMI port for the Gameforce Ace. The HDMI port
has no HPD pin present (the manufacturer's devicetree states the pin
is reused for an additional face button) so add the attribute of
no-hpd to poll for connected devices.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Link: https://patch.msgid.link/20251119225526.70588-4-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts

index 21eb003198fe04acc5e25ec280179ad834ca344d..e8ad525ba3f9bcb133e5d0f469a06d581fb96882 100644 (file)
                sound-name-prefix = "Headphones Amplifier";
        };
 
+       hdmi0-con {
+               compatible = "hdmi-connector";
+               ddc-en-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
+               pinctrl-0 = <&hdmi0_en>;
+               pinctrl-names = "default";
+               type = "d";
+
+               port {
+                       hdmi0_con_in: endpoint {
+                               remote-endpoint = <&hdmi0_out_con>;
+                       };
+               };
+       };
+
        pwm_fan: pwm-fan {
                compatible = "pwm-fan";
                #cooling-cells = <2>;
        status = "okay";
 };
 
+&hdmi0 {
+       no-hpd;
+       pinctrl-0 = <&hdmim0_tx0_cec>, <&hdmim0_tx0_scl>,
+                   <&hdmim0_tx0_sda>;
+       pinctrl-names = "default";
+       status = "okay";
+};
+
+&hdmi0_in {
+       hdmi0_in_vp0: endpoint {
+               remote-endpoint = <&vp0_out_hdmi0>;
+       };
+};
+
+&hdmi0_out {
+       hdmi0_out_con: endpoint {
+               remote-endpoint = <&hdmi0_con_in>;
+       };
+};
+
+&hdmi0_sound {
+       status = "okay";
+};
+
+&hdptxphy0 {
+       status = "okay";
+};
+
 &i2c0 {
        pinctrl-0 = <&i2c0m2_xfer>;
        pinctrl-names = "default";
        status = "okay";
 };
 
+&i2s5_8ch {
+       status = "okay";
+};
+
 &mipidcphy0 {
        status = "okay";
 };
                };
        };
 
+       hdmi {
+               hdmi0_en: hdmi0-en {
+                       rockchip,pins =
+                               <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
+       };
+
        hym8563 {
                hym8563_int: hym8563-int {
                        rockchip,pins =
        status = "okay";
 };
 
+&vp0 {
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
+               reg = <ROCKCHIP_VOP2_EP_HDMI0>;
+               remote-endpoint = <&hdmi0_in_vp0>;
+       };
+};
+
 &vp3 {
        #address-cells = <1>;
        #size-cells = <0>;