]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/xe3p_lpd: Remove gamma,csc bottom color checks
authorSai Teja Pottumuttu <sai.teja.pottumuttu@intel.com>
Wed, 5 Nov 2025 14:06:56 +0000 (11:06 -0300)
committerGustavo Sousa <gustavo.sousa@intel.com>
Thu, 6 Nov 2025 21:22:47 +0000 (18:22 -0300)
With Xe3p_LPD, the SKL_BOTTOM_COLOR_GAMMA_ENABLE and
SKL_BOTTOM_COLOR_CSC_ENABLE bits are being removed. Thus, we need not
set gamma_enable nor csc_enable in crtc_state.

Note that GAMMA_MODE.POST_CSC_GAMMA_ENABLE and CSC_MODE.ICL_CSC_ENABLE
are the documented alternatives for the bottom color bits being removed.
But as these suggested bits are being checked in state checker as part
of gamma_mode, csc_mode fields and as gamma_enable/csc_enable are not
being used anywhere else functionally post ICL, we need not set these
fields in crtc_state.

Bspec: 69734
Signed-off-by: Sai Teja Pottumuttu <sai.teja.pottumuttu@intel.com>
Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
Link: https://patch.msgid.link/20251103-xe3p_lpd-basic-enabling-v3-7-00e87b510ae7@intel.com
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
drivers/gpu/drm/i915/display/intel_color.c

index 1e97020e73042479596d257c88df07b0fc2d263e..a217a67ceb438a9471367aedd02394264f4b2895 100644 (file)
@@ -1090,18 +1090,19 @@ static void skl_get_config(struct intel_crtc_state *crtc_state)
 {
        struct intel_display *display = to_intel_display(crtc_state);
        struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
-       u32 tmp;
 
        crtc_state->gamma_mode = hsw_read_gamma_mode(crtc);
        crtc_state->csc_mode = ilk_read_csc_mode(crtc);
 
-       tmp = intel_de_read(display, SKL_BOTTOM_COLOR(crtc->pipe));
+       if (DISPLAY_VER(display) < 35) {
+               u32 tmp = intel_de_read(display, SKL_BOTTOM_COLOR(crtc->pipe));
 
-       if (tmp & SKL_BOTTOM_COLOR_GAMMA_ENABLE)
-               crtc_state->gamma_enable = true;
+               if (tmp & SKL_BOTTOM_COLOR_GAMMA_ENABLE)
+                       crtc_state->gamma_enable = true;
 
-       if (tmp & SKL_BOTTOM_COLOR_CSC_ENABLE)
-               crtc_state->csc_enable = true;
+               if (tmp & SKL_BOTTOM_COLOR_CSC_ENABLE)
+                       crtc_state->csc_enable = true;
+       }
 }
 
 static void skl_color_commit_arm(struct intel_dsb *dsb,