> -----Original Message----- > From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf > Of Monk Liu > Sent: Thursday, February 09, 2017 12:46 AM > To: amd-gfx at lists.freedesktop.org > Cc: Liu, Monk > Subject: [PATCH] drm/amdgpu:use hw_init for sriov_gpu_reset > > no suspend invoked so after VF FLR by host, we just > call hw_init to reinitialize IPs. > > Change-Id: If09cb42b09bee6acc84e6b239ef537ad5a3df41c > Signed-off-by: Monk Liu <Monk.Liu at amd.com> Reviewed-by: Alex Deucher <alexander.deucher at amd.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > index 0d33bc9..7e64110 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > @@ -1604,7 +1604,7 @@ int amdgpu_suspend(struct amdgpu_device > *adev) > return 0; > } > > -static int amdgpu_sriov_resume_early(struct amdgpu_device *adev) > +static int amdgpu_sriov_reinit_early(struct amdgpu_device *adev) > { > int i, r; > > @@ -1615,7 +1615,7 @@ static int amdgpu_sriov_resume_early(struct > amdgpu_device *adev) > if (adev->ip_blocks[i].version->type == > AMD_IP_BLOCK_TYPE_COMMON || > adev->ip_blocks[i].version->type == > AMD_IP_BLOCK_TYPE_GMC || > adev->ip_blocks[i].version->type == > AMD_IP_BLOCK_TYPE_IH) > - r = adev->ip_blocks[i].version->funcs- > >resume(adev); > + r = adev->ip_blocks[i].version->funcs- > >hw_init(adev); > > if (r) { > DRM_ERROR("resume of IP block <%s> failed %d\n", > @@ -1627,7 +1627,7 @@ static int amdgpu_sriov_resume_early(struct > amdgpu_device *adev) > return 0; > } > > -static int amdgpu_sriov_resume_late(struct amdgpu_device *adev) > +static int amdgpu_sriov_reinit_late(struct amdgpu_device *adev) > { > int i, r; > > @@ -1640,7 +1640,7 @@ static int amdgpu_sriov_resume_late(struct > amdgpu_device *adev) > adev->ip_blocks[i].version->type == > AMD_IP_BLOCK_TYPE_IH ) > continue; > > - r = adev->ip_blocks[i].version->funcs->resume(adev); > + r = adev->ip_blocks[i].version->funcs->hw_init(adev); > if (r) { > DRM_ERROR("resume of IP block <%s> failed %d\n", > adev->ip_blocks[i].version->funcs->name, > r); > @@ -2433,13 +2433,13 @@ int amdgpu_sriov_gpu_reset(struct > amdgpu_device *adev, bool voluntary) > > > /* Resume IP prior to SMC */ > - amdgpu_sriov_resume_early(adev); > + amdgpu_sriov_reinit_early(adev); > > /* we need recover gart prior to run SMC/CP/SDMA resume */ > amdgpu_ttm_recover_gart(adev); > > /* now we are okay to resume SMC/CP/SDMA */ > - amdgpu_sriov_resume_late(adev); > + amdgpu_sriov_reinit_late(adev); > > amdgpu_irq_gpu_reset_resume_helper(adev); > > -- > 2.7.4 > > _______________________________________________ > amd-gfx mailing list > amd-gfx at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx