aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/cik.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/radeon/cik.c')
-rw-r--r--drivers/gpu/drm/radeon/cik.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
index 2e742a591dfc..bce73b6203ac 100644
--- a/drivers/gpu/drm/radeon/cik.c
+++ b/drivers/gpu/drm/radeon/cik.c
@@ -32,6 +32,7 @@
32#include "cik_blit_shaders.h" 32#include "cik_blit_shaders.h"
33#include "radeon_ucode.h" 33#include "radeon_ucode.h"
34#include "clearstate_ci.h" 34#include "clearstate_ci.h"
35#include "radeon_kfd.h"
35 36
36MODULE_FIRMWARE("radeon/BONAIRE_pfp.bin"); 37MODULE_FIRMWARE("radeon/BONAIRE_pfp.bin");
37MODULE_FIRMWARE("radeon/BONAIRE_me.bin"); 38MODULE_FIRMWARE("radeon/BONAIRE_me.bin");
@@ -7798,6 +7799,10 @@ restart_ih:
7798 while (rptr != wptr) { 7799 while (rptr != wptr) {
7799 /* wptr/rptr are in bytes! */ 7800 /* wptr/rptr are in bytes! */
7800 ring_index = rptr / 4; 7801 ring_index = rptr / 4;
7802
7803 radeon_kfd_interrupt(rdev,
7804 (const void *) &rdev->ih.ring[ring_index]);
7805
7801 src_id = le32_to_cpu(rdev->ih.ring[ring_index]) & 0xff; 7806 src_id = le32_to_cpu(rdev->ih.ring[ring_index]) & 0xff;
7802 src_data = le32_to_cpu(rdev->ih.ring[ring_index + 1]) & 0xfffffff; 7807 src_data = le32_to_cpu(rdev->ih.ring[ring_index + 1]) & 0xfffffff;
7803 ring_id = le32_to_cpu(rdev->ih.ring[ring_index + 2]) & 0xff; 7808 ring_id = le32_to_cpu(rdev->ih.ring[ring_index + 2]) & 0xff;
@@ -8487,6 +8492,10 @@ static int cik_startup(struct radeon_device *rdev)
8487 if (r) 8492 if (r)
8488 return r; 8493 return r;
8489 8494
8495 r = radeon_kfd_resume(rdev);
8496 if (r)
8497 return r;
8498
8490 return 0; 8499 return 0;
8491} 8500}
8492 8501
@@ -8535,6 +8544,7 @@ int cik_resume(struct radeon_device *rdev)
8535 */ 8544 */
8536int cik_suspend(struct radeon_device *rdev) 8545int cik_suspend(struct radeon_device *rdev)
8537{ 8546{
8547 radeon_kfd_suspend(rdev);
8538 radeon_pm_suspend(rdev); 8548 radeon_pm_suspend(rdev);
8539 dce6_audio_fini(rdev); 8549 dce6_audio_fini(rdev);
8540 radeon_vm_manager_fini(rdev); 8550 radeon_vm_manager_fini(rdev);