From: Alex Deucher <alexander.deucher@xxxxxxx> Otherwise we may end up with stale MC addresses after resume. Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> Cc: stable@xxxxxxxxxxxxxxx --- drivers/gpu/drm/radeon/evergreen.c | 1 + drivers/gpu/drm/radeon/ni.c | 1 + drivers/gpu/drm/radeon/r100.c | 1 + drivers/gpu/drm/radeon/r300.c | 1 + drivers/gpu/drm/radeon/r420.c | 1 + drivers/gpu/drm/radeon/r600.c | 1 + drivers/gpu/drm/radeon/rs400.c | 1 + drivers/gpu/drm/radeon/rs600.c | 1 + drivers/gpu/drm/radeon/rs690.c | 1 + drivers/gpu/drm/radeon/rv515.c | 1 + drivers/gpu/drm/radeon/rv770.c | 1 + drivers/gpu/drm/radeon/si.c | 1 + 12 files changed, 12 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c index 305a657..f0e64a4 100644 --- a/drivers/gpu/drm/radeon/evergreen.c +++ b/drivers/gpu/drm/radeon/evergreen.c @@ -3720,6 +3720,7 @@ int evergreen_suspend(struct radeon_device *rdev) r600_dma_stop(rdev); evergreen_irq_suspend(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); evergreen_pcie_gart_disable(rdev); return 0; diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c index e6f3989..367b7a1 100644 --- a/drivers/gpu/drm/radeon/ni.c +++ b/drivers/gpu/drm/radeon/ni.c @@ -1785,6 +1785,7 @@ int cayman_suspend(struct radeon_device *rdev) cayman_dma_stop(rdev); evergreen_irq_suspend(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); cayman_pcie_gart_disable(rdev); return 0; } diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c index 9db5853..691dc93 100644 --- a/drivers/gpu/drm/radeon/r100.c +++ b/drivers/gpu/drm/radeon/r100.c @@ -3892,6 +3892,7 @@ int r100_suspend(struct radeon_device *rdev) { r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); r100_irq_disable(rdev); if (rdev->flags & RADEON_IS_PCI) r100_pci_gart_disable(rdev); diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c index c60350e..28ff068 100644 --- a/drivers/gpu/drm/radeon/r300.c +++ b/drivers/gpu/drm/radeon/r300.c @@ -1436,6 +1436,7 @@ int r300_suspend(struct radeon_device *rdev) { r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); r100_irq_disable(rdev); if (rdev->flags & RADEON_IS_PCIE) rv370_pcie_gart_disable(rdev); diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c index 6fce2eb..6edecc8 100644 --- a/drivers/gpu/drm/radeon/r420.c +++ b/drivers/gpu/drm/radeon/r420.c @@ -325,6 +325,7 @@ int r420_suspend(struct radeon_device *rdev) r420_cp_errata_fini(rdev); r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); r100_irq_disable(rdev); if (rdev->flags & RADEON_IS_PCIE) rv370_pcie_gart_disable(rdev); diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c index 0740db3..6166c7e 100644 --- a/drivers/gpu/drm/radeon/r600.c +++ b/drivers/gpu/drm/radeon/r600.c @@ -3031,6 +3031,7 @@ int r600_suspend(struct radeon_device *rdev) r600_dma_stop(rdev); r600_irq_suspend(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); r600_pcie_gart_disable(rdev); return 0; diff --git a/drivers/gpu/drm/radeon/rs400.c b/drivers/gpu/drm/radeon/rs400.c index 73051ce..5eaf41f 100644 --- a/drivers/gpu/drm/radeon/rs400.c +++ b/drivers/gpu/drm/radeon/rs400.c @@ -470,6 +470,7 @@ int rs400_suspend(struct radeon_device *rdev) { r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); r100_irq_disable(rdev); rs400_gart_disable(rdev); return 0; diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c index 5a0fc74..8f70d78 100644 --- a/drivers/gpu/drm/radeon/rs600.c +++ b/drivers/gpu/drm/radeon/rs600.c @@ -945,6 +945,7 @@ int rs600_suspend(struct radeon_device *rdev) r600_audio_fini(rdev); r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); rs600_irq_disable(rdev); rs600_gart_disable(rdev); return 0; diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c index 5706d2a..a9e7890 100644 --- a/drivers/gpu/drm/radeon/rs690.c +++ b/drivers/gpu/drm/radeon/rs690.c @@ -686,6 +686,7 @@ int rs690_suspend(struct radeon_device *rdev) r600_audio_fini(rdev); r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); rs600_irq_disable(rdev); rs400_gart_disable(rdev); return 0; diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c index 435ed35..73ce8a3 100644 --- a/drivers/gpu/drm/radeon/rv515.c +++ b/drivers/gpu/drm/radeon/rv515.c @@ -530,6 +530,7 @@ int rv515_suspend(struct radeon_device *rdev) { r100_cp_disable(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); rs600_irq_disable(rdev); if (rdev->flags & RADEON_IS_PCIE) rv370_pcie_gart_disable(rdev); diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index d63fe1d..021a056 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c @@ -1119,6 +1119,7 @@ int rv770_suspend(struct radeon_device *rdev) r600_dma_stop(rdev); r600_irq_suspend(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); rv770_pcie_gart_disable(rdev); return 0; diff --git a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.c index bafbe32..23f4ab99 100644 --- a/drivers/gpu/drm/radeon/si.c +++ b/drivers/gpu/drm/radeon/si.c @@ -4474,6 +4474,7 @@ int si_suspend(struct radeon_device *rdev) cayman_dma_stop(rdev); si_irq_suspend(rdev); radeon_wb_disable(rdev); + radeon_ib_pool_fini(rdev); si_pcie_gart_disable(rdev); return 0; } -- 1.7.7.5 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel