drm/bridge: synopsys: dw-hdmi: allow ycbcr420 modes for >= 0x200a
authorNeil Armstrong <narmstrong@baylibre.com>
Wed, 4 Mar 2020 10:40:46 +0000 (11:40 +0100)
committerNeil Armstrong <narmstrong@baylibre.com>
Tue, 10 Mar 2020 09:51:24 +0000 (10:51 +0100)
Now the DW-HDMI Controller supports the HDMI2.0 modes, enable support
for these modes in the connector if the platform supports them.
We limit these modes to DW-HDMI IP version >= 0x200a which
are designed to support HDMI2.0 display modes.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jernej Škrabec <jernej.skrabec@siol.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20200304104052.17196-6-narmstrong@baylibre.com
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
include/drm/bridge/dw_hdmi.h

index de19e89..f85c15a 100644 (file)
@@ -3252,6 +3252,12 @@ __dw_hdmi_probe(struct platform_device *pdev,
        hdmi->bridge.of_node = pdev->dev.of_node;
 #endif
 
+       if (hdmi->version >= 0x200a)
+               hdmi->connector.ycbcr_420_allowed =
+                       hdmi->plat_data->ycbcr_420_allowed;
+       else
+               hdmi->connector.ycbcr_420_allowed = false;
+
        memset(&pdevinfo, 0, sizeof(pdevinfo));
        pdevinfo.parent = dev;
        pdevinfo.id = PLATFORM_DEVID_AUTO;
index 9d4d5cc..0b34a12 100644 (file)
@@ -129,6 +129,7 @@ struct dw_hdmi_plat_data {
        unsigned long input_bus_format;
        unsigned long input_bus_encoding;
        bool use_drm_infoframe;
+       bool ycbcr_420_allowed;
 
        /* Vendor PHY support */
        const struct dw_hdmi_phy_ops *phy_ops;