From e7eff73fb428d53c5488ef470d9e401949eb1b00 Mon Sep 17 00:00:00 2001 From: Niranjan Artal Date: Mon, 19 Oct 2015 15:16:17 -0700 Subject: [PATCH] drm_hwcomposer: separate C compliant header file. Creating C compliant header file drm_hwc.h. gralloc.tegra uses C compiler and depends only on code in drm_hwc.h. The module doesn't depend on anything present in new hwcomposer.h. This is required to fix the compile error. Change-Id: Ib668334c03168aa4b72ad9e793eff323bd2e88fa --- drm_hwc.h | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ drm_hwcomposer.h | 49 +------------------------------------ 2 files changed, 75 insertions(+), 48 deletions(-) create mode 100644 drm_hwc.h diff --git a/drm_hwc.h b/drm_hwc.h new file mode 100644 index 0000000..fb2de7c --- /dev/null +++ b/drm_hwc.h @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2015 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ANDROID_DRM_HWC_H_ +#define ANDROID_DRM_HWC_H_ + +#include +#include + +#include +#include + +struct hwc_import_context; + +enum { + /* perform(const struct gralloc_module_t *mod, + * int op, + * int drm_fd, + * buffer_handle_t buffer, + * struct hwc_drm_bo *bo); + */ + GRALLOC_MODULE_PERFORM_DRM_IMPORT = 0xffeeff00, + + /* perform(const struct gralloc_module_t *mod, + * int op, + * buffer_handle_t buffer, + * void (*free_callback)(void *), + * void *priv); + */ + GRALLOC_MODULE_PERFORM_SET_IMPORTER_PRIVATE = 0xffeeff01, + + /* perform(const struct gralloc_module_t *mod, + * int op, + * buffer_handle_t buffer, + * void (*free_callback)(void *), + * void **priv); + */ + GRALLOC_MODULE_PERFORM_GET_IMPORTER_PRIVATE = 0xffeeff02, +}; + +typedef struct hwc_drm_bo { + uint32_t width; + uint32_t height; + uint32_t format; /* DRM_FORMAT_* from drm_fourcc.h */ + uint32_t pitches[4]; + uint32_t offsets[4]; + uint32_t gem_handles[4]; + uint32_t fb_id; + int acquire_fence_fd; + void *priv; +} hwc_drm_bo_t; + +int hwc_import_init(struct hwc_import_context **ctx); +int hwc_import_destroy(struct hwc_import_context *ctx); + +int hwc_import_bo_create(int fd, struct hwc_import_context *ctx, + buffer_handle_t buf, struct hwc_drm_bo *bo); +bool hwc_import_bo_release(int fd, struct hwc_import_context *ctx, + struct hwc_drm_bo *bo); + +#endif // ANDROID_DRM_HWC_H_ diff --git a/drm_hwcomposer.h b/drm_hwcomposer.h index 66c2c81..3d32681 100644 --- a/drm_hwcomposer.h +++ b/drm_hwcomposer.h @@ -23,54 +23,7 @@ #include #include #include "seperate_rects.h" - -struct hwc_import_context; - -enum { - /* perform(const struct gralloc_module_t *mod, - * int op, - * int drm_fd, - * buffer_handle_t buffer, - * struct hwc_drm_bo *bo); - */ - GRALLOC_MODULE_PERFORM_DRM_IMPORT = 0xffeeff00, - - /* perform(const struct gralloc_module_t *mod, - * int op, - * buffer_handle_t buffer, - * void (*free_callback)(void *), - * void *priv); - */ - GRALLOC_MODULE_PERFORM_SET_IMPORTER_PRIVATE = 0xffeeff01, - - /* perform(const struct gralloc_module_t *mod, - * int op, - * buffer_handle_t buffer, - * void (*free_callback)(void *), - * void **priv); - */ - GRALLOC_MODULE_PERFORM_GET_IMPORTER_PRIVATE = 0xffeeff02, -}; - -typedef struct hwc_drm_bo { - uint32_t width; - uint32_t height; - uint32_t format; /* DRM_FORMAT_* from drm_fourcc.h */ - uint32_t pitches[4]; - uint32_t offsets[4]; - uint32_t gem_handles[4]; - uint32_t fb_id; - int acquire_fence_fd; - void *priv; -} hwc_drm_bo_t; - -int hwc_import_init(struct hwc_import_context **ctx); -int hwc_import_destroy(struct hwc_import_context *ctx); - -int hwc_import_bo_create(int fd, struct hwc_import_context *ctx, - buffer_handle_t buf, struct hwc_drm_bo *bo); -bool hwc_import_bo_release(int fd, struct hwc_import_context *ctx, - struct hwc_drm_bo *bo); +#include "drm_hwc.h" namespace android { -- 2.11.0