summaryrefslogtreecommitdiffstats
path: root/libc/kernel/common/linux/msm_q6vdec.h
diff options
context:
space:
mode:
authorAjay Dudani <adudani@codeaurora.org>2010-12-17 22:57:46 -0800
committerAjay Dudani <adudani@codeaurora.org>2010-12-17 23:01:10 -0800
commitdeaf5346fb9d0c04c3604bb894eee0dfc7283f1e (patch)
tree8755a28c01f7efb8416b2a8ea9df5bab7248008c /libc/kernel/common/linux/msm_q6vdec.h
parent7bbd4580afe0347892a0680b5917ec7df38c003a (diff)
downloadbionic-deaf5346fb9d0c04c3604bb894eee0dfc7283f1e.zip
bionic-deaf5346fb9d0c04c3604bb894eee0dfc7283f1e.tar.gz
bionic-deaf5346fb9d0c04c3604bb894eee0dfc7283f1e.tar.bz2
Update kernel headers to CodeAuroraForum caf/android-msm-2.6.35
Change-Id: I490e62adbe3b84ff2280f1cd88c6a3e8fed73109
Diffstat (limited to 'libc/kernel/common/linux/msm_q6vdec.h')
-rw-r--r--libc/kernel/common/linux/msm_q6vdec.h75
1 files changed, 73 insertions, 2 deletions
diff --git a/libc/kernel/common/linux/msm_q6vdec.h b/libc/kernel/common/linux/msm_q6vdec.h
index 0182bfb..b7b6ca4 100644
--- a/libc/kernel/common/linux/msm_q6vdec.h
+++ b/libc/kernel/common/linux/msm_q6vdec.h
@@ -26,6 +26,10 @@
#define VDEC_IOCTL_CLOSE _IO(VDEC_IOCTL_MAGIC, 8)
#define VDEC_IOCTL_FREEBUFFERS _IOW(VDEC_IOCTL_MAGIC, 9, struct vdec_buf_info)
#define VDEC_IOCTL_GETDECATTRIBUTES _IOR(VDEC_IOCTL_MAGIC, 10, struct vdec_dec_attributes)
+#define VDEC_IOCTL_GETVERSION _IOR(VDEC_IOCTL_MAGIC, 11, struct vdec_version)
+#define VDEC_IOCTL_SETPROPERTY _IOW(VDEC_IOCTL_MAGIC, 12, struct vdec_property_info)
+#define VDEC_IOCTL_GETPROPERTY _IOR(VDEC_IOCTL_MAGIC, 13, struct vdec_property_info)
+#define VDEC_IOCTL_PERFORMANCE_CHANGE_REQ _IOW(VDEC_IOCTL_MAGIC, 14, unsigned int)
enum {
VDEC_FRAME_DECODE_OK,
@@ -58,6 +62,32 @@ enum {
VDEC_QUEUE_BADSTATE,
};
+enum {
+ VDEC_COLOR_FORMAT_NV21 = 0x01,
+ VDEC_COLOR_FORMAT_NV21_YAMOTO = 0x02
+ };
+
+enum vdec_property_id {
+ VDEC_FOURCC,
+ VDEC_PROFILE,
+ VDEC_LEVEL,
+ VDEC_DIMENSIONS,
+ VDEC_CWIN,
+ VDEC_INPUT_BUF_REQ,
+ VDEC_OUTPUT_BUF_REQ,
+ VDEC_LUMA_CHROMA_STRIDE,
+ VDEC_NUM_DAL_PORTS,
+ VDEC_PRIORITY,
+ VDEC_FRAME_ALIGNMENT
+};
+
+enum {
+ PERF_REQUEST_SET_MIN = 0,
+ PERF_REQUEST_LOWER,
+ PERF_REQUEST_RAISE,
+ PERF_REQUEST_SET_MAX
+};
+
struct vdec_input_buf_info {
u32 offset;
u32 data;
@@ -99,7 +129,7 @@ struct vdec_config {
u32 h264_nal_len_size;
u32 postproc_flag;
u32 fruc_enable;
- u32 reserved;
+ u32 color_format;
};
struct vdec_vc1_panscan_regions {
@@ -208,5 +238,46 @@ struct vdec_dec_attributes {
struct vdec_buf_desc dec_req2;
};
-#endif
+struct vdec_version {
+ u32 major;
+ u32 minor;
+};
+
+struct dal_vdec_rectangle {
+ u32 width;
+ u32 height;
+};
+struct stride_type {
+ u32 luma;
+ u32 chroma;
+};
+
+struct frame_alignment_type {
+ u32 luma_width;
+ u32 luma_height;
+ u32 chroma_width;
+ u32 chroma_height;
+ u32 chroma_offset;
+};
+
+union vdec_property {
+ u32 fourcc;
+ u32 profile;
+ u32 level;
+ struct dal_vdec_rectangle dim;
+ struct vdec_cropping_window cw;
+ struct vdec_buf_desc input_req;
+ struct vdec_buf_desc output_req;
+ struct stride_type stride;
+ u32 num_dal_ports;
+ u32 priority;
+ struct frame_alignment_type frame_alignment;
+ u32 def_type;
+};
+
+struct vdec_property_info {
+ enum vdec_property_id id;
+ union vdec_property property;
+};
+#endif /* _MSM_VDEC_H_ */