From: Huang Rui Date: Tue, 4 Dec 2018 14:04:24 +0000 (+0800) Subject: drm/amd/powerplay: add interface to set tool table location (v2) X-Git-Tag: v5.15~6346^2~36^2~345 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=206bc589ed497497d87699b406e195b7c7b51900;p=platform%2Fkernel%2Flinux-starfive.git drm/amd/powerplay: add interface to set tool table location (v2) This patch adds interface to set tool table location for smu. Set PMSTATUSLOG table bo address with SetToolsDramAddr MSG for tools. v2: add detailed info to describe this function Signed-off-by: Huang Rui Acked-by: Alex Deucher Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c index 5e22b15..87c46cf 100644 --- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c +++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c @@ -208,7 +208,12 @@ static int smu_smc_table_hw_init(struct smu_context *smu) if (ret) return ret; - return 0; + /* + * Set PMSTATUSLOG table bo address with SetToolsDramAddr MSG for tools. + */ + ret = smu_set_tool_table_location(smu); + + return ret; } static int smu_hw_init(void *handle) diff --git a/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h b/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h index 90e80cd..213c0bc 100644 --- a/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h +++ b/drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h @@ -47,6 +47,7 @@ struct smu_funcs int (*check_fw_version)(struct smu_context *smu); int (*write_pptable)(struct smu_context *smu); int (*set_min_dcef_deep_sleep)(struct smu_context *smu); + int (*set_tool_table_location)(struct smu_context *smu); }; #define smu_init_microcode(smu) \ @@ -75,6 +76,8 @@ struct smu_funcs ((smu)->funcs->write_pptable ? (smu)->funcs->write_pptable((smu)) : 0) #define smu_set_min_dcef_deep_sleep(smu) \ ((smu)->funcs->set_min_dcef_deep_sleep ? (smu)->funcs->set_min_dcef_deep_sleep((smu)) : 0) +#define smu_set_tool_table_location(smu) \ + ((smu)->funcs->set_tool_table_location ? (smu)->funcs->set_tool_table_location((smu)) : 0) extern const struct amd_ip_funcs smu_ip_funcs;