diff options
author | Gustavo Diaz Prado <a0273371@ti.com> | 2012-10-03 11:11:03 -0500 |
---|---|---|
committer | Jason Simmons <jsimmons@google.com> | 2012-10-22 16:05:59 -0700 |
commit | 2d7bd1ee60dd7a35573728c17fcae49999f8edd9 (patch) | |
tree | f75e11162a2647f851808c6e4335d0812c2ca65a | |
parent | 42428ff2ee69e996b145a3b6c9d5791e0cef45e7 (diff) | |
download | omap4-aah-2d7bd1ee60dd7a35573728c17fcae49999f8edd9.tar.gz |
hwc: Fix for losing first blit buffer handle
There are certain situations where the regionizer decides it can handle
all layers passed to it and no blits are generated as a result. This is
caused by receiving more than two times the same geometry in the
prepare, which makes the regionizer to not generate dirty regions
(hence no blits). When this situation happens we are losing the first
blit handle by assigning it to NULL incorrectly.
This patch fixes the issue by checking if the sgx will be used for
composition instead of checking if we have no blits.
Change-Id: I68e87c386c98a8ca5047e1723c6c43db7c143447
Signed-off-by: Gustavo Diaz Prado <a0273371@ti.com>
(cherry picked from commit ac81898f605ba0a6b5359de4d6565c61fcc3a36a)
-rw-r--r-- | hwc/hwc.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1816,7 +1816,7 @@ static int omap4_hwc_prepare(struct hwc_composer_device_1 *dev, size_t numDispla * This is needed because if we blit all we would lose the handle of * the first layer */ - if (hwc_dev->blit_num == 0) { + if (hwc_dev->use_sgx) { hwc_dev->buffers[0] = NULL; } omap4_hwc_setup_layer_base(&dsscomp->ovls[0].cfg, fb_z, |