drm/amd/powerplay: add request_firmware/release_firmware for smu7
Signed-off-by: Huang Rui <ray.huang@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Родитель
613e61a025
Коммит
e81f749452
|
@ -40,6 +40,8 @@
|
|||
|
||||
#include "hwmgr.h"
|
||||
#include "smu7_hwmgr.h"
|
||||
#include "smu7_smumgr.h"
|
||||
#include "smu_ucode_xfer_vi.h"
|
||||
#include "smu7_powertune.h"
|
||||
#include "smu7_dyn_defaults.h"
|
||||
#include "smu7_thermal.h"
|
||||
|
@ -4324,6 +4326,32 @@ static int smu7_get_clock_by_type(struct pp_hwmgr *hwmgr, enum amd_pp_clock_type
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int smu7_request_firmware(struct pp_hwmgr *hwmgr)
|
||||
{
|
||||
int ret;
|
||||
struct cgs_firmware_info info = {0};
|
||||
|
||||
ret = cgs_get_firmware_info(hwmgr->device,
|
||||
smu7_convert_fw_type_to_cgs(UCODE_ID_SMU),
|
||||
&info);
|
||||
if (ret || !info.kptr)
|
||||
return -EINVAL;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int smu7_release_firmware(struct pp_hwmgr *hwmgr)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = cgs_rel_firmware(hwmgr->device,
|
||||
smu7_convert_fw_type_to_cgs(UCODE_ID_SMU));
|
||||
if (ret)
|
||||
return -EINVAL;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct pp_hwmgr_func smu7_hwmgr_funcs = {
|
||||
.backend_init = &smu7_hwmgr_backend_init,
|
||||
.backend_fini = &phm_hwmgr_backend_fini,
|
||||
|
@ -4371,6 +4399,8 @@ static const struct pp_hwmgr_func smu7_hwmgr_funcs = {
|
|||
.get_clock_by_type = smu7_get_clock_by_type,
|
||||
.read_sensor = smu7_read_sensor,
|
||||
.dynamic_state_management_disable = smu7_disable_dpm_tasks,
|
||||
.request_firmware = smu7_request_firmware,
|
||||
.release_firmware = smu7_release_firmware,
|
||||
};
|
||||
|
||||
uint8_t smu7_get_sleep_divider_id_from_clock(uint32_t clock,
|
||||
|
|
Загрузка…
Ссылка в новой задаче