• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
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_CAM_ISPIF_H
20 #define MSM_CAM_ISPIF_H
21 #define CSID_VERSION_V20 0x02000011
22 #define CSID_VERSION_V22 0x02001000
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define CSID_VERSION_V30 0x30000000
25 #define CSID_VERSION_V3 0x30000000
26 enum msm_ispif_vfe_intf {
27  VFE0,
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29  VFE1,
30  VFE_MAX
31 };
32 #define VFE0_MASK (1 << VFE0)
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 #define VFE1_MASK (1 << VFE1)
35 enum msm_ispif_intftype {
36  PIX0,
37  RDI0,
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39  PIX1,
40  RDI1,
41  RDI2,
42  INTF_MAX
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 };
45 #define MAX_PARAM_ENTRIES (INTF_MAX * 2)
46 #define PIX0_MASK (1 << PIX0)
47 #define PIX1_MASK (1 << PIX1)
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 #define RDI0_MASK (1 << RDI0)
50 #define RDI1_MASK (1 << RDI1)
51 #define RDI2_MASK (1 << RDI2)
52 enum msm_ispif_vc {
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54  VC0,
55  VC1,
56  VC2,
57  VC3,
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59  VC_MAX
60 };
61 enum msm_ispif_cid {
62  CID0,
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64  CID1,
65  CID2,
66  CID3,
67  CID4,
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69  CID5,
70  CID6,
71  CID7,
72  CID8,
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74  CID9,
75  CID10,
76  CID11,
77  CID12,
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79  CID13,
80  CID14,
81  CID15,
82  CID_MAX
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 };
85 enum msm_ispif_csid {
86  CSID0,
87  CSID1,
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89  CSID2,
90  CSID3,
91  CSID_MAX
92 };
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 struct msm_ispif_params_entry {
95  enum msm_ispif_vfe_intf vfe_intf;
96  enum msm_ispif_intftype intftype;
97  int num_cids;
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99  enum msm_ispif_cid cids[3];
100  enum msm_ispif_csid csid;
101  int crop_enable;
102  uint16_t crop_start_pixel;
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104  uint16_t crop_end_pixel;
105 };
106 struct msm_ispif_param_data {
107  uint32_t num;
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109  struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
110 };
111 struct msm_isp_info {
112  uint32_t max_resolution;
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114  uint32_t id;
115  uint32_t ver;
116 };
117 struct msm_ispif_vfe_info {
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119  int num_vfe;
120  struct msm_isp_info info[VFE_MAX];
121 };
122 enum ispif_cfg_type_t {
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124  ISPIF_CLK_ENABLE,
125  ISPIF_CLK_DISABLE,
126  ISPIF_INIT,
127  ISPIF_CFG,
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129  ISPIF_START_FRAME_BOUNDARY,
130  ISPIF_STOP_FRAME_BOUNDARY,
131  ISPIF_STOP_IMMEDIATELY,
132  ISPIF_RELEASE,
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134  ISPIF_ENABLE_REG_DUMP,
135  ISPIF_SET_VFE_INFO,
136 };
137 struct ispif_cfg_data {
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139  enum ispif_cfg_type_t cfg_type;
140  union {
141  int reg_dump;
142  uint32_t csid_version;
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144  struct msm_ispif_vfe_info vfe_info;
145  struct msm_ispif_param_data params;
146  };
147 };
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 #define VIDIOC_MSM_ISPIF_CFG   _IOWR('V', BASE_VIDIOC_PRIVATE, struct ispif_cfg_data)
150 #endif
151