drm/amd/powerplay: rv dal-pplib interface refactor powerplay part
[WHY] clarify dal input parameters to pplib interface, remove un-used parameters. dal knows exactly which parameters needed and their effects at pplib and smu sides. current dal sequence for dcn1_update_clock to pplib: 1.smu10_display_clock_voltage_request for dcefclk 2.smu10_display_clock_voltage_request for fclk 3.phm_store_dal_configuration_data { set_min_deep_sleep_dcfclk set_active_display_count store_cc6_data --- this data never be referenced new sequence will be: 1. set_display_count --- need add new pplib interface 2. set_min_deep_sleep_dcfclk -- new pplib interface 3. set_hard_min_dcfclk_by_freq 4. set_hard_min_fclk_by_freq after this code refactor, smu10_display_clock_voltage_request, phm_store_dal_configuration_data will not be needed for rv. [HOW] step 1: add new functions at pplib interface step 2: add new functions at amdgpu dm and dc Signed-off-by: hersen wu <hersenxs.wu@amd.com> Reviewed-by: Rex Zhu <Rex.Zhu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
@@ -463,5 +463,8 @@ extern int phm_display_clock_voltage_request(struct pp_hwmgr *hwmgr,
|
||||
|
||||
extern int phm_get_max_high_clocks(struct pp_hwmgr *hwmgr, struct amd_pp_simple_clock_info *clocks);
|
||||
extern int phm_disable_smc_firmware_ctf(struct pp_hwmgr *hwmgr);
|
||||
|
||||
extern int phm_set_active_display_count(struct pp_hwmgr *hwmgr, uint32_t count);
|
||||
|
||||
#endif /* _HARDWARE_MANAGER_H_ */
|
||||
|
||||
|
@@ -309,7 +309,7 @@ struct pp_hwmgr_func {
|
||||
int (*avfs_control)(struct pp_hwmgr *hwmgr, bool enable);
|
||||
int (*disable_smc_firmware_ctf)(struct pp_hwmgr *hwmgr);
|
||||
int (*set_active_display_count)(struct pp_hwmgr *hwmgr, uint32_t count);
|
||||
int (*set_deep_sleep_dcefclk)(struct pp_hwmgr *hwmgr, uint32_t clock);
|
||||
int (*set_min_deep_sleep_dcefclk)(struct pp_hwmgr *hwmgr, uint32_t clock);
|
||||
int (*start_thermal_controller)(struct pp_hwmgr *hwmgr, struct PP_TemperatureRange *range);
|
||||
int (*notify_cac_buffer_info)(struct pp_hwmgr *hwmgr,
|
||||
uint32_t virtual_addr_low,
|
||||
@@ -332,6 +332,8 @@ struct pp_hwmgr_func {
|
||||
int (*smus_notify_pwe)(struct pp_hwmgr *hwmgr);
|
||||
int (*powergate_sdma)(struct pp_hwmgr *hwmgr, bool bgate);
|
||||
int (*enable_mgpu_fan_boost)(struct pp_hwmgr *hwmgr);
|
||||
int (*set_hard_min_dcefclk_by_freq)(struct pp_hwmgr *hwmgr, uint32_t clock);
|
||||
int (*set_hard_min_fclk_by_freq)(struct pp_hwmgr *hwmgr, uint32_t clock);
|
||||
};
|
||||
|
||||
struct pp_table_func {
|
||||
|
Reference in New Issue
Block a user