diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0654-drm-vc4-Disable-Gamma-control-on-HVS5-due-to-issues-.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.15/950-0654-drm-vc4-Disable-Gamma-control-on-HVS5-due-to-issues-.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0654-drm-vc4-Disable-Gamma-control-on-HVS5-due-to-issues-.patch b/target/linux/bcm27xx/patches-5.15/950-0654-drm-vc4-Disable-Gamma-control-on-HVS5-due-to-issues-.patch new file mode 100644 index 0000000000..80edae5cf5 --- /dev/null +++ b/target/linux/bcm27xx/patches-5.15/950-0654-drm-vc4-Disable-Gamma-control-on-HVS5-due-to-issues-.patch @@ -0,0 +1,36 @@ +From 6c276e5d2c0ee362e4b860845401e095773fad7f Mon Sep 17 00:00:00 2001 +From: Dave Stevenson <dave.stevenson@raspberrypi.com> +Date: Thu, 13 Jan 2022 11:30:42 +0000 +Subject: [PATCH] drm/vc4: Disable Gamma control on HVS5 due to issues + writing the table + +Still under investigation, but the conditions under which the HVS +will accept values written to the gamma PWL are not straightforward. + +Disable gamma on HVS5 again until it can be resolved to avoid +gamma being enabled with an incorrect table. + +Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> +--- + drivers/gpu/drm/vc4/vc4_crtc.c | 8 +------- + 1 file changed, 1 insertion(+), 7 deletions(-) + +--- a/drivers/gpu/drm/vc4/vc4_crtc.c ++++ b/drivers/gpu/drm/vc4/vc4_crtc.c +@@ -1182,15 +1182,9 @@ int vc4_crtc_init(struct drm_device *drm + + if (!vc4->hvs->hvs5) { + drm_mode_crtc_set_gamma_size(crtc, ARRAY_SIZE(vc4_crtc->lut_r)); +- } else { +- /* This is a lie for hvs5 which uses a 16 point PWL, but it +- * allows for something smarter than just 16 linearly spaced +- * segments. Conversion is done in vc5_hvs_update_gamma_lut. +- */ +- drm_mode_crtc_set_gamma_size(crtc, 256); ++ drm_crtc_enable_color_mgmt(crtc, 0, false, crtc->gamma_size); + } + +- drm_crtc_enable_color_mgmt(crtc, 0, false, crtc->gamma_size); + + if (!vc4->hvs->hvs5) { + /* We support CTM, but only for one CRTC at a time. It's therefore |