From 2a04faaa37a9d2f951edd138128dcc351ff8c1d0 Mon Sep 17 00:00:00 2001 From: Imre Deak Date: Tue, 6 Apr 2010 02:06:52 +0300 Subject: [PATCH] gpu: pvr: no need to delay queue processing in SGXPostActivePowerEvent MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit At the moment processing of the command queue is delayed in case SGXPostActivePowerEvent in the HW interrupt code path. This would be only justified in case of being in interrupt context. This might have been the case at one point in the history, but now HW interrupts result in a work scheduled and thus calling the queue processing function is safe in all cases. Signed-off-by: Imre Deak CC: Mark Underwood CC: Mark Riding Reviewed-by: Topi Pohjolainen Reviewed-by: Ville Syrjälä --- pvr/sgxutils.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/pvr/sgxutils.c b/pvr/sgxutils.c index 54b0a05..1bf6ab1 100644 --- a/pvr/sgxutils.c +++ b/pvr/sgxutils.c @@ -57,13 +57,8 @@ static void SGXPostActivePowerEvent(struct PVRSRV_DEVICE_NODE *psDeviceNode, writel(l, &psSGXHostCtl->ui32NumActivePowerEvents); l = readl(&psSGXHostCtl->ui32PowerStatus); - if (l & PVRSRV_USSE_EDM_POWMAN_POWEROFF_RESTART_IMMEDIATE) { - if (ui32CallerID == ISR_ID) - psDeviceNode->bReProcessDeviceCommandComplete = - IMG_TRUE; - else - SGXScheduleProcessQueuesKM(psDeviceNode); - } + if (l & PVRSRV_USSE_EDM_POWMAN_POWEROFF_RESTART_IMMEDIATE) + SGXScheduleProcessQueuesKM(psDeviceNode); } void SGXTestActivePowerEvent(struct PVRSRV_DEVICE_NODE *psDeviceNode, -- 2.39.5