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