drm/amd/display: Constify struct timing_generator_funcs'struct timing_generator_funcs' are not modified in these drivers.Constifying these structures moves some data to a read-only section, soin
drm/amd/display: Constify struct timing_generator_funcs'struct timing_generator_funcs' are not modified in these drivers.Constifying these structures moves some data to a read-only section, soincreases overall security, especially when the structure holds somefunction pointers.Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>Reviewed-by: Alex Hung <alex.hung@amd.com>Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
show more ...
drm/amd/display: log destination of vertical interrupt[Why]Knowing the destination of OTG's vertical interrupt 2 is useful fordebugging, but it is not currently included in the OTG state readback
drm/amd/display: log destination of vertical interrupt[Why]Knowing the destination of OTG's vertical interrupt 2 is useful fordebugging, but it is not currently included in the OTG state readbacklogic[How]Read the OTG interrupt destination register to get the vertical interrupt2 destination on ASICs that have this register when reading back the OTGstate from hardwareReviewed-by: Sung Lee <sung.lee@amd.com>Reviewed-by: Aric Cyr <aric.cyr@amd.com>Signed-off-by: Josip Pavic <Josip.Pavic@amd.com>Signed-off-by: Wayne Lin <wayne.lin@amd.com>Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drm/amd/display: Wait for all pending cleared before full update[Description]Before every full update we must wait for all pending updates to becleared - this is particularly important for minima
drm/amd/display: Wait for all pending cleared before full update[Description]Before every full update we must wait for all pending updates to becleared - this is particularly important for minimal transitionsbecause if we don't wait for pending cleared, it will be as ifthere was no minimal transition at all. In OTG we must read 3 differentstatus registers for pending cleared, one specifically for OTG updates,one specifically for OPTC updates, and the last for surface relatedupdates.Reviewed-by: Dillon Varone <dillon.varone@amd.com>Signed-off-by: Alvin Lee <Alvin.Lee2@amd.com>Signed-off-by: Aurabindo Pillai <aurabindo.pillai@amd.com>Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drm/amd/display: Add left edge pixel for YCbCr422/420 + ODM pipe split[WHY]Currently 3-tap chroma subsampling is used for YCbCr422/420. When ODMpipesplit is used, pixels on the left edge of ODM s
drm/amd/display: Add left edge pixel for YCbCr422/420 + ODM pipe split[WHY]Currently 3-tap chroma subsampling is used for YCbCr422/420. When ODMpipesplit is used, pixels on the left edge of ODM slices need one extrapixel from the right edge of the previous slice to calculate the correctchroma value.Without this change, the chroma value is slightly different thanexpected. This is usually imperceptible visually, but it impacts testpattern CRCs for compliance test automation.[HOW]Update logic to use the register for adding extra left edge pixel forYCbCr422/420 ODM cases.Reviewed-by: George Shen <george.shen@amd.com>Acked-by: Alex Hung <alex.hung@amd.com>Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drm/amd/display: use even ODM slice width for two pixels per container[why]When optc uses two pixel per container, each ODM slice width must be aneven number.[how]If ODM slice width is odd num
drm/amd/display: use even ODM slice width for two pixels per container[why]When optc uses two pixel per container, each ODM slice width must be aneven number.[how]If ODM slice width is odd number increase it by 1.Reviewed-by: Dillon Varone <dillon.varone@amd.com>Acked-by: Wayne Lin <wayne.lin@amd.com>Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drm/amd/display: Refactor OPTC into component folder[why]Move all optc files to uniquefolder optc.[how]creating optc repo in dc, and moved the dcnxx_optc.c and .h files intocorresponding new
drm/amd/display: Refactor OPTC into component folder[why]Move all optc files to uniquefolder optc.[how]creating optc repo in dc, and moved the dcnxx_optc.c and .h files intocorresponding new folders inside the optc and cleared the linkageerrors by adding relative paths in the Makefile.template.Reviewed-by: Martin Leung <martin.leung@amd.com>Acked-by: Hamza Mahfooz <hamza.mahfooz@amd.com>Signed-off-by: Parandhaman K <parandhaman.k@amd.com>Signed-off-by: Alex Deucher <alexander.deucher@amd.com>