drm/amdgpu: added support for dynamic GECC
updated host to send boot config to psp to enable GECC for sienna cichlid Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> Signed-off-by: John Clements <john.clements@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
e40889ecfd
commit
cad7b7510c
@ -556,6 +556,24 @@ int psp_get_fw_attestation_records_addr(struct psp_context *psp,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int psp_boot_config_set(struct amdgpu_device *adev)
|
||||||
|
{
|
||||||
|
struct psp_context *psp = &adev->psp;
|
||||||
|
struct psp_gfx_cmd_resp *cmd = psp->cmd;
|
||||||
|
|
||||||
|
if (adev->asic_type != CHIP_SIENNA_CICHLID)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
memset(cmd, 0, sizeof(struct psp_gfx_cmd_resp));
|
||||||
|
|
||||||
|
cmd->cmd_id = GFX_CMD_ID_BOOT_CFG;
|
||||||
|
cmd->cmd.boot_cfg.sub_cmd = BOOTCFG_CMD_SET;
|
||||||
|
cmd->cmd.boot_cfg.boot_config = BOOT_CONFIG_GECC;
|
||||||
|
cmd->cmd.boot_cfg.boot_config_valid = BOOT_CONFIG_GECC;
|
||||||
|
|
||||||
|
return psp_cmd_submit_buf(psp, NULL, cmd, psp->fence_buf_mc_addr);
|
||||||
|
}
|
||||||
|
|
||||||
static int psp_rl_load(struct amdgpu_device *adev)
|
static int psp_rl_load(struct amdgpu_device *adev)
|
||||||
{
|
{
|
||||||
struct psp_context *psp = &adev->psp;
|
struct psp_context *psp = &adev->psp;
|
||||||
@ -1912,6 +1930,11 @@ static int psp_hw_start(struct psp_context *psp)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ret = psp_boot_config_set(adev);
|
||||||
|
if (ret) {
|
||||||
|
DRM_WARN("PSP set boot config@\n");
|
||||||
|
}
|
||||||
|
|
||||||
ret = psp_tmr_init(psp);
|
ret = psp_tmr_init(psp);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
DRM_ERROR("PSP tmr init failed!\n");
|
DRM_ERROR("PSP tmr init failed!\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user