diff options
author | Gustavo Diaz Prado <x0083741@ti.com> | 2011-05-31 09:25:16 +0100 |
---|---|---|
committer | Andy Green <andy.green@linaro.org> | 2011-05-31 11:06:50 +0100 |
commit | 7e0942c87b248c3d2102becf6726cf7b8f7dfd6d (patch) | |
tree | 072a1874afb54177386e467df8a7b4f84de44de4 /drivers | |
parent | 3ad3136136646d2d4801948170b98509dacffc9d (diff) |
SGX-KM: OMAPLFB: CommandComplete missed calls
When the suspend/resume mechanism is exercised too
fast, a call to command complete can be missed.
This change fixes a problem with the command complete
flag being incorrectly set to true when the
command complete was not performed. This inconsistency
can cause the GPU driver to stall.
Change-Id: Icc96e3f12d7e8e4ba3b8a0dd2ac25e4121820f07
Signed-off-by: Rodrigo Obregon <robregon@ti.com>
Signed-off-by: Gustavo Diaz Prado <x0083741@ti.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/pvr/omaplfb/omaplfb_displayclass.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/pvr/omaplfb/omaplfb_displayclass.c b/drivers/gpu/pvr/omaplfb/omaplfb_displayclass.c index 0afff5460bd..3434d049424 100644 --- a/drivers/gpu/pvr/omaplfb/omaplfb_displayclass.c +++ b/drivers/gpu/pvr/omaplfb/omaplfb_displayclass.c @@ -1056,7 +1056,7 @@ static void OMAPLFBSyncIHandler(struct work_struct *work) psSwapChain->ulRemoveIndex++; if (psSwapChain->ulRemoveIndex > ulMaxIndex) psSwapChain->ulRemoveIndex = 0; - psFlipItem->bCmdCompleted = OMAP_FALSE; + psFlipItem->bFlipped = OMAP_FALSE; psFlipItem->bValid = OMAP_FALSE; @@ -1162,6 +1162,7 @@ static IMG_BOOL ProcessFlip(IMG_HANDLE hCmdCookie, (unsigned long)psFlipCmd->ui32SwapInterval; psFlipItem->sSysAddr = &psBuffer->sSysAddr; psFlipItem->bValid = OMAP_TRUE; + psFlipItem->bCmdCompleted = OMAP_FALSE; psSwapChain->ulInsertIndex++; if(psSwapChain->ulInsertIndex > ulMaxIndex) |