mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 22:52:19 +02:00
drm/i915/color: Downscale degamma lut values read from hardware
For MTL and beyond, convert back the 24 bit lut values read from HW to 16 bit values to maintain parity with userspace values. This way we avoid pipe config mismatch for pre-csc lut values. v2: Add helper function to downscale values (Jani) Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> Reviewed-by: Uma Shankar <uma.shankar@intel.com> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230725083002.3779717-3-chaitanya.kumar.borah@intel.com
This commit is contained in:
parent
435cbb0b0e
commit
14c8fca214
|
|
@ -3456,6 +3456,14 @@ static struct drm_property_blob *glk_read_degamma_lut(struct intel_crtc *crtc)
|
|||
for (i = 0; i < lut_size; i++) {
|
||||
u32 val = intel_de_read_fw(dev_priv, PRE_CSC_GAMC_DATA(pipe));
|
||||
|
||||
/*
|
||||
* For MTL and beyond, convert back the 24 bit lut values
|
||||
* read from HW to 16 bit values to maintain parity with
|
||||
* userspace values
|
||||
*/
|
||||
if (DISPLAY_VER(dev_priv) >= 14)
|
||||
val = change_lut_val_precision(val, 16, 24);
|
||||
|
||||
lut[i].red = val;
|
||||
lut[i].green = val;
|
||||
lut[i].blue = val;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user