From 7e887b042f97c37365f5f8d0617dd5f5d73abdad Mon Sep 17 00:00:00 2001 From: Oleg Drokin Date: Wed, 3 Jul 2013 15:15:17 -0700 Subject: 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 --- pvr-source/services4/srvkm/devices/sgx/sgxpower.c | 4 ++-- 1 file 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. */ -- cgit v1.1