summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOmprakash Dhyade c_odhyad@quicinc.com <c_odhyad@quicinc.com>2009-12-03 12:02:35 -0800
committerOmprakash Dhyade c_odhyad@quicinc.com <c_odhyad@quicinc.com>2009-12-03 12:02:35 -0800
commit07881fa36631fd5bf28a217e04259dbfaa23a141 (patch)
treeb9a8c3d9d1a84b9eae4bb2685891c1720b446f9b
parent63490db064c5d7b4dfd81820ac0803603add0f12 (diff)
downloadbionic-07881fa36631fd5bf28a217e04259dbfaa23a141.zip
bionic-07881fa36631fd5bf28a217e04259dbfaa23a141.tar.gz
bionic-07881fa36631fd5bf28a217e04259dbfaa23a141.tar.bz2
bionic: Add msm_rotator.h and Update msm_mdp.h from kernel/include/linux
Kernel commit id: e5ad7f1a0a4c93eb48c970c86d76517eb73d95e1 msm_rotator is image rotator driver for MSM 7x30. Add msm_rotator.h from kernel/include/linux to bionic. Update msm_mdp.h to match kernel include file. Kernel commit id: d8b302dd323abf221f5fd5355c7d8d108b169497 add 3 overlay ioctl functions, set, play and unset to allow user applications, such as surface flinger, to utilize MDP4 overlay blending feature among video and rgb pipes.
-rw-r--r--libc/kernel/common/linux/msm_mdp.h10
-rw-r--r--libc/kernel/common/linux/msm_rotator.h40
2 files changed, 43 insertions, 7 deletions
diff --git a/libc/kernel/common/linux/msm_mdp.h b/libc/kernel/common/linux/msm_mdp.h
index 28dfb62..260df6d 100644
--- a/libc/kernel/common/linux/msm_mdp.h
+++ b/libc/kernel/common/linux/msm_mdp.h
@@ -113,19 +113,14 @@ struct mdp_blit_req_list {
struct mdp_blit_req req[];
};
-enum {
- MDP_ZORDER_BASELAYER,
- MDP_ZORDER_STAGE0,
- MDP_ZORDER_STAGE1,
- MDP_ZORDER_STAGE2
-};
-
struct msmfb_data {
uint32_t offset;
int memory_id;
int id;
};
+#define MSMFB_NEW_REQUEST -1
+
struct msmfb_overlay_data {
uint32_t id;
struct msmfb_data data;
@@ -142,6 +137,7 @@ struct mdp_overlay {
struct mdp_rect src_rect;
struct mdp_rect dst_rect;
uint32_t z_order;
+ uint32_t is_fg;
uint32_t alpha;
uint32_t transp_mask;
uint32_t flags;
diff --git a/libc/kernel/common/linux/msm_rotator.h b/libc/kernel/common/linux/msm_rotator.h
new file mode 100644
index 0000000..cddfd91
--- /dev/null
+++ b/libc/kernel/common/linux/msm_rotator.h
@@ -0,0 +1,40 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __MSM_ROTATOR_H__
+
+#include <linux/types.h>
+#include <linux/msm_mdp.h>
+
+#define MSM_ROTATOR_IOCTL_MAGIC 'R'
+
+#define MSM_ROTATOR_IOCTL_START _IOWR(MSM_ROTATOR_IOCTL_MAGIC, 1, struct msm_rotator_img_info)
+#define MSM_ROTATOR_IOCTL_ROTATE _IOW(MSM_ROTATOR_IOCTL_MAGIC, 2, struct msm_rotator_data_info)
+#define MSM_ROTATOR_IOCTL_FINISH _IOW(MSM_ROTATOR_IOCTL_MAGIC, 3, int)
+
+struct msm_rotator_img_info {
+ int session_id;
+ struct msmfb_img src;
+ struct msmfb_img dst;
+ struct mdp_rect src_rect;
+ unsigned int dst_x;
+ unsigned int dst_y;
+ unsigned char rotations;
+};
+
+struct msm_rotator_data_info {
+ int session_id;
+ struct msmfb_data src;
+ struct msmfb_data dst;
+};
+
+#endif
+