diff options
| author | Cristian Ciocaltea <cristian.ciocaltea@collabora.com> | 2024-12-24 20:22:43 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-02-01 18:39:36 +0100 |
| commit | 0485a718f3df22ddc0cd857f3cda49ac1bc62af8 (patch) | |
| tree | 9649dcab8fb933a5f691dc32cf0d3af686ed33f9 /drivers/gpu | |
| parent | d756b869bf478505ca6f1a0b2991b0008b34e36a (diff) | |
| download | linux-0485a718f3df22ddc0cd857f3cda49ac1bc62af8.tar.gz linux-0485a718f3df22ddc0cd857f3cda49ac1bc62af8.tar.bz2 linux-0485a718f3df22ddc0cd857f3cda49ac1bc62af8.zip | |
drm/connector: hdmi: Validate supported_formats matches ycbcr_420_allowed
[ Upstream commit f2f96619590f944f74f3c2b0b57a6dcc5d13cd9f ]
Ensure HDMI connector initialization fails when the presence of
HDMI_COLORSPACE_YUV420 in the given supported_formats bitmask doesn't
match the value of drm_connector->ycbcr_420_allowed.
Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Reviewed-by: Maxime Ripard <mripard@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20241224-bridge-conn-fmt-prio-v4-3-a9ceb5671379@collabora.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/drm_connector.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c index fc35f47e2849..ca7f43c8d6f1 100644 --- a/drivers/gpu/drm/drm_connector.c +++ b/drivers/gpu/drm/drm_connector.c @@ -507,6 +507,9 @@ int drmm_connector_hdmi_init(struct drm_device *dev, if (!supported_formats || !(supported_formats & BIT(HDMI_COLORSPACE_RGB))) return -EINVAL; + if (connector->ycbcr_420_allowed != !!(supported_formats & BIT(HDMI_COLORSPACE_YUV420))) + return -EINVAL; + if (!(max_bpc == 8 || max_bpc == 10 || max_bpc == 12)) return -EINVAL; |
