Loading include/ui/GraphicBuffer.h +0 −5 Original line number Diff line number Diff line Loading @@ -98,11 +98,6 @@ public: status_t lockYCbCr(uint32_t usage, android_ycbcr *ycbcr); status_t lockYCbCr(uint32_t usage, const Rect& rect, android_ycbcr *ycbcr); status_t unlock(); status_t lockAsync(uint32_t usage, void** vaddr, int fenceFd); status_t lockAsync(uint32_t usage, const Rect& rect, void** vaddr, int fenceFd); status_t lockAsyncYCbCr(uint32_t usage, android_ycbcr *ycbcr, int fenceFd); status_t lockAsyncYCbCr(uint32_t usage, const Rect& rect, android_ycbcr *ycbcr, int fenceFd); status_t unlockAsync(int *fenceFd); ANativeWindowBuffer* getNativeBuffer() const; Loading include/ui/GraphicBufferMapper.h +0 −8 Original line number Diff line number Diff line Loading @@ -50,14 +50,6 @@ public: status_t unlock(buffer_handle_t handle); status_t lockAsync(buffer_handle_t handle, int usage, const Rect& bounds, void** vaddr, int fenceFd); status_t lockAsyncYCbCr(buffer_handle_t handle, int usage, const Rect& bounds, android_ycbcr *ycbcr, int fenceFd); status_t unlockAsync(buffer_handle_t handle, int *fenceFd); // dumps information about the mapping of this handle void dump(buffer_handle_t handle); Loading libs/gui/Surface.cpp +13 −5 Original line number Diff line number Diff line Loading @@ -764,6 +764,15 @@ status_t Surface::lock( ALOGE_IF(err, "dequeueBuffer failed (%s)", strerror(-err)); if (err == NO_ERROR) { sp<GraphicBuffer> backBuffer(GraphicBuffer::getSelf(out)); sp<Fence> fence(new Fence(fenceFd)); err = fence->waitForever("Surface::lock"); if (err != OK) { ALOGE("Fence::wait failed (%s)", strerror(-err)); cancelBuffer(out, fenceFd); return err; } const Rect bounds(backBuffer->width, backBuffer->height); Region newDirtyRegion; Loading Loading @@ -814,9 +823,9 @@ status_t Surface::lock( } void* vaddr; status_t res = backBuffer->lockAsync( status_t res = backBuffer->lock( GRALLOC_USAGE_SW_READ_OFTEN | GRALLOC_USAGE_SW_WRITE_OFTEN, newDirtyRegion.bounds(), &vaddr, fenceFd); newDirtyRegion.bounds(), &vaddr); ALOGW_IF(res, "failed locking buffer (handle = %p)", backBuffer->handle); Loading @@ -842,11 +851,10 @@ status_t Surface::unlockAndPost() return INVALID_OPERATION; } int fd = -1; status_t err = mLockedBuffer->unlockAsync(&fd); status_t err = mLockedBuffer->unlock(); ALOGE_IF(err, "failed unlocking buffer (%p)", mLockedBuffer->handle); err = queueBuffer(mLockedBuffer.get(), fd); err = queueBuffer(mLockedBuffer.get(), -1); ALOGE_IF(err, "queueBuffer (handle=%p) failed (%s)", mLockedBuffer->handle, strerror(-err)); Loading libs/ui/GraphicBuffer.cpp +0 −46 Original line number Diff line number Diff line Loading @@ -208,52 +208,6 @@ status_t GraphicBuffer::unlock() return res; } status_t GraphicBuffer::lockAsync(uint32_t usage, void** vaddr, int fenceFd) { const Rect lockBounds(width, height); status_t res = lockAsync(usage, lockBounds, vaddr, fenceFd); return res; } status_t GraphicBuffer::lockAsync(uint32_t usage, const Rect& rect, void** vaddr, int fenceFd) { if (rect.left < 0 || rect.right > this->width || rect.top < 0 || rect.bottom > this->height) { ALOGE("locking pixels (%d,%d,%d,%d) outside of buffer (w=%d, h=%d)", rect.left, rect.top, rect.right, rect.bottom, this->width, this->height); return BAD_VALUE; } status_t res = getBufferMapper().lockAsync(handle, usage, rect, vaddr, fenceFd); return res; } status_t GraphicBuffer::lockAsyncYCbCr(uint32_t usage, android_ycbcr *ycbcr, int fenceFd) { const Rect lockBounds(width, height); status_t res = lockAsyncYCbCr(usage, lockBounds, ycbcr, fenceFd); return res; } status_t GraphicBuffer::lockAsyncYCbCr(uint32_t usage, const Rect& rect, android_ycbcr *ycbcr, int fenceFd) { if (rect.left < 0 || rect.right > this->width || rect.top < 0 || rect.bottom > this->height) { ALOGE("locking pixels (%d,%d,%d,%d) outside of buffer (w=%d, h=%d)", rect.left, rect.top, rect.right, rect.bottom, this->width, this->height); return BAD_VALUE; } status_t res = getBufferMapper().lockAsyncYCbCr(handle, usage, rect, ycbcr, fenceFd); return res; } status_t GraphicBuffer::unlockAsync(int *fenceFd) { status_t res = getBufferMapper().unlockAsync(handle, fenceFd); return res; } size_t GraphicBuffer::getFlattenedSize() const { return (10 + (handle ? handle->numInts : 0))*sizeof(int); } Loading libs/ui/GraphicBufferMapper.cpp +0 −62 Original line number Diff line number Diff line Loading @@ -20,8 +20,6 @@ #include <stdint.h> #include <errno.h> #include <sync/sync.h> #include <utils/Errors.h> #include <utils/Log.h> #include <utils/Trace.h> Loading Loading @@ -111,65 +109,5 @@ status_t GraphicBufferMapper::unlock(buffer_handle_t handle) return err; } status_t GraphicBufferMapper::lockAsync(buffer_handle_t handle, int usage, const Rect& bounds, void** vaddr, int fenceFd) { ATRACE_CALL(); status_t err; if (mAllocMod->common.module_api_version >= GRALLOC_MODULE_API_VERSION_0_3) { err = mAllocMod->lockAsync(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), vaddr, fenceFd); } else { sync_wait(fenceFd, -1); close(fenceFd); err = mAllocMod->lock(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), vaddr); } ALOGW_IF(err, "lockAsync(...) failed %d (%s)", err, strerror(-err)); return err; } status_t GraphicBufferMapper::lockAsyncYCbCr(buffer_handle_t handle, int usage, const Rect& bounds, android_ycbcr *ycbcr, int fenceFd) { ATRACE_CALL(); status_t err; if (mAllocMod->common.module_api_version >= GRALLOC_MODULE_API_VERSION_0_3) { err = mAllocMod->lockAsync_ycbcr(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), ycbcr, fenceFd); } else { sync_wait(fenceFd, -1); close(fenceFd); err = mAllocMod->lock_ycbcr(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), ycbcr); } ALOGW_IF(err, "lock(...) failed %d (%s)", err, strerror(-err)); return err; } status_t GraphicBufferMapper::unlockAsync(buffer_handle_t handle, int *fenceFd) { ATRACE_CALL(); status_t err; if (mAllocMod->common.module_api_version >= GRALLOC_MODULE_API_VERSION_0_3) { err = mAllocMod->unlockAsync(mAllocMod, handle, fenceFd); } else { *fenceFd = -1; err = mAllocMod->unlock(mAllocMod, handle); } ALOGW_IF(err, "unlockAsync(...) failed %d (%s)", err, strerror(-err)); return err; } // --------------------------------------------------------------------------- }; // namespace android Loading
include/ui/GraphicBuffer.h +0 −5 Original line number Diff line number Diff line Loading @@ -98,11 +98,6 @@ public: status_t lockYCbCr(uint32_t usage, android_ycbcr *ycbcr); status_t lockYCbCr(uint32_t usage, const Rect& rect, android_ycbcr *ycbcr); status_t unlock(); status_t lockAsync(uint32_t usage, void** vaddr, int fenceFd); status_t lockAsync(uint32_t usage, const Rect& rect, void** vaddr, int fenceFd); status_t lockAsyncYCbCr(uint32_t usage, android_ycbcr *ycbcr, int fenceFd); status_t lockAsyncYCbCr(uint32_t usage, const Rect& rect, android_ycbcr *ycbcr, int fenceFd); status_t unlockAsync(int *fenceFd); ANativeWindowBuffer* getNativeBuffer() const; Loading
include/ui/GraphicBufferMapper.h +0 −8 Original line number Diff line number Diff line Loading @@ -50,14 +50,6 @@ public: status_t unlock(buffer_handle_t handle); status_t lockAsync(buffer_handle_t handle, int usage, const Rect& bounds, void** vaddr, int fenceFd); status_t lockAsyncYCbCr(buffer_handle_t handle, int usage, const Rect& bounds, android_ycbcr *ycbcr, int fenceFd); status_t unlockAsync(buffer_handle_t handle, int *fenceFd); // dumps information about the mapping of this handle void dump(buffer_handle_t handle); Loading
libs/gui/Surface.cpp +13 −5 Original line number Diff line number Diff line Loading @@ -764,6 +764,15 @@ status_t Surface::lock( ALOGE_IF(err, "dequeueBuffer failed (%s)", strerror(-err)); if (err == NO_ERROR) { sp<GraphicBuffer> backBuffer(GraphicBuffer::getSelf(out)); sp<Fence> fence(new Fence(fenceFd)); err = fence->waitForever("Surface::lock"); if (err != OK) { ALOGE("Fence::wait failed (%s)", strerror(-err)); cancelBuffer(out, fenceFd); return err; } const Rect bounds(backBuffer->width, backBuffer->height); Region newDirtyRegion; Loading Loading @@ -814,9 +823,9 @@ status_t Surface::lock( } void* vaddr; status_t res = backBuffer->lockAsync( status_t res = backBuffer->lock( GRALLOC_USAGE_SW_READ_OFTEN | GRALLOC_USAGE_SW_WRITE_OFTEN, newDirtyRegion.bounds(), &vaddr, fenceFd); newDirtyRegion.bounds(), &vaddr); ALOGW_IF(res, "failed locking buffer (handle = %p)", backBuffer->handle); Loading @@ -842,11 +851,10 @@ status_t Surface::unlockAndPost() return INVALID_OPERATION; } int fd = -1; status_t err = mLockedBuffer->unlockAsync(&fd); status_t err = mLockedBuffer->unlock(); ALOGE_IF(err, "failed unlocking buffer (%p)", mLockedBuffer->handle); err = queueBuffer(mLockedBuffer.get(), fd); err = queueBuffer(mLockedBuffer.get(), -1); ALOGE_IF(err, "queueBuffer (handle=%p) failed (%s)", mLockedBuffer->handle, strerror(-err)); Loading
libs/ui/GraphicBuffer.cpp +0 −46 Original line number Diff line number Diff line Loading @@ -208,52 +208,6 @@ status_t GraphicBuffer::unlock() return res; } status_t GraphicBuffer::lockAsync(uint32_t usage, void** vaddr, int fenceFd) { const Rect lockBounds(width, height); status_t res = lockAsync(usage, lockBounds, vaddr, fenceFd); return res; } status_t GraphicBuffer::lockAsync(uint32_t usage, const Rect& rect, void** vaddr, int fenceFd) { if (rect.left < 0 || rect.right > this->width || rect.top < 0 || rect.bottom > this->height) { ALOGE("locking pixels (%d,%d,%d,%d) outside of buffer (w=%d, h=%d)", rect.left, rect.top, rect.right, rect.bottom, this->width, this->height); return BAD_VALUE; } status_t res = getBufferMapper().lockAsync(handle, usage, rect, vaddr, fenceFd); return res; } status_t GraphicBuffer::lockAsyncYCbCr(uint32_t usage, android_ycbcr *ycbcr, int fenceFd) { const Rect lockBounds(width, height); status_t res = lockAsyncYCbCr(usage, lockBounds, ycbcr, fenceFd); return res; } status_t GraphicBuffer::lockAsyncYCbCr(uint32_t usage, const Rect& rect, android_ycbcr *ycbcr, int fenceFd) { if (rect.left < 0 || rect.right > this->width || rect.top < 0 || rect.bottom > this->height) { ALOGE("locking pixels (%d,%d,%d,%d) outside of buffer (w=%d, h=%d)", rect.left, rect.top, rect.right, rect.bottom, this->width, this->height); return BAD_VALUE; } status_t res = getBufferMapper().lockAsyncYCbCr(handle, usage, rect, ycbcr, fenceFd); return res; } status_t GraphicBuffer::unlockAsync(int *fenceFd) { status_t res = getBufferMapper().unlockAsync(handle, fenceFd); return res; } size_t GraphicBuffer::getFlattenedSize() const { return (10 + (handle ? handle->numInts : 0))*sizeof(int); } Loading
libs/ui/GraphicBufferMapper.cpp +0 −62 Original line number Diff line number Diff line Loading @@ -20,8 +20,6 @@ #include <stdint.h> #include <errno.h> #include <sync/sync.h> #include <utils/Errors.h> #include <utils/Log.h> #include <utils/Trace.h> Loading Loading @@ -111,65 +109,5 @@ status_t GraphicBufferMapper::unlock(buffer_handle_t handle) return err; } status_t GraphicBufferMapper::lockAsync(buffer_handle_t handle, int usage, const Rect& bounds, void** vaddr, int fenceFd) { ATRACE_CALL(); status_t err; if (mAllocMod->common.module_api_version >= GRALLOC_MODULE_API_VERSION_0_3) { err = mAllocMod->lockAsync(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), vaddr, fenceFd); } else { sync_wait(fenceFd, -1); close(fenceFd); err = mAllocMod->lock(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), vaddr); } ALOGW_IF(err, "lockAsync(...) failed %d (%s)", err, strerror(-err)); return err; } status_t GraphicBufferMapper::lockAsyncYCbCr(buffer_handle_t handle, int usage, const Rect& bounds, android_ycbcr *ycbcr, int fenceFd) { ATRACE_CALL(); status_t err; if (mAllocMod->common.module_api_version >= GRALLOC_MODULE_API_VERSION_0_3) { err = mAllocMod->lockAsync_ycbcr(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), ycbcr, fenceFd); } else { sync_wait(fenceFd, -1); close(fenceFd); err = mAllocMod->lock_ycbcr(mAllocMod, handle, usage, bounds.left, bounds.top, bounds.width(), bounds.height(), ycbcr); } ALOGW_IF(err, "lock(...) failed %d (%s)", err, strerror(-err)); return err; } status_t GraphicBufferMapper::unlockAsync(buffer_handle_t handle, int *fenceFd) { ATRACE_CALL(); status_t err; if (mAllocMod->common.module_api_version >= GRALLOC_MODULE_API_VERSION_0_3) { err = mAllocMod->unlockAsync(mAllocMod, handle, fenceFd); } else { *fenceFd = -1; err = mAllocMod->unlock(mAllocMod, handle); } ALOGW_IF(err, "unlockAsync(...) failed %d (%s)", err, strerror(-err)); return err; } // --------------------------------------------------------------------------- }; // namespace android