aboutsummaryrefslogtreecommitdiff
path: root/target/linux/bcm27xx/patches-6.1/950-0697-drm-vc4-Limit-max_bpc-to-8-on-Pi0-3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-6.1/950-0697-drm-vc4-Limit-max_bpc-to-8-on-Pi0-3.patch')
-rw-r--r--target/linux/bcm27xx/patches-6.1/950-0697-drm-vc4-Limit-max_bpc-to-8-on-Pi0-3.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-6.1/950-0697-drm-vc4-Limit-max_bpc-to-8-on-Pi0-3.patch b/target/linux/bcm27xx/patches-6.1/950-0697-drm-vc4-Limit-max_bpc-to-8-on-Pi0-3.patch
new file mode 100644
index 0000000000..db13ad93d5
--- /dev/null
+++ b/target/linux/bcm27xx/patches-6.1/950-0697-drm-vc4-Limit-max_bpc-to-8-on-Pi0-3.patch
@@ -0,0 +1,37 @@
+From d1e78bb6380ca89d0b00ab60d65d9f34f346b6fe Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.com>
+Date: Mon, 24 Apr 2023 18:32:45 +0100
+Subject: [PATCH] drm/vc4: Limit max_bpc to 8 on Pi0-3
+
+Pi 0-3 have no deep colour support and only 24bpp output,
+so max_bpc should remain as 8.
+
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
+---
+ drivers/gpu/drm/vc4/vc4_hdmi.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
+@@ -783,7 +783,6 @@ static int vc4_hdmi_connector_init(struc
+
+ drm_connector_attach_colorspace_property(connector);
+ drm_connector_attach_tv_margin_properties(connector);
+- drm_connector_attach_max_bpc_property(connector, 8, 12);
+
+ connector->polled = (DRM_CONNECTOR_POLL_CONNECT |
+ DRM_CONNECTOR_POLL_DISCONNECT);
+@@ -792,8 +791,12 @@ static int vc4_hdmi_connector_init(struc
+ connector->doublescan_allowed = 0;
+ connector->stereo_allowed = 1;
+
+- if (vc4_hdmi->variant->supports_hdr)
++ if (vc4_hdmi->variant->supports_hdr) {
++ drm_connector_attach_max_bpc_property(connector, 8, 12);
+ drm_connector_attach_hdr_output_metadata_property(connector);
++ } else {
++ drm_connector_attach_max_bpc_property(connector, 8, 8);
++ }
+
+ vc4_hdmi_attach_broadcast_rgb_property(dev, vc4_hdmi);
+ vc4_hdmi_attach_output_format_property(dev, vc4_hdmi);