From fa4b21f604e9ee69e94b0040c0aadcfbfbfb3d0f Mon Sep 17 00:00:00 2001 From: Deepak Nibade Date: Wed, 22 Jun 2016 17:51:20 +0530 Subject: Revert "gpu: nvgpu: reorder disable_irq" This reverts commit 6bbc169d33ae601b5947c1e54806b9f9bfa6054e. channel_suspend() might cause new interrupts to trigger, and if irqs are already disabled, then these interrupts will not get served Hence revert this patch, and move disable_irq() to original place Bug 200207867 Change-Id: I45617a1a0aa9a1f805dd937a34ebb572a61c05c0 Signed-off-by: Deepak Nibade Reviewed-on: http://git-master/r/1169380 Reviewed-by: Bharat Nihalani Tested-by: Bharat Nihalani --- drivers/gpu/nvgpu/gk20a/gk20a.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.c') diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index 03e16913..44ed4e51 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c @@ -705,13 +705,6 @@ static int gk20a_pm_prepare_poweroff(struct device *dev) if (!g->power_on) goto done; - /* - * After this point, gk20a interrupts should not get - * serviced. - */ - disable_irq(g->irq_stall); - disable_irq(g->irq_nonstall); - gk20a_scale_suspend(dev); /* cancel any pending cde work */ @@ -723,6 +716,12 @@ static int gk20a_pm_prepare_poweroff(struct device *dev) /* disable elpg before gr or fifo suspend */ ret |= gk20a_pmu_destroy(g); + /* + * After this point, gk20a interrupts should not get + * serviced. + */ + disable_irq(g->irq_stall); + disable_irq(g->irq_nonstall); ret |= gk20a_gr_suspend(g); ret |= gk20a_mm_suspend(g); -- cgit v1.2.2