hwc: Unlock prev. buffers in N+1th draw round.
Unlock previously locked overlay buferrs in N+1th draw round, rather than N+2th. This is now possible because of wait for PAN. Provides an opportunity to improve genlock behavior and makes it more ICS like. (cherry picked from commit b3a4cd7944397565388b4e940fb41d2af8882687) Change-Id: I48f937b77d59b31f3bf04c5a2eb35500bd5d76d6
This commit is contained in:
committed by
Andrew Sutherland
parent
dc733193ef
commit
0a2352aee5
@ -83,9 +83,6 @@ static int hwc_prepare(hwc_composer_device_t *dev, hwc_layer_list_t* list)
|
||||
if(ctx->mExtDisplay->getExternalDisplay())
|
||||
ovutils::setExtType(ctx->mExtDisplay->getExternalDisplay());
|
||||
|
||||
//Prepare is called after a vsync, so unlock previous buffers here.
|
||||
ctx->qbuf->unlockAllPrevious();
|
||||
|
||||
if (LIKELY(list)) {
|
||||
//reset for this draw round
|
||||
VideoOverlay::reset();
|
||||
@ -194,6 +191,7 @@ static int hwc_set(hwc_composer_device_t *dev,
|
||||
if(!ctx->overlayInUse)
|
||||
ctx->mOverlay->setState(ovutils::OV_CLOSED);
|
||||
|
||||
ctx->qbuf->unlockAllPrevious();
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user