blob: 2e57191b00cd2bbaa838fcee6b9327aa69eb1ebc [file] [log] [blame]
Naseer Ahmed240b3342012-06-18 14:54:42 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef __MSM_ROTATOR_H__
20#define __MSM_ROTATOR_H__
21#include <linux/types.h>
22#include <linux/msm_mdp.h>
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24#define MSM_ROTATOR_IOCTL_MAGIC 'R'
25#define MSM_ROTATOR_IOCTL_START _IOWR(MSM_ROTATOR_IOCTL_MAGIC, 1, struct msm_rotator_img_info)
26#define MSM_ROTATOR_IOCTL_ROTATE _IOW(MSM_ROTATOR_IOCTL_MAGIC, 2, struct msm_rotator_data_info)
27#define MSM_ROTATOR_IOCTL_FINISH _IOW(MSM_ROTATOR_IOCTL_MAGIC, 3, int)
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29#define ROTATOR_VERSION_01 0xA5B4C301
30enum rotator_clk_type {
31 ROTATOR_CORE_CLK,
32 ROTATOR_PCLK,
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 ROTATOR_IMEM_CLK
35};
36struct msm_rotator_img_info {
37 unsigned int session_id;
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 struct msmfb_img src;
40 struct msmfb_img dst;
41 struct mdp_rect src_rect;
42 unsigned int dst_x;
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 unsigned int dst_y;
45 unsigned char rotations;
46 int enable;
47 unsigned int downscale_ratio;
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Naseer Ahmed27306742012-07-18 13:47:28 -070049 unsigned int secure;
Naseer Ahmed240b3342012-06-18 14:54:42 -070050};
51struct msm_rotator_data_info {
52 int session_id;
Naseer Ahmed240b3342012-06-18 14:54:42 -070053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Naseer Ahmed27306742012-07-18 13:47:28 -070054 struct msmfb_data src;
Naseer Ahmed240b3342012-06-18 14:54:42 -070055 struct msmfb_data dst;
56 unsigned int version_key;
57 struct msmfb_data src_chroma;
Naseer Ahmed240b3342012-06-18 14:54:42 -070058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Naseer Ahmed27306742012-07-18 13:47:28 -070059 struct msmfb_data dst_chroma;
Naseer Ahmed240b3342012-06-18 14:54:42 -070060};
61struct msm_rot_clocks {
62 const char *clk_name;
Naseer Ahmed240b3342012-06-18 14:54:42 -070063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Naseer Ahmed27306742012-07-18 13:47:28 -070064 enum rotator_clk_type clk_type;
Naseer Ahmed240b3342012-06-18 14:54:42 -070065 unsigned int clk_rate;
66};
67struct msm_rotator_platform_data {
Naseer Ahmed240b3342012-06-18 14:54:42 -070068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Naseer Ahmed27306742012-07-18 13:47:28 -070069 unsigned int number_of_clocks;
Naseer Ahmed240b3342012-06-18 14:54:42 -070070 unsigned int hardware_version_number;
71 struct msm_rot_clocks *rotator_clks;
Naseer Ahmed27306742012-07-18 13:47:28 -070072 char rot_iommu_split_domain;
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Naseer Ahmed240b3342012-06-18 14:54:42 -070074};
75#endif
Naseer Ahmed27306742012-07-18 13:47:28 -070076