drm/amd/powerplay: add callbacks to move smc firmware request into sw_init phase
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:
parent
a5b2b6ebf3
commit
167112bff8
|
@ -76,9 +76,18 @@ static int pp_sw_init(void *handle)
|
|||
if (ret)
|
||||
goto err1;
|
||||
|
||||
if (hwmgr->hwmgr_func->request_firmware) {
|
||||
ret = hwmgr->hwmgr_func->request_firmware(hwmgr);
|
||||
if (ret)
|
||||
goto err2;
|
||||
}
|
||||
|
||||
pr_info("amdgpu: powerplay initialized\n");
|
||||
|
||||
return 0;
|
||||
err2:
|
||||
if (hwmgr->hwmgr_func->backend_fini)
|
||||
hwmgr->hwmgr_func->backend_fini(hwmgr);
|
||||
err1:
|
||||
if (hwmgr->pptable_func->pptable_fini)
|
||||
hwmgr->pptable_func->pptable_fini(hwmgr);
|
||||
|
@ -101,6 +110,9 @@ static int pp_sw_fini(void *handle)
|
|||
|
||||
PP_CHECK_HW(hwmgr);
|
||||
|
||||
if (hwmgr->hwmgr_func->release_firmware)
|
||||
ret = hwmgr->hwmgr_func->release_firmware(hwmgr);
|
||||
|
||||
if (hwmgr->hwmgr_func->backend_fini != NULL)
|
||||
ret = hwmgr->hwmgr_func->backend_fini(hwmgr);
|
||||
|
||||
|
|
|
@ -358,6 +358,8 @@ struct pp_hwmgr_func {
|
|||
int (*get_mclk_od)(struct pp_hwmgr *hwmgr);
|
||||
int (*set_mclk_od)(struct pp_hwmgr *hwmgr, uint32_t value);
|
||||
int (*read_sensor)(struct pp_hwmgr *hwmgr, int idx, int32_t *value);
|
||||
int (*request_firmware)(struct pp_hwmgr *hwmgr);
|
||||
int (*release_firmware)(struct pp_hwmgr *hwmgr);
|
||||
};
|
||||
|
||||
struct pp_table_func {
|
||||
|
|
Loading…
Reference in New Issue