mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
drm/amd/display: Add pixel_clock to amd_pp_display_configuration
[ Upstream commit b515dcb0dc ]
This commit adds the pixel_clock field to the display config
struct so that power management (DPM) can use it.
We currently don't have a proper bandwidth calculation on old
GPUs with DCE 6-10 because dce_calcs only supports DCE 11+.
So the power management (DPM) on these GPUs may need to make
ad-hoc decisions for display based on the pixel clock.
Also rename sym_clock to pixel_clock in dm_pp_single_disp_config
to avoid confusion with other code where the sym_clock refers to
the DisplayPort symbol clock.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
dfd1d6b582
commit
cc1500bfad
@@ -97,6 +97,7 @@ bool dm_pp_apply_display_requirements(
|
||||
const struct dm_pp_single_disp_config *dc_cfg =
|
||||
&pp_display_cfg->disp_configs[i];
|
||||
adev->pm.pm_display_cfg.displays[i].controller_id = dc_cfg->pipe_idx + 1;
|
||||
adev->pm.pm_display_cfg.displays[i].pixel_clock = dc_cfg->pixel_clock;
|
||||
}
|
||||
|
||||
amdgpu_dpm_display_configuration_change(adev, &adev->pm.pm_display_cfg);
|
||||
|
||||
@@ -164,7 +164,7 @@ void dce110_fill_display_configs(
|
||||
stream->link->cur_link_settings.link_rate;
|
||||
cfg->link_settings.link_spread =
|
||||
stream->link->cur_link_settings.link_spread;
|
||||
cfg->sym_clock = stream->phy_pix_clk;
|
||||
cfg->pixel_clock = stream->phy_pix_clk;
|
||||
/* Round v_refresh*/
|
||||
cfg->v_refresh = stream->timing.pix_clk_100hz * 100;
|
||||
cfg->v_refresh /= stream->timing.h_total;
|
||||
|
||||
@@ -127,7 +127,7 @@ struct dm_pp_single_disp_config {
|
||||
uint32_t src_height;
|
||||
uint32_t src_width;
|
||||
uint32_t v_refresh;
|
||||
uint32_t sym_clock; /* HDMI only */
|
||||
uint32_t pixel_clock; /* Pixel clock in KHz (for HDMI only: normalized) */
|
||||
struct dc_link_settings link_settings; /* DP only */
|
||||
};
|
||||
|
||||
|
||||
@@ -65,6 +65,7 @@ struct single_display_configuration {
|
||||
uint32_t view_resolution_cy;
|
||||
enum amd_pp_display_config_type displayconfigtype;
|
||||
uint32_t vertical_refresh; /* for active display */
|
||||
uint32_t pixel_clock; /* Pixel clock in KHz (for HDMI only: normalized) */
|
||||
};
|
||||
|
||||
#define MAX_NUM_DISPLAY 32
|
||||
|
||||
Reference in New Issue
Block a user