summaryrefslogtreecommitdiff
path: root/libs/gui/Surface.cpp
diff options
context:
space:
mode:
author Mathias Agopian <mathias@google.com> 2017-05-15 18:00:34 -0700
committer Mathias Agopian <mathias@google.com> 2017-05-19 14:39:55 -0700
commit175d98757d7d9003d4f64756cf4c2b366ba77e97 (patch)
tree525b9df51a5ce2d0eb7d2bd1a2ed6730b283369b /libs/gui/Surface.cpp
parent5c865e5d25501f4edd2af960efbd28c3822b22db (diff)
use 64-bits usage bits almost everywhere
Test: manual, build Bug: 33350696 Change-Id: Ida33c2a902155044651158467bb99d664e958c41
Diffstat (limited to 'libs/gui/Surface.cpp')
-rw-r--r--libs/gui/Surface.cpp25
1 files changed, 17 insertions, 8 deletions
diff --git a/libs/gui/Surface.cpp b/libs/gui/Surface.cpp
index ff0a5d4324..04e51a41e6 100644
--- a/libs/gui/Surface.cpp
+++ b/libs/gui/Surface.cpp
@@ -20,6 +20,8 @@
#include <gui/Surface.h>
+#include <inttypes.h>
+
#include <android/native_window.h>
#include <utils/Log.h>
@@ -471,7 +473,7 @@ int Surface::dequeueBuffer(android_native_buffer_t** buffer, int* fenceFd) {
uint32_t reqWidth;
uint32_t reqHeight;
PixelFormat reqFormat;
- uint32_t reqUsage;
+ uint64_t reqUsage;
bool enableFrameTimestamps;
{
@@ -511,8 +513,8 @@ int Surface::dequeueBuffer(android_native_buffer_t** buffer, int* fenceFd) {
if (result < 0) {
ALOGV("dequeueBuffer: IGraphicBufferProducer::dequeueBuffer"
- "(%d, %d, %d, %d) failed: %d", reqWidth, reqHeight, reqFormat,
- reqUsage, result);
+ "(%d, %d, %d, %#" PRIx64 ") failed: %d",
+ reqWidth, reqHeight, reqFormat, reqUsage, result);
return result;
}
@@ -959,6 +961,9 @@ int Surface::perform(int operation, va_list args)
case NATIVE_WINDOW_GET_HDR_SUPPORT:
res = dispatchGetHdrSupport(args);
break;
+ case NATIVE_WINDOW_SET_USAGE64:
+ res = dispatchSetUsage64(args);
+ break;
default:
res = NAME_NOT_FOUND;
break;
@@ -977,8 +982,13 @@ int Surface::dispatchDisconnect(va_list args) {
}
int Surface::dispatchSetUsage(va_list args) {
- int usage = va_arg(args, int);
- return setUsage(static_cast<uint32_t>(usage));
+ uint64_t usage = va_arg(args, uint32_t);
+ return setUsage(usage);
+}
+
+int Surface::dispatchSetUsage64(va_list args) {
+ uint64_t usage = va_arg(args, uint64_t);
+ return setUsage(usage);
}
int Surface::dispatchSetCrop(va_list args) {
@@ -1256,8 +1266,7 @@ int Surface::attachBuffer(ANativeWindowBuffer* buffer)
uint32_t priorGeneration = graphicBuffer->mGenerationNumber;
graphicBuffer->mGenerationNumber = mGenerationNumber;
int32_t attachedSlot = -1;
- status_t result = mGraphicBufferProducer->attachBuffer(
- &attachedSlot, graphicBuffer);
+ status_t result = mGraphicBufferProducer->attachBuffer(&attachedSlot, graphicBuffer);
if (result != NO_ERROR) {
ALOGE("attachBuffer: IGraphicBufferProducer call failed (%d)", result);
graphicBuffer->mGenerationNumber = priorGeneration;
@@ -1271,7 +1280,7 @@ int Surface::attachBuffer(ANativeWindowBuffer* buffer)
return NO_ERROR;
}
-int Surface::setUsage(uint32_t reqUsage)
+int Surface::setUsage(uint64_t reqUsage)
{
ALOGV("Surface::setUsage");
Mutex::Autolock lock(mMutex);