summaryrefslogtreecommitdiffstats
path: root/pvr-source
diff options
context:
space:
mode:
authorOleg Drokin <green@linuxhacker.ru>2013-07-03 15:15:17 -0700
committerHashcode <hashcode0f@gmail.com>2015-02-06 11:00:43 -0800
commitee5b78d1ee6ce34d6de4c21a264cd368ec28f21c (patch)
tree8e08e6dd1bfa5f8b6a1a1973f15eef61a90d23ca /pvr-source
parent236af44d2574763532288a063f7745ebd2432b5f (diff)
downloadhardware_ti_omap4-ee5b78d1ee6ce34d6de4c21a264cd368ec28f21c.tar.gz
hardware_ti_omap4-ee5b78d1ee6ce34d6de4c21a264cd368ec28f21c.tar.bz2
hardware_ti_omap4-ee5b78d1ee6ce34d6de4c21a264cd368ec28f21c.zip
sgxpvr: Don't ignore interrupts when preparing to sleep.
Setting the "ignore interrupts" (aka powering_down) mask too early in sleeping preparation hits the assertion later on when the code tries to wait for interrupt acknowledging command reception. This also stops kernel complaints about unhandled interrupts from the gfx. Move the setting to just before we really power down the gfx cores. Change-Id: I5451cca3573bde0a37687ebd08b039e45946652c
Diffstat (limited to 'pvr-source')
-rw-r--r--pvr-source/services4/srvkm/devices/sgx/sgxpower.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pvr-source/services4/srvkm/devices/sgx/sgxpower.c b/pvr-source/services4/srvkm/devices/sgx/sgxpower.c
index 034deab..a8fc487 100644
--- a/pvr-source/services4/srvkm/devices/sgx/sgxpower.c
+++ b/pvr-source/services4/srvkm/devices/sgx/sgxpower.c
@@ -333,8 +333,6 @@ PVRSRV_ERROR SGXPrePowerState (IMG_HANDLE hDevHandle,
PDUMPCOMMENT("SGX idle request");
}
- powering_down = 1;
-
sCommand.ui32Data[1] = ui32PowerCmd;
eError = SGXScheduleCCBCommand(psDeviceNode, SGXMKIF_CMD_POWER, &sCommand, KERNEL_ID, 0, IMG_NULL, IMG_FALSE);
@@ -418,6 +416,8 @@ PVRSRV_ERROR SGXPrePowerState (IMG_HANDLE hDevHandle,
"Wait for SGX master clock gating (2)");
#endif /* SGX_FEATURE_MP */
+ powering_down = 1;
+
if (eNewPowerState == PVRSRV_DEV_POWER_STATE_OFF)
{
/* Finally, de-initialise some registers. */