]> Gentwo Git Trees - linux/.git/commitdiff
drm/mediatek: mtk_hdmi_common: Add OP_HDMI if helper funcs assigned
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Thu, 23 Oct 2025 10:32:33 +0000 (12:32 +0200)
committerChun-Kuang Hu <chunkuang.hu@kernel.org>
Mon, 17 Nov 2025 15:04:41 +0000 (15:04 +0000)
In preparation for adding the HDMI TX v2 driver, and to allow
a future modernization of the HDMI v1 one, perform changes
that enable the usage of the HDMI Helpers provided by DRM.

Check if the HDMI driver provides the function pointers to
hdmi_{clear,write}_infoframe used by the HDMI Helper API and,
if present, add DRM_BRIDGE_OP_HDMI to the drm_bridge ops,
enabling the drm API to register the bridge as HDMI and to use
the HDMI Helper functions.

If the hdmi_{write,clear}_infoframe pointers are not assigned,
vendor and product strings and HDMI helpers will not be used,
hence this commit brings no functional changes to drivers that
have not been refactored to use the new helpers.

This also means that, in the current state, there is effectively
no functional change to mtk_hdmi and its other components.

Reviewed-by: CK Hu <ck.hu@mediatek.com>
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Louis-Alexis Eyraud <louisalexis.eyraud@collabora.com>
Link: https://patchwork.kernel.org/project/linux-mediatek/patch/20251023-mediatek-drm-hdmi-v2-v11-7-7873ec4a1edf@collabora.com/
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
drivers/gpu/drm/mediatek/mtk_hdmi_common.c

index a82189315aeffa3a283f94cbbf35cffc9cb9d41a..55e39ff8da31376fe3e4286121569282b62441d3 100644 (file)
@@ -429,6 +429,10 @@ struct mtk_hdmi *mtk_hdmi_common_probe(struct platform_device *pdev)
        hdmi->bridge.ops = DRM_BRIDGE_OP_DETECT | DRM_BRIDGE_OP_EDID
                         | DRM_BRIDGE_OP_HPD;
 
+       if (ver_conf->bridge_funcs->hdmi_write_infoframe &&
+           ver_conf->bridge_funcs->hdmi_clear_infoframe)
+               hdmi->bridge.ops |= DRM_BRIDGE_OP_HDMI;
+
        hdmi->bridge.type = DRM_MODE_CONNECTOR_HDMIA;
        hdmi->bridge.ddc = hdmi->ddc_adpt;
        hdmi->bridge.vendor = "MediaTek";