1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/**************************************************************************** 2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** This header was automatically generated from a Linux kernel header 5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** of the same name, to make information necessary for userspace to 6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** call into the kernel available to libc. It contains only constants, 7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** structures, and macros generated from the original header, and thus, 8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** contains no copyrightable information. 9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** To edit the content of this header, modify the corresponding 11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** source file (e.g. under external/kernel-headers/original/) then 12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** run bionic/libc/kernel/tools/update_all.py 13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** Any manual change here will be lost the next time this script will 15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** be run. You've been warned! 16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/ 19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef __OMAP_DRM_H__ 20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define __OMAP_DRM_H__ 21106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#include "drm.h" 22106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#ifdef __cplusplus 23106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#endif 24106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define OMAP_PARAM_CHIPSET_ID 1 25655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_omap_param { 26525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u64 param; 27525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u64 value; 28655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 29655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_SCANOUT 0x00000001 30655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_CACHE_MASK 0x00000006 31655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_TILED_MASK 0x00000f00 32655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_CACHED 0x00000000 33655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_WC 0x00000002 34655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_UNCACHED 0x00000004 35655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_TILED_8 0x00000100 36655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_TILED_16 0x00000200 37655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_TILED_32 0x00000300 38655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define OMAP_BO_TILED (OMAP_BO_TILED_8 | OMAP_BO_TILED_16 | OMAP_BO_TILED_32) 39655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengunion omap_gem_size { 40525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 bytes; 41d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct { 42525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u16 width; 43525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u16 height; 44d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao } tiled; 45655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 46655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_omap_gem_new { 47d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao union omap_gem_size size; 48525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 flags; 49525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 handle; 50525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 __pad; 51655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 52655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum omap_gem_op { 53d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao OMAP_GEM_READ = 0x01, 54d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao OMAP_GEM_WRITE = 0x02, 55655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 56655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_omap_gem_cpu_prep { 57525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 handle; 58525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 op; 59655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 60655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_omap_gem_cpu_fini { 61525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 handle; 62525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 op; 63525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 nregions; 64525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 __pad; 65655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 66655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_omap_gem_info { 67525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 handle; 68525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 pad; 69525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u64 offset; 70525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 size; 71525ce914edf136d2bd02ac8c404d56c52e737f4dChristopher Ferris __u32 __pad; 72655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 73655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_GET_PARAM 0x00 74655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_SET_PARAM 0x01 75655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_GEM_NEW 0x03 76655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_GEM_CPU_PREP 0x04 77655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_GEM_CPU_FINI 0x05 78655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_GEM_INFO 0x06 79655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_OMAP_NUM_IOCTLS 0x07 80655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_OMAP_GET_PARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_OMAP_GET_PARAM, struct drm_omap_param) 81d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_OMAP_SET_PARAM DRM_IOW(DRM_COMMAND_BASE + DRM_OMAP_SET_PARAM, struct drm_omap_param) 82655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_OMAP_GEM_NEW DRM_IOWR(DRM_COMMAND_BASE + DRM_OMAP_GEM_NEW, struct drm_omap_gem_new) 83d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_OMAP_GEM_CPU_PREP DRM_IOW(DRM_COMMAND_BASE + DRM_OMAP_GEM_CPU_PREP, struct drm_omap_gem_cpu_prep) 84d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_OMAP_GEM_CPU_FINI DRM_IOW(DRM_COMMAND_BASE + DRM_OMAP_GEM_CPU_FINI, struct drm_omap_gem_cpu_fini) 85655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_OMAP_GEM_INFO DRM_IOWR(DRM_COMMAND_BASE + DRM_OMAP_GEM_INFO, struct drm_omap_gem_info) 86106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#ifdef __cplusplus 87106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#endif 88655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif 89