[PATCH V2] drm/amdgpu:bypass avfs event manager for sriov

Deucher, Alexander Alexander.Deucher at amd.com
Wed Nov 2 14:07:31 UTC 2016


> -----Original Message-----
> From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf
> Of Trigger Huang
> Sent: Wednesday, November 02, 2016 8:10 AM
> To: amd-gfx at lists.freedesktop.org
> Cc: Yu, Xiangliang; Min, Frank; Huang, Trigger
> Subject: [PATCH V2] drm/amdgpu:bypass avfs event manager for sriov
> 
> This patch is used for virtualization support. In virtualization case,
> the initialization sequences are not totally the same as
> non-Virtualization's. The avfs event manager should be bypassed if in
> SRIOV virtualization case. At the same, this patch will also bypass
> starting SMC within SRIOV in FIJI, so the SMU firmware loading will be
> avoid, which is required in SRIOV.
> 
> Signed-off-by: Frank Min <Frank.Min at amd.com>
> Signed-off-by: Xiangliang Yu <Xiangliang.Yu at amd.com>
> Signed-off-by: Trigger Huang <trigger.huang at amd.com>

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> 
> Changes in v2:
>  - Modify the commit log. This patch will also bypass starting SMC
>    within SRIOV in FIJI. The same operation will be applied on Tonga
>    in the other patch.
> 
> ---
>  drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> index b86e48f..26eff56 100755
> --- a/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
> @@ -396,7 +396,8 @@ static int fiji_start_smu(struct pp_smumgr *smumgr)
>  	struct fiji_smumgr *priv = (struct fiji_smumgr *)(smumgr->backend);
> 
>  	/* Only start SMC if SMC RAM is not running */
> -	if (!smu7_is_smc_ram_running(smumgr)) {
> +	if (!(smu7_is_smc_ram_running(smumgr)
> +		|| cgs_is_virtualization_enabled(smumgr->device))) {
>  		fiji_avfs_event_mgr(smumgr, false);
> 
>  		/* Check if SMU is running in protected mode */
> @@ -443,6 +444,9 @@ static bool fiji_is_hw_avfs_present(struct
> pp_smumgr *smumgr)
>  	uint32_t efuse = 0;
>  	uint32_t mask = (1 << ((AVFS_EN_MSB - AVFS_EN_LSB) + 1)) - 1;
> 
> +	if (cgs_is_virtualization_enabled(smumgr->device))
> +		return 0;
> +
>  	if (!atomctrl_read_efuse(smumgr->device, AVFS_EN_LSB,
> AVFS_EN_MSB,
>  			mask, &efuse)) {
>  		if (efuse)
> --
> 2.7.4
> 
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list