summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Deucher <alexander.deucher@amd.com>2021-02-04 19:24:00 +0300
committerAlex Deucher <alexander.deucher@amd.com>2021-02-09 23:30:01 +0300
commitf172865a3632b85f29c2af9b044f4dd51581740f (patch)
tree275e50dd9e78b0820a38b51883d555b44f283695
parent1176a1e0b9d50255d733a1e04c039405a3ab5948 (diff)
downloadlinux-f172865a3632b85f29c2af9b044f4dd51581740f.tar.xz
drm/amdgpu/nv: add PCI reset support
Use generic PCI reset for GPU reset if the user specifies PCI reset as the reset mechanism. This should in general only be used for validation. Acked-by: Evan Quan <evan.quan@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/nv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/nv.c b/drivers/gpu/drm/amd/amdgpu/nv.c
index efacf5fd8191..160fa5f59805 100644
--- a/drivers/gpu/drm/amd/amdgpu/nv.c
+++ b/drivers/gpu/drm/amd/amdgpu/nv.c
@@ -391,7 +391,8 @@ nv_asic_reset_method(struct amdgpu_device *adev)
if (amdgpu_reset_method == AMD_RESET_METHOD_MODE1 ||
amdgpu_reset_method == AMD_RESET_METHOD_MODE2 ||
- amdgpu_reset_method == AMD_RESET_METHOD_BACO)
+ amdgpu_reset_method == AMD_RESET_METHOD_BACO ||
+ amdgpu_reset_method == AMD_RESET_METHOD_PCI)
return amdgpu_reset_method;
if (amdgpu_reset_method != -1)
@@ -423,6 +424,10 @@ static int nv_asic_reset(struct amdgpu_device *adev)
return 0;
switch (nv_asic_reset_method(adev)) {
+ case AMD_RESET_METHOD_PCI:
+ dev_info(adev->dev, "PCI reset\n");
+ ret = amdgpu_device_pci_reset(adev);
+ break;
case AMD_RESET_METHOD_BACO:
dev_info(adev->dev, "BACO reset\n");