msm: vidc: Add support for video decoder extradata
Add support for timeinfo and aspect ratio extradata
by setting the corresponding properties to Venus FW.
Change-Id: Ie33a451c8088d4bfe169c770fa054a73cdfcf78f
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
[smuckle@codeaurora.org: backported from msm-3.7]
Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 9d38db32..2972dc0 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -696,6 +696,9 @@
#define V4L2_BUF_FLAG_NO_CACHE_INVALIDATE 0x0800
#define V4L2_BUF_FLAG_NO_CACHE_CLEAN 0x1000
#define V4L2_BUF_FLAG_EOS 0x2000
+#define V4L2_QCOM_BUF_FLAG_CODECCONFIG 0x4000
+#define V4L2_QCOM_BUF_FLAG_EOSEQ 0x8000
+#define V4L2_QCOM_BUF_TIMESTAMP_INVALID 0x10000
/*
* O V E R L A Y P R E V I E W
@@ -2140,9 +2143,6 @@
};
};
-#define V4L2_QCOM_BUF_FLAG_CODECCONFIG 0x4000
-#define V4L2_QCOM_BUF_FLAG_EOSEQ 0x8000
-
/* Decoder commands */
#define V4L2_DEC_CMD_START (0)
#define V4L2_DEC_CMD_STOP (1)
diff --git a/include/media/msm_vidc.h b/include/media/msm_vidc.h
index 4261d34..fae1efa 100644
--- a/include/media/msm_vidc.h
+++ b/include/media/msm_vidc.h
@@ -67,8 +67,8 @@
unsigned int frame_rate;
};
struct msm_vidc_ts_payload {
- unsigned int timestamp_hi;
unsigned int timestamp_lo;
+ unsigned int timestamp_hi;
};
struct msm_vidc_concealmb_payload {
unsigned int num_mbs;
@@ -76,6 +76,15 @@
struct msm_vidc_recoverysei_payload {
unsigned int flags;
};
+
+struct msm_vidc_aspect_ratio_payload {
+ unsigned int size;
+ unsigned int version;
+ unsigned int port_index;
+ unsigned int aspect_width;
+ unsigned int aspect_height;
+};
+
struct msm_vidc_panscan_window {
unsigned int panscan_height_offset;
unsigned int panscan_width_offset;
@@ -100,6 +109,7 @@
EXTRADATA_MULTISLICE_INFO = 0x7F100000,
EXTRADATA_NUM_CONCEALED_MB = 0x7F100001,
EXTRADATA_INDEX = 0x7F100002,
+ EXTRADATA_ASPECT_RATIO = 0x7F100003,
EXTRADATA_METADATA_FILLER = 0x7FE00002,
};
enum msm_vidc_interlace_type {