mirror of https://gitee.com/openkylin/linux.git
drm/amdgpu/display: add flag for multi-display mclk switching
Add a dcfeaturemask flag for mclk switching. Disable by default; enable once the feature has seen more testing. Set amdgpu.dcfeaturemask=2 on the kernel command line in grub to enable this. Acked-by: Evan Quan <evan.quan@amd.com> Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
8b2608f1cf
commit
d99f38aed1
|
@ -694,6 +694,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
|
|||
if (amdgpu_dc_feature_mask & DC_FBC_MASK)
|
||||
init_data.flags.fbc_support = true;
|
||||
|
||||
if (amdgpu_dc_feature_mask & DC_MULTI_MON_PP_MCLK_SWITCH_MASK)
|
||||
init_data.flags.multi_mon_pp_mclk_switch = true;
|
||||
|
||||
init_data.flags.power_down_display_on_boot = true;
|
||||
|
||||
#ifdef CONFIG_DRM_AMD_DC_DCN2_0
|
||||
|
|
|
@ -3025,7 +3025,10 @@ bool bw_calcs(struct dc_context *ctx,
|
|||
|
||||
populate_initial_data(pipe, pipe_count, data);
|
||||
|
||||
calcs_output->all_displays_in_sync = all_displays_in_sync(pipe, pipe_count);
|
||||
if (ctx->dc->config.multi_mon_pp_mclk_switch)
|
||||
calcs_output->all_displays_in_sync = all_displays_in_sync(pipe, pipe_count);
|
||||
else
|
||||
calcs_output->all_displays_in_sync = false;
|
||||
|
||||
if (data->number_of_displays != 0) {
|
||||
uint8_t yclk_lvl, sclk_lvl;
|
||||
|
|
|
@ -220,7 +220,7 @@ struct dc_config {
|
|||
bool power_down_display_on_boot;
|
||||
bool edp_not_connected;
|
||||
bool forced_clocks;
|
||||
|
||||
bool multi_mon_pp_mclk_switch;
|
||||
};
|
||||
|
||||
enum visual_confirm {
|
||||
|
|
|
@ -142,6 +142,7 @@ enum PP_FEATURE_MASK {
|
|||
|
||||
enum DC_FEATURE_MASK {
|
||||
DC_FBC_MASK = 0x1,
|
||||
DC_MULTI_MON_PP_MCLK_SWITCH_MASK = 0x2,
|
||||
};
|
||||
|
||||
enum amd_dpm_forced_level;
|
||||
|
|
Loading…
Reference in New Issue