summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Stultz <john.stultz@linaro.org>2018-08-27 10:53:07 -0700
committerJohn Stultz <john.stultz@linaro.org>2018-08-31 08:58:58 -0700
commitee18b0e08dffb14bd007f36b6941eb942288931c (patch)
treea1296794146946c7dd8ec67bb6a79b39b48b94a3
parent60f5e32d4bd25ab8248b6f2f6199854bcf96b55a (diff)
drm_hwcomposer: Add HWC_DRM_BO_MAX_PLANES constant
Add HWC_DRM_BO_MAX_PLANES to avoid open coded num_gem_handles calculations. Change-Id: Iebdaa67518e75f5b7f4445d92b97ca72e625c04b Signed-off-by: John Stultz <john.stultz@linaro.org>
-rw-r--r--drmhwcgralloc.h7
-rw-r--r--platformdrmgeneric.cpp6
2 files changed, 7 insertions, 6 deletions
diff --git a/drmhwcgralloc.h b/drmhwcgralloc.h
index 759746a..daa44dc 100644
--- a/drmhwcgralloc.h
+++ b/drmhwcgralloc.h
@@ -19,14 +19,15 @@
#include <stdint.h>
+#define HWC_DRM_BO_MAX_PLANES 4
typedef struct hwc_drm_bo {
uint32_t width;
uint32_t height;
uint32_t format; /* DRM_FORMAT_* from drm_fourcc.h */
uint32_t usage;
- uint32_t pitches[4];
- uint32_t offsets[4];
- uint32_t gem_handles[4];
+ uint32_t pitches[HWC_DRM_BO_MAX_PLANES];
+ uint32_t offsets[HWC_DRM_BO_MAX_PLANES];
+ uint32_t gem_handles[HWC_DRM_BO_MAX_PLANES];
uint32_t fb_id;
int acquire_fence_fd;
void *priv;
diff --git a/platformdrmgeneric.cpp b/platformdrmgeneric.cpp
index b0cb130..85b2a7f 100644
--- a/platformdrmgeneric.cpp
+++ b/platformdrmgeneric.cpp
@@ -121,8 +121,8 @@ int DrmGenericImporter::ReleaseBuffer(hwc_drm_bo_t *bo) {
struct drm_gem_close gem_close;
memset(&gem_close, 0, sizeof(gem_close));
- int num_gem_handles = sizeof(bo->gem_handles) / sizeof(bo->gem_handles[0]);
- for (int i = 0; i < num_gem_handles; i++) {
+
+ for (int i = 0; i < HWC_DRM_BO_MAX_PLANES; i++) {
if (!bo->gem_handles[i])
continue;
@@ -131,7 +131,7 @@ int DrmGenericImporter::ReleaseBuffer(hwc_drm_bo_t *bo) {
if (ret) {
ALOGE("Failed to close gem handle %d %d", i, ret);
} else {
- for (int j = i + 1; j < num_gem_handles; j++)
+ for (int j = i + 1; j < HWC_DRM_BO_MAX_PLANES; j++)
if (bo->gem_handles[j] == bo->gem_handles[i])
bo->gem_handles[j] = 0;
bo->gem_handles[i] = 0;