mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-19 15:19:10 +07:00
drm/amd/powerplay: add interface to check pptable (v2)
This patch adds interface to check pptable function for smu. It's to check if the format_revision in vbios is up to pptable header version, and the structure size is not 0. v2: add detailed info to describe this function 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
a6b35900dc
commit
46126e6dad
@ -145,6 +145,14 @@ static int smu_smc_table_hw_init(struct smu_context *smu)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* check if the format_revision in vbios is up to pptable header
|
||||||
|
* version, and the structure size is not 0.
|
||||||
|
*/
|
||||||
|
ret = smu_check_pptable(smu);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,6 +41,7 @@ struct smu_funcs
|
|||||||
int (*check_fw_status)(struct smu_context *smu);
|
int (*check_fw_status)(struct smu_context *smu);
|
||||||
int (*read_pptable_from_vbios)(struct smu_context *smu);
|
int (*read_pptable_from_vbios)(struct smu_context *smu);
|
||||||
int (*get_vbios_bootup_values)(struct smu_context *smu);
|
int (*get_vbios_bootup_values)(struct smu_context *smu);
|
||||||
|
int (*check_pptable)(struct smu_context *smu);
|
||||||
};
|
};
|
||||||
|
|
||||||
#define smu_init_microcode(smu) \
|
#define smu_init_microcode(smu) \
|
||||||
@ -57,6 +58,8 @@ struct smu_funcs
|
|||||||
((smu)->funcs->read_pptable_from_vbios ? (smu)->funcs->read_pptable_from_vbios((smu)) : 0)
|
((smu)->funcs->read_pptable_from_vbios ? (smu)->funcs->read_pptable_from_vbios((smu)) : 0)
|
||||||
#define smu_get_vbios_bootup_values(smu) \
|
#define smu_get_vbios_bootup_values(smu) \
|
||||||
((smu)->funcs->get_vbios_bootup_values ? (smu)->funcs->get_vbios_bootup_values((smu)) : 0)
|
((smu)->funcs->get_vbios_bootup_values ? (smu)->funcs->get_vbios_bootup_values((smu)) : 0)
|
||||||
|
#define smu_check_pptable(smu) \
|
||||||
|
((smu)->funcs->check_pptable ? (smu)->funcs->check_pptable((smu)) : 0)
|
||||||
|
|
||||||
extern const struct amd_ip_funcs smu_ip_funcs;
|
extern const struct amd_ip_funcs smu_ip_funcs;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user