drm/amd/display: store sharpness 1dlut table in dscl_prog_data
authorSamson Tam <Samson.Tam@amd.com>
Fri, 18 Oct 2024 04:26:41 +0000 (00:26 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 28 Oct 2024 20:37:02 +0000 (16:37 -0400)
commitf3928f3d481920c748328192ec2ed4ab5d125d6b
tree84748d0ac34173aa1459d3e4b6643eadbdad6644
parent558cec793e73e5d22c96c56b1f70c83a8ce4b672
drm/amd/display: store sharpness 1dlut table in dscl_prog_data

[Why]
Previously dscl_prog_data stored pointer to sharpness 1dlut table.
SPL had four pre-generated tables, one for each setup. This allowed
us to minimize number of times we had to recalculate table when
switching between setups.
However, with dual display, this becomes an issue because for a given
setup, we could have a different per app sharpness value than the
global sharpness value. So the pre-generated table will change
but both displays may point to the same table and one of them
will have the wrong sharpness setting.

[How]
Store the sharpness 1dlut table in dscl_prog_data. This ensures
that each display can have its own sharpness setting.

Reviewed-by: Ilya Bakoulin <ilya.bakoulin@amd.com>
Signed-off-by: Samson Tam <Samson.Tam@amd.com>
Signed-off-by: Tom Chung <chiahsuan.chung@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dpp/dcn401/dcn401_dpp_dscl.c
drivers/gpu/drm/amd/display/dc/spl/dc_spl.c
drivers/gpu/drm/amd/display/dc/spl/dc_spl_isharp_filters.h
drivers/gpu/drm/amd/display/dc/spl/dc_spl_types.h