mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-18 03:23:53 -04:00
drm/amdgpu: fix fence fallback timer expired error
IH is not working after switching a new gpu index for the first time. During VM resume, QEMU programming of VF MSIX table (register GFXMSIX_VECT0_ADDR_LO) may not work.The access could be blocked by nBIF protection as VF isn't in exclusive access mode. Exclusive access is enabled now, disable/enable MSIX so that QEMU reprograms MSIX table. call amdgpu_restore_msix on resume to restore msix table. Signed-off-by: Samuel Zhang <guoqing.zhang@amd.com> Acked-by: Lijo Lazar <lijo.lazar@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
2f405eb45c
commit
4108c2be12
@@ -5109,6 +5109,13 @@ static inline int amdgpu_virt_resume(struct amdgpu_device *adev)
|
||||
int r;
|
||||
unsigned int prev_physical_node_id = adev->gmc.xgmi.physical_node_id;
|
||||
|
||||
/* During VM resume, QEMU programming of VF MSIX table (register GFXMSIX_VECT0_ADDR_LO)
|
||||
* may not work. The access could be blocked by nBIF protection as VF isn't in
|
||||
* exclusive access mode. Exclusive access is enabled now, disable/enable MSIX
|
||||
* so that QEMU reprograms MSIX table.
|
||||
*/
|
||||
amdgpu_restore_msix(adev);
|
||||
|
||||
r = adev->gfxhub.funcs->get_xgmi_info(adev);
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
Reference in New Issue
Block a user