drm/amd/pp: implement function notify_cac_buffer_info on Vega
Used for smu power logging. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Родитель
e83dcf1051
Коммит
52afb85e66
|
@ -4994,6 +4994,33 @@ static int vega10_set_mclk_od(struct pp_hwmgr *hwmgr, uint32_t value)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int vega10_notify_cac_buffer_info(struct pp_hwmgr *hwmgr,
|
||||||
|
uint32_t virtual_addr_low,
|
||||||
|
uint32_t virtual_addr_hi,
|
||||||
|
uint32_t mc_addr_low,
|
||||||
|
uint32_t mc_addr_hi,
|
||||||
|
uint32_t size)
|
||||||
|
{
|
||||||
|
smum_send_msg_to_smc_with_parameter(hwmgr,
|
||||||
|
PPSMC_MSG_SetSystemVirtualDramAddrHigh,
|
||||||
|
virtual_addr_hi);
|
||||||
|
smum_send_msg_to_smc_with_parameter(hwmgr,
|
||||||
|
PPSMC_MSG_SetSystemVirtualDramAddrLow,
|
||||||
|
virtual_addr_low);
|
||||||
|
smum_send_msg_to_smc_with_parameter(hwmgr,
|
||||||
|
PPSMC_MSG_DramLogSetDramAddrHigh,
|
||||||
|
mc_addr_hi);
|
||||||
|
|
||||||
|
smum_send_msg_to_smc_with_parameter(hwmgr,
|
||||||
|
PPSMC_MSG_DramLogSetDramAddrLow,
|
||||||
|
mc_addr_low);
|
||||||
|
|
||||||
|
smum_send_msg_to_smc_with_parameter(hwmgr,
|
||||||
|
PPSMC_MSG_DramLogSetDramSize,
|
||||||
|
size);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int vega10_register_thermal_interrupt(struct pp_hwmgr *hwmgr,
|
static int vega10_register_thermal_interrupt(struct pp_hwmgr *hwmgr,
|
||||||
const void *info)
|
const void *info)
|
||||||
{
|
{
|
||||||
|
@ -5079,6 +5106,7 @@ static const struct pp_hwmgr_func vega10_hwmgr_funcs = {
|
||||||
.get_mclk_od = vega10_get_mclk_od,
|
.get_mclk_od = vega10_get_mclk_od,
|
||||||
.set_mclk_od = vega10_set_mclk_od,
|
.set_mclk_od = vega10_set_mclk_od,
|
||||||
.avfs_control = vega10_avfs_enable,
|
.avfs_control = vega10_avfs_enable,
|
||||||
|
.notify_cac_buffer_info = vega10_notify_cac_buffer_info,
|
||||||
.register_internal_thermal_interrupt = vega10_register_thermal_interrupt,
|
.register_internal_thermal_interrupt = vega10_register_thermal_interrupt,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче