kmf_ioctl.h 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851
  1. #ifndef _KMF_IOCTL_H_
  2. #define _KMF_IOCTL_H_
  3. #include <linux/ioctl.h> /* needed for the _IOW etc stuff used later */
  4. #include "plf_timing_id.h"
  5. #include "drv_types.h"
  6. #include "drv_adc_external.h"
  7. #include "drv_vip_external.h"
  8. #include "drv_spi_flash_module_index.h"
  9. #define TVFE_NOT_STANDARD_TIMING_INDEX 0xfffe
  10. #define TVFE_NO_AVAILABLE_TIMING_INDEX 0xffff
  11. #define TVFE_AUDIO_MASTER_VOLUME_VALUE_MIN (-672) //-84 dB
  12. #define TVFE_AUDIO_MASTER_VOLUME_VALUE_MAX (192) //+24 dB
  13. #define DECIMAL_BASE 10//because of float issue
  14. #define DBG_MUTE_COMMAND 0x119 // a magic number to be compared with monflg
  15. #define AVC_MHEG5_VIDEO_WIDTH 720
  16. #define AVC_MHEG5_VIDEO_HEIGHT 576
  17. //extern INT32 kmfdev;
  18. enum {
  19. KMF_IOC_INDEX_VIDEOPAUSE,
  20. KMF_IOC_INDEX_INPUTSOURCE,
  21. KMF_IOC_INDEX_CVD2_ADJUST,
  22. KMF_IOC_INDEX_VIP_INIT,
  23. KMF_IOC_INDEX_VIP_ADJUST,
  24. KMF_IOC_INDEX_VIP_FLIPQ_INIT,
  25. KMF_IOC_INDEX_VIP_FLIPQ_DISPLAY,
  26. KMF_IOC_INDEX_VIP_FLIPQ_UNINIT,
  27. KMF_IOC_INDEX_VIP_GETFRAME_ADDR,
  28. KMF_IOC_INDEX_VIP_SETFRAME,
  29. KMF_IOC_INDEX_PQ_ADJUST,
  30. KMF_IOC_INDEX_ColorLUT7Axis_ADJUST,
  31. KMF_IOC_INDEX_ColorLUT7RANGE_ADJUST,
  32. KMF_IOC_INDEX_ADC_ADJUST,
  33. KMF_IOC_INDEX_ADC_GETAUTOCOLOR,
  34. KMF_IOC_INDEX_ADC_GETPHASE,
  35. KMF_IOC_INDEX_LCDBACKLIGHT,
  36. #ifdef CONFIG_EXTRA_PWM_CONTROL_FOR_FAN
  37. KMF_IOC_INDEX_EXTRAPWM,
  38. #endif
  39. KMF_IOC_INDEX_ACPOWERONFLAG,
  40. KMF_IOC_INDEX_PANLBACKLIGHT,
  41. KMF_IOC_INDEX_PANLBACKLIGHTPOLARITY,
  42. KMF_IOC_INDEX_PANLDUTYPWM,
  43. KMF_IOC_INDEX_PANLCHANNELSETTING,
  44. KMF_IOC_INDEX_SHUTDOWN,
  45. KMF_IOC_INDEX_VIP_GETMAININFO,
  46. KMF_IOC_INDEX_SETBACKLIGHT,
  47. KMF_IOC_INDEX_SETPANEL,
  48. KMF_IOC_INDEX_SETLED,
  49. KMF_IOC_INDEX_SETPOWERSAVING,
  50. KMF_IOC_INDEX_XONXOFF,
  51. KMF_IOC_INDEX_SETATVCOLORSYSTEM,
  52. KMF_IOC_INDEX_GETATVCOLORSYSTEM,
  53. KMF_IOC_INDEX_NOTICECVD2CHANNELSCAN,
  54. KMF_IOC_INDEX_NOTICECVD2LEAVESCART,
  55. KMF_IOC_INDEX_AUTOPOWERON,
  56. KMF_IOC_INDEX_CECAUTOPOWERON,
  57. KMF_IOC_INDEX_CECCONTROLON,
  58. KMF_IOC_INDEX_SAVEGAMMATABLE,
  59. KMF_IOC_INDEX_SETVIPGAMMATABLE,
  60. KMF_IOC_INDEX_SETBOOTALARM,
  61. KMF_IOC_INDEX_STANDBYLEDPWMCONTRL,
  62. KMF_IOC_INDEX_PWMCONTRL,
  63. KMF_IOC_INDEX_DDCWP,
  64. KMF_IOC_INDEX_EDIDCHECKSUM,
  65. KMF_IOC_INDEX_CHECKSUM,
  66. KMF_IOC_INDEX_HDCPKEYCHECKSUM,
  67. #ifdef CONFIG_SUPPORT_STORE_HDCP2X_TO_FLASH
  68. KMF_IOC_INDEX_SPIHDCP2XKeyUpdate,
  69. #endif
  70. KMF_IOC_INDEX_SETSCARTINPUTTYPE,
  71. KMF_IOC_INDEX_NOTICESETSCARTINPUTTYPE,
  72. KMF_IOC_INDEX_READEDID,
  73. KMF_IOC_INDEX_WRITEEDID,
  74. KMF_IOC_INDEX_EMIUTIL,
  75. KMF_IOC_INDEX_READKSV_HDCP,
  76. KMF_IOC_INDEX_PRINTOFILEENABLE,
  77. KMF_IOC_INDEX_SPIHDCPKeyUpdate,
  78. KMF_IOC_INDEX_VIP_GetDynamicContrastInfo,
  79. KMF_IOC_INDEX_VIP_SetDynamicContrastInfo,
  80. KMF_IOC_INDEX_SETPQCMDSET,
  81. KMF_IOC_INDEX_UARTATX,
  82. KMF_IOC_INDEX_UARTATX_NOTSAVESHAREDADA,
  83. KMF_IOC_INDEX_SETMAXBACKLIGHTLEV,
  84. KMF_IOC_INDEX_SPI_OADUPDATE, //oad used
  85. KMF_IOC_INDEX_DISABLEKEYPAD,
  86. KMF_IOC_INDEX_GET_DTVAUDIO_DOLBYDIGITALTYPE,
  87. KMF_IOC_INDEX_SET_OVERSCANBYPIXEL,
  88. KMF_IOC_INDEX_GET_OVERSCANBYPIXEL,
  89. KMF_IOC_INDEX_GET_YAvg,
  90. KMF_IOC_INDEX_SET_EXTS_INPUTWIN,
  91. KMF_IOC_INDEX_GET_EXTS_INPUTWIN,
  92. KMF_IOC_INDEX_SET_HDMI_SCREEN_MODE,
  93. #ifdef CONFIG_ENABLE_MIR
  94. KMF_IOC_INDEX_SET_MIR_FORMAT,
  95. #endif
  96. KMF_IOC_INDEX_NOTICE_CVD2_CHANGE_CHANNEL,
  97. KMF_IOC_INDEX_GET_HDMIMODE,
  98. KMF_IOC_INDEX_SET_UMFPID,
  99. KMF_IOC_INDEX_FRONTENDCTRL,
  100. KMF_IOC_INDEX_DetectAudioM,
  101. KMF_IOC_INDEX_FindInterfaceFormat,
  102. KMF_IOC_INDEX_GetInputStatus,
  103. KMF_IOC_INDEX_ResetTunerFSM,
  104. KMF_IOC_INDEX_SetAutoDetectMask,
  105. KMF_IOC_INDEX_SET_CVBSOutMode,
  106. KMF_IOC_INDEX_SET_SCARTOUTMODE,
  107. KMF_IOC_INDEX_GET_SCARTOUTMODE,
  108. KMF_IOC_INDEX_EnterScanMode,
  109. KMF_IOC_INDEX_NVMRW,
  110. KMF_IOC_INDEX_SPICmdRW,
  111. KMF_IOC_INDEX_FLASHCTRL,
  112. KMF_IOC_INDEX_KMF_UTIL,
  113. KMF_IOC_INDEX_KMF_FMIIC,
  114. KMF_IOC_INDEX_VIP_GETADCHTOTAL,
  115. KMF_IOC_INDEX_GET_SCARTPIN_STATUS,
  116. KMF_IOC_INDEX_PQ_GETREGRANGE,
  117. KMF_IOC_INDEX_VIP_MHEG_EN,
  118. KMF_IOC_INDEX_VIP_SET_POSI,
  119. KMF_IOC_INDEX_VIP_SET_SIZE,
  120. KMF_IOC_INDEX_VIP_SET_POSI_SIZE,
  121. KMF_IOC_INDEX_VIP_SET_UPDATE,
  122. KMF_IOC_INDEX_VIP_SET_SCENE_AR,
  123. KMF_IOC_INDEX_VIP_SET_WIDE_ALIGNMENT,
  124. KMF_IOC_INDEX_VIP_GET_DISP_ARMODE,
  125. KMF_IOC_INDEX_VIP_GET_DECFC,
  126. KMF_IOC_INDEX_SET_CVD2_FACTORY_VALUE,
  127. KMF_IOC_INDEX_VIP_SET_MUTESTATUS,
  128. KMF_IOC_INDEX_VIP_GET_MUTESTATUS,
  129. KMF_IOC_INDEX_VIP_SET_TVFEMUTECOLORBYAPP,
  130. KMF_IOC_INDEX_VIP_ISSUPPORT3D,
  131. KMF_IOC_INDEX_VIP_GET_PANEL_RESOLUTION,
  132. KMF_IOC_INDEX_VIP_SET_ZOOM,
  133. KMF_IOC_INDEX_GetDBGStatus,
  134. KMF_IOC_INDEX_SetDBGStatus,
  135. KMF_IOC_INDEX_INPUTSOURCE_PINCONFIG,
  136. KMF_IOC_INDEX_InputSrcSetting,
  137. KMF_IOC_INDEX_SetMemType,
  138. KMF_IOC_INDEX_EnableInputSrc,
  139. KMF_IOC_INDEX_DRV_TTS_Control,
  140. KMF_IOC_INDEX_SetModulePower,
  141. KMF_IOC_INDEX_GetJiffies,
  142. KMF_IOC_INDEX_GetHZ,
  143. KMF_IOC_INDEX_LookupFlashTable,
  144. KMF_IOC_INDEX_VIP_SOURCESELECT_BY_SHOWLOGO,
  145. KMF_IOC_INDEX_GetACSpecilFileStatus,
  146. KMF_IOC_INDEX_SETREBOOTAFTERSHUTDOWN,
  147. KMF_IOC_INDEX_GETFLASHSIZE,
  148. KMF_IOC_INDEX_SENDDVDKEY,
  149. KMF_IOC_INDEX_HIDELOGO,
  150. KMF_IOC_INDEX_HIDELOGO_SECOND,
  151. KMF_IOC_INDEX_SEND_MHL_RCPCMD,
  152. KMF_IOC_INDEX_GET_MHL_APPINSTANCEDATA,
  153. KMF_IOC_INDEX_SETLVDSFORMAT,
  154. KMF_IOC_INDEX_SET_MODIFIED_COUNT,
  155. KMF_IOC_INDEX_GETPWMFREQ,
  156. KMF_IOC_INDEX_GETPWMVALUE,
  157. KMF_IOC_INDEX_GETDUTYPWM,
  158. KMF_IOC_INDEX_SETDUTYPWM,
  159. KMF_IOC_INDEX_GETPOLARITY,
  160. KMF_IOC_INDEX_GETELECTRICITY,
  161. KMF_IOC_INDEX_SETPANEL_INVERSE,
  162. KMF_IOC_INDEX_GETPANEL_INVERSE,
  163. KMF_IOC_INDEX_GETDEFPANEL_INVERSE,
  164. KMF_IOC_INDEX_GET_SFSFILESIZE,
  165. KMF_IOC_INDEX_GET_SFSOBJFILESIZE,
  166. KMF_IOC_INDEX_HDMI_SET_CUSTOMIZATION,
  167. KMF_IOC_INDEX_HDMI_SET_EQ,
  168. #ifdef CONFIG_SUPPORT_DOLBY_AUDIO
  169. KMF_IOC_INDEX_HDMI_SET_EDID_ATMOS,
  170. #endif
  171. KMF_IOC_INDEX_SET_MONFLG,
  172. KMF_IOC_INDEX_SET_CVD2_TT_ECCMODE,
  173. KMF_IOC_INDEX_GET_CVD2_WSS_DATA,
  174. KMF_IOC_INDEX_GET_CVD2_SNR,
  175. KMF_IOC_INDEX_GET_RESERVE_MEM_ADDR,
  176. KMF_IOC_INDEX_SETPANEL_INDEX,
  177. KMF_IOC_INDEX_GETPANEL_INDEX,
  178. KMF_IOC_INDEX_SET_PANEL_RESOLUTION,
  179. KMF_IOC_INDEX_SETKMFGVAL,
  180. KMF_IOC_INDEX_SetRegionY,
  181. KMF_IOC_INDEX_GETRetionY,
  182. KMF_IOC_INDEX_GETRegionValue,
  183. KMF_IOC_INDEX_GETHistBin,
  184. KMF_IOC_INDEX_SETHistBinIndex,
  185. KMF_IOC_INDEX_GETbJPEG,
  186. KMF_IOC_INDEX_SETGAMMATABLE_ID,
  187. KMF_IOC_INDEX_SETVIPTABLE_ID,
  188. KMF_IOC_INDEX_SETCLUTTABLE_ID,
  189. KMF_IOC_INDEX_GET_BFIRST_AC_POWER_ON,
  190. KMF_IOC_INDEX_SW_RESET_USB,
  191. KMF_IOC_INDEX_DISABLE_SINGLE_LED,
  192. KMF_IOC_INDEX_Factory_Remote,
  193. KMF_IOC_INDEX_DISSAVEBOOTSHAREDATA,
  194. KMF_IOC_INDEX_VIP_SET_MEDIAPLAYSTATUS,
  195. KMF_IOC_INDEX_SETDEVICE_ID,
  196. KMF_IOC_INDEX_PQ_ADJUST_CURVE,
  197. KMF_IOC_INDEX_BOOT_SET_HDMISRC,
  198. KMF_IOC_INDEX_BOOT_SET_MENUSRCTYPE,
  199. KMF_IOC_INDEX_WEAKUP_EVENT,
  200. #ifdef CONFIG_DDC_CI_SUPPORT
  201. KMF_IOC_INDEX_SET_DDCCI_ENABLE,
  202. KMF_IOC_INDEX_FB_OSD_LANGUAGE,
  203. #endif
  204. KMF_IOC_INDEX_SET_NEWCONTROL,
  205. KMF_IOC_INDEX_GET_WEAKUP_STATUS,
  206. KMF_IOC_INDEX_SET_WEAKUP_STATUS,
  207. KMF_IOC_INDEX_VIP_GET_RGB_MAXMIN,
  208. KMF_IOC_INDEX_VIP_GET_YHIST_OVERVALUE_CNT,
  209. KMF_IOC_INDEX_MAX
  210. };
  211. #define KMF_IOC_MAGIC 0x93
  212. #define KMF_IOC_MAXNR KMF_IOC_INDEX_MAX
  213. #define KMF_IOC_VIDEOPAUSE _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIDEOPAUSE, INT32)
  214. #define KMF_IOC_INPUTSOURCE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_INPUTSOURCE,INT32)
  215. #define KMF_IOC_CVD2_ADJUST _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_CVD2_ADJUST, OsdAdjValue)
  216. #define KMF_IOC_VIP_INIT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_INIT, NULL)
  217. #define KMF_IOC_VIP_FLIPQ_INIT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_FLIPQ_INIT, NULL)
  218. #define KMF_IOC_VIP_FLIPQ_DISPLAY _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_FLIPQ_DISPLAY, NULL)
  219. #define KMF_IOC_VIP_FLIPQ_UNINIT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_FLIPQ_UNINIT, NULL)
  220. #define KMF_IOC_VIP_GETFRAME_ADDR _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GETFRAME_ADDR, INT32)
  221. #define KMF_IOC_VIP_SETFRAME _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SETFRAME, NULL)
  222. #define KMF_IOC_VIP_ADJUST _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_ADJUST, VipAdjValue)
  223. #define KMF_IOC_PQ_ADJUST _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_PQ_ADJUST, OsdAdjValue)
  224. #define KMF_IOC_ColorLUT7Axis_ADJUST _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_ColorLUT7Axis_ADJUST, ColorLUT7AxisAdjValue)
  225. #define KMF_IOC_ColorLUT7RANGE_ADJUST _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_ColorLUT7RANGE_ADJUST, ColorLUT7RangeAdjValue)
  226. #define KMF_IOC_RetionY _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SetRegionY, RegionYaverage)
  227. #define KMF_IOC_ADC_ADJUST _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_ADC_ADJUST, OsdAdjValue)
  228. #define KMF_IOC_ADC_GETAUTOCOLOR _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_ADC_GETAUTOCOLOR, INT32)
  229. #define KMF_IOC_ADC_GETPHASE _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_ADC_GETPHASE, INT32)
  230. #define KMF_IOC_LCDBACKLIGHT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_LCDBACKLIGHT, INT32)
  231. #ifdef CONFIG_EXTRA_PWM_CONTROL_FOR_FAN
  232. #define KMF_IOC_EXTRAPWM _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_EXTRAPWM, INT32)
  233. #endif
  234. #define KMF_IOC_ACPOWERON_GETFLAG _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_ACPOWERONFLAG, BOOL)
  235. #define KMF_IOC_PANLBACKLIGHT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_PANLBACKLIGHT, INT32)
  236. #define KMF_IOC_PANLBACKLIGHTPOLARITY _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_PANLBACKLIGHTPOLARITY, INT32)
  237. #define KMF_IOC_PANLDUTYPWM _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_PANLDUTYPWM, INT32)
  238. #define KMF_IOC_PANLCHANNELSETTING _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_PANLCHANNELSETTING, INT32)
  239. #define KMF_IOC_SHUTDOWN _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SHUTDOWN, INT32)
  240. #define KMF_IOC_VIP_GETMAININFO _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GETMAININFO, INT32)
  241. #define KMF_IOC_SETBACKLIGHT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETBACKLIGHT, INT32)
  242. #define KMF_IOC_SETPANEL _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETPANEL, INT32)
  243. #define KMF_IOC_SETLED _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETLED, INT32)
  244. #define KMF_IOC_SETPOWERSAVING _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETPOWERSAVING, INT32)
  245. #define KMF_IOC_XONXOFF _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_XONXOFF, INT32)
  246. #define KMF_IOC_SETATVCOLORSYSTEM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETATVCOLORSYSTEM, INT32)
  247. #define KMF_IOC_GETATVCOLORSYSTEM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETATVCOLORSYSTEM, INT32)
  248. #define KMF_IOC_NOTICECVD2CHANNELSCAN _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_NOTICECVD2CHANNELSCAN, INT32)
  249. #define KMF_IOC_NOTICECVD2LEAVESCART _IO(KMF_IOC_MAGIC, KMF_IOC_INDEX_NOTICECVD2LEAVESCART)
  250. #define KMF_IOC_AUTOPOWERON _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_AUTOPOWERON, INT32)
  251. #define KMF_IOC_CECAUTOPOWERON _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_CECAUTOPOWERON, INT32)
  252. #define KMF_IOC_CECCONTROLON _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_CECCONTROLON, INT32)
  253. #define KMF_IOC_SAVEGAMMATABLE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SAVEGAMMATABLE, INT32)
  254. #define KMF_IOC_SETVIPGAMMATABLE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETVIPGAMMATABLE, INT32)
  255. #define KMF_IOC_SETBOOTALARM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETBOOTALARM, INT32)
  256. #define KMF_IOC_STANDBYLEDPWMCONTRL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_STANDBYLEDPWMCONTRL , StandbyLEDPWMCtrl)
  257. #define KMF_IOC_PWMCONTRL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_PWMCONTRL , StandbyLEDPWMCtrl)
  258. #define KMF_IOC_DDCWP _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_DDCWP, INT32)
  259. #define KMF_IOC_EDIDCHECKSUM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_EDIDCHECKSUM, INT32)
  260. #define KMF_IOC_CHECKSUM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_CHECKSUM, INT32)
  261. #define KMF_IOC_HDCPKEYCHECKSUM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_HDCPKEYCHECKSUM, INT32)
  262. #ifdef CONFIG_SUPPORT_STORE_HDCP2X_TO_FLASH
  263. #define KMF_IOC_SPI_HDCP2XKEYUPDATE _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SPIHDCP2XKeyUpdate, INT32)
  264. #endif
  265. #define KMF_IOC_SETSCARTINPUTTYPE _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_SETSCARTINPUTTYPE,INT32)
  266. #define KMF_IOC_NOTICESETSCARTINPUTTYPE _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_NOTICESETSCARTINPUTTYPE,INT32)
  267. #define KMF_IOC_READEDID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_READEDID, INT32)
  268. #define KMF_IOC_WRITEEDID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_WRITEEDID, INT32)
  269. #define KMF_IOC_EMIUTIL _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_EMIUTIL,INT32)
  270. #define KMF_IOC_READKSV_HDCP _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_READKSV_HDCP,INT32)
  271. #define KMF_IOC_PRINTOFILEENABLE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_PRINTOFILEENABLE, INT32)
  272. #define KMF_IOC_SPI_HDCPKEYUPDATE _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SPIHDCPKeyUpdate, INT32)
  273. #define KMF_IOC_VIP_GetDynamicContrastInfo _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GetDynamicContrastInfo, INT32)
  274. #define KMF_IOC_VIP_SetDynamicContrastInfo _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SetDynamicContrastInfo, INT32)
  275. #define KMF_IOC_SETPQCMDSET _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETPQCMDSET, INT32)
  276. #define KMF_IOC_UartATx _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_UARTATX,INT32)
  277. #define KMF_IOC_UartATxNotSaveShareData _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_UARTATX_NOTSAVESHAREDADA,INT32)
  278. #define KMF_IOC_SETMAXBACKLIGHTLEV _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETMAXBACKLIGHTLEV, INT32)
  279. #define KMF_IOC_SPI_OADUPDATE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SPI_OADUPDATE, INT32)
  280. #define KMF_IOC_DISABLEKEYPAD _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_DISABLEKEYPAD, INT32)
  281. #define KMF_IOC_GET_DTVAUDIO_DOLBYDIGITALTYPE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_DTVAUDIO_DOLBYDIGITALTYPE, INT32)
  282. #define KMF_IOC_SET_OVERSCANBYPIXEL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_OVERSCANBYPIXEL, INT32)
  283. #define KMF_IOC_GET_OVERSCANBYPIXEL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_OVERSCANBYPIXEL, INT32)
  284. #define KMF_IOC_GET_YAvg _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_YAvg, INT32)
  285. #define KMF_IOC_SET_EXTS_INPUTWIN _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_EXTS_INPUTWIN, VipWindow)
  286. #define KMF_IOC_GET_EXTS_INPUTWIN _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_EXTS_INPUTWIN, VipWindow)
  287. #define KMF_IOC_SET_HDMI_SCREEN_MODE _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_HDMI_SCREEN_MODE, UINT8)
  288. #ifdef CONFIG_ENABLE_MIR
  289. #define KMF_IOC_SET_MIR_FORMAT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_MIR_FORMAT, VipMirSetting)
  290. #endif
  291. #define KMF_IOC_NOTICECVD2CHANGECHANNEL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_NOTICE_CVD2_CHANGE_CHANNEL, INT32)
  292. #define KMF_IOC_GET_HDMIMODE _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_HDMIMODE, INT32)
  293. #define KMF_IOC_SET_UMFPID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_UMFPID, INT32)
  294. #define KMF_IOC_FRONTENDCTRL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_FRONTENDCTRL, INT32)
  295. #define KMF_IOC_DetectAudioM _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_DetectAudioM, INT32)
  296. #define KMF_IOC_FindInterfaceFormat _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_FindInterfaceFormat, INT32)
  297. #define KMF_IOC_GetInputStatus _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GetInputStatus, INT32)
  298. #define KMF_IOC_ResetTunerFSM _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_ResetTunerFSM, INT32)
  299. #define KMF_IOC_SetAutoDetectMask _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SetAutoDetectMask, INT32)
  300. #define KMF_IOC_SET_CVBSOutMode _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_CVBSOutMode, INT32)
  301. #define KMF_IOC_SET_SCARTOUT_MODE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_SCARTOUTMODE, INT32)
  302. #define KMF_IOC_GET_SCARTOUT_MODE _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_SCARTOUTMODE, INT32)
  303. #define KMF_IOC_EnterScanMode _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_EnterScanMode, INT32)
  304. #define KMF_IOC_NVMRW _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_NVMRW, INT32)
  305. #define KMF_IOC_SPICmdRW _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SPICmdRW, INT32)
  306. #define KMF_IOC_FLASHCTRL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_FLASHCTRL, INT32)
  307. #define KMF_IOC_KMFUTIL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_KMF_UTIL, INT32)
  308. #define KMF_IOC_KMFFMIIC _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_KMF_FMIIC, INT32)
  309. #define KMF_IOC_VIP_GETADCHTOTAL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GETADCHTOTAL, UINT16)
  310. #define KMF_IOC_GET_SCARTPIN_STATUS _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_SCARTPIN_STATUS, INT32)
  311. #define KMF_IOC_PQ_GETREGRANGE _IOW(KMF_IOC_MAGIC,KMF_IOC_INDEX_PQ_GETREGRANGE, INT32)
  312. #ifdef CONFIG_SUPPORT_MHEG5
  313. #define KMF_IOC_SET_MHEG5_EN _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_MHEG_EN, UINT8)
  314. #define KMF_IOC_SET_VIDEO_POSI_SIZE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_POSI_SIZE, VIP_Win_t)
  315. #define KMF_IOC_SET_UPDATE_VIP _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_UPDATE, MHEG5_STATUS)
  316. #define KMF_IOC_SET_SCENE_ASPECT_RATIO _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_SCENE_AR, MHEG5_SCENE_AR)
  317. #define KMF_IOC_SET_WIDE_ALIGNMENT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_WIDE_ALIGNMENT, MHEG5_WIDE_ALIGNMENT)
  318. #define KMF_IOC_GET_DISP_ASPECT_RATIO _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GET_DISP_ARMODE, INT32)
  319. #define KMF_IOC_GET_DECFC _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GET_DECFC, UINT8)
  320. #endif
  321. #define KMF_IOC_SET_CVD2_FACTORY_VALUE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_CVD2_FACTORY_VALUE, INT32)
  322. #define KMF_IOC_VIP_SET_MUTESTATUS _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_MUTESTATUS, VipAdjValue)
  323. #define KMF_IOC_VIP_GET_MUTESTATUS _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GET_MUTESTATUS, VIP_Mute_Flag_st)
  324. #define KMF_IOC_VIP_SET_TVFEMUTECOLORBYAPP _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_TVFEMUTECOLORBYAPP, INT32)
  325. #define KMF_IOC_VIP_ISSUPPORT3D _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_ISSUPPORT3D, INT32)
  326. #define KMF_IOC_GET_PANEL_RESOLUTION _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GET_PANEL_RESOLUTION, INT32)
  327. #define KMF_IOC_GetDBGStatus _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GetDBGStatus, INT32)
  328. #define KMF_IOC_SetDBGStatus _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SetDBGStatus, INT32)
  329. #define KMF_IOC_INPUTSOURCE_PINCONFIG _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_INPUTSOURCE_PINCONFIG,INT32)
  330. #define KMF_IOC_InputSrcSetting _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_InputSrcSetting, INT32)
  331. #define KMF_IOC_SetMemType _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SetMemType, INT32)
  332. #define KMF_IOC_EnableInputSrc _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_EnableInputSrc, INT32)
  333. #define KMF_IOC_DRV_TTS_Control _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_DRV_TTS_Control, INT32)
  334. #define KMF_IOC_SetModulePower _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SetModulePower, INT32)
  335. #define KMF_IOC_GetJiffies _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GetJiffies, INT32)
  336. #define KMF_IOC_GetHZ _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GetHZ, INT32)
  337. #define KMF_IOC_LookupFlashTable _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_LookupFlashTable, INT32)
  338. #define KMF_IOC_VIP_SOURCESELECT_BY_SHOWLOGO _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SOURCESELECT_BY_SHOWLOGO, INT32)
  339. #define KMF_IOC_GetACSpecilFileStatus _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GetACSpecilFileStatus, INT32)
  340. #define KMF_IOC_SETREBOOTAFTERSHUTDOWN _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETREBOOTAFTERSHUTDOWN, INT32)
  341. #define KMF_IOC_GETFLASHSIZE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETFLASHSIZE, INT32)
  342. #define KMF_IOC_SENDDVDKEY _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SENDDVDKEY, INT32)
  343. #define KMF_IOC_HIDELOGO _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_HIDELOGO, INT32)
  344. #define KMF_IOC_HIDELOGO_SECOND _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_HIDELOGO_SECOND, INT32)
  345. #define KMF_IOC_SEND_MHL_RCPCMD _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SEND_MHL_RCPCMD, INT32)
  346. #define KMF_IOC_GET_MHL_APPINSTANCEDATA _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_MHL_APPINSTANCEDATA, INT32)
  347. #define KMF_IOC_SET_HDMI_EQ_CMD _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_HDMI_SET_EQ, INT32)
  348. #ifdef CONFIG_SUPPORT_DOLBY_AUDIO
  349. #define KMF_IOC_SET_HDMI_EDID_ATMOS_CMD _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_HDMI_SET_EDID_ATMOS, INT32)
  350. #endif
  351. #define KMF_IOC_SETLVDSFORMAT _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETLVDSFORMAT, INT32)
  352. #define KMF_IOC_SET_MODIFIED_COUNT _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_MODIFIED_COUNT, INT32)
  353. #define KMF_IOC_GETPWMFREQ _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETPWMFREQ, UINT32)
  354. #define KMF_IOC_GETPWMVALUE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETPWMVALUE, UINT32)
  355. #define KMF_IOC_GETDUTYPWM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETDUTYPWM, UINT32)
  356. #define KMF_IOC_SETDUTYPWM _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETDUTYPWM, UINT32)
  357. #define KMF_IOC_GETPOLARITY _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETPOLARITY, UINT32)
  358. #define KMF_IOC_GETELECTRICITY _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETELECTRICITY, UINT32)
  359. #define KMF_IOC_SETPANEL_INVERSE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETPANEL_INVERSE, INT32)
  360. #define KMF_IOC_GETPANEL_INVERSE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETPANEL_INVERSE, BOOL)
  361. #define KMF_IOC_GETDEFPANEL_INVERSE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETDEFPANEL_INVERSE, BOOL)
  362. #define KMF_IOC_GET_SFSFILESIZE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_SFSFILESIZE, INT32)
  363. #define KMF_IOC_GET_SFSOBJFILESIZE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_SFSOBJFILESIZE, INT32)
  364. #define KMF_IOC_HDMI_SET_CUSTOMIZATION _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_HDMI_SET_CUSTOMIZATION, INT32)
  365. #define KMF_IOC_SET_MONFLG _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_MONFLG, UINT32)
  366. #define KMF_IOC_SET_CVD2_TT_ECCMODE _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_CVD2_TT_ECCMODE, INT32)
  367. #define KMF_IOC_GET_CVD2_WSS_DATA _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_CVD2_WSS_DATA, INT32)
  368. #define KMF_IOC_GET_CVD2_SNR _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_CVD2_SNR, INT32)
  369. #define KMF_IOC_GET_RESERVE_MEM_ADDR _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_RESERVE_MEM_ADDR, INT32)
  370. #define KMF_IOC_VIP_SET_ZOOM _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_ZOOM, Vip_ZoomWindow)
  371. #define KMF_IOC_BOOT_SET_HDMISRC _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_BOOT_SET_HDMISRC, UINT8)
  372. #define KMF_IOC_BOOT_SET_MENUSRCTYPE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_BOOT_SET_MENUSRCTYPE, UINT8)
  373. #define KMF_IOC_SETPANEL_INDEX _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETPANEL_INDEX, INT32)
  374. #define KMF_IOC_GETPANEL_INDEX _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETPANEL_INDEX, INT32)
  375. #define KMF_IOC_SET_PANEL_RESOLUTION _IOWR(KMF_IOC_MAGIC,KMF_IOC_INDEX_SET_PANEL_RESOLUTION,UINT32)
  376. #define KMF_IOC_SETKMFGVAL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETKMFGVAL, Kmfgvar)
  377. #define KMF_IOC_GETCURRRegionY _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETRetionY, UINT32)
  378. #define KMF_IOC_regionvalue _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETRegionValue, RegionHVStartSize)
  379. #define KMF_IOC_GETCURRHistBin _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETHistBin, UINT32)
  380. #define KMF_IOC_SETHistBinIndex _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETHistBinIndex, UINT8)
  381. #define KMF_IOC_GETBJPEGINDEX _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GETbJPEG, UINT8)
  382. #define KMF_IOC_SETGAMMATABLE_ID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETGAMMATABLE_ID, INT32)
  383. #define KMF_IOC_SETVIPTABLE_ID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETVIPTABLE_ID, INT32)
  384. #define KMF_IOC_SETCLUTTABLE_ID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETCLUTTABLE_ID, INT32)
  385. #define KMF_IOC_GET_BFIRST_AC_POWER_ON _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_BFIRST_AC_POWER_ON, UINT32)
  386. #define KMF_IOC_SW_RESET_USB _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SW_RESET_USB, UINT32)
  387. #define KMF_IOC_DISABLE_SINGLE_LED _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_DISABLE_SINGLE_LED, UINT8)
  388. #define KMF_IOC_GET_Factory_Remote _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_Factory_Remote, UINT8)
  389. #define KMF_IOC_DISSAVE_BOOTSHAREDATA _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_DISSAVEBOOTSHAREDATA, UINT8)
  390. #define KMF_IOC_VIP_SET_MEDIAPLAYSTATUS _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_SET_MEDIAPLAYSTATUS, UINT8)
  391. #define KMF_IOC_SET_DEVICE_ID _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SETDEVICE_ID, UINT8)
  392. #define KMF_IOC_PQ_ADJUST_CURVE _IOW(KMF_IOC_MAGIC, KMF_IOC_INDEX_PQ_ADJUST_CURVE, PQAdjCurve)
  393. #define KMF_IOC_GET_WEAKUP_EVENT _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_WEAKUP_EVENT, UINT32)
  394. #ifdef CONFIG_DDC_CI_SUPPORT
  395. #define KMF_IOC_SET_DDCCI_ENABLE _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_DDCCI_ENABLE, INT32)
  396. #define KMF_IOC_FBOsdLanguage _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_FB_OSD_LANGUAGE, UINT8)
  397. #endif
  398. #define KMF_IOC_SET_NEWCONTROL _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_NEWCONTROL, UINT8)
  399. #define KMF_IOC_GET_WEAKUP_STATUS _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_GET_WEAKUP_STATUS, UINT8)
  400. #define KMF_IOC_SET_WEAKUP_STATUS _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_SET_WEAKUP_STATUS, UINT8)
  401. #define KMF_IOC_VIP_GET_RGB_MAXMIN _IOR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GET_RGB_MAXMIN, RGB_MAXMIN)
  402. #define KMF_IOC_VIP_GET_YHIST_OVERVALUE_CNT _IOWR(KMF_IOC_MAGIC, KMF_IOC_INDEX_VIP_GET_YHIST_OVERVALUE_CNT, YHISTCNT)
  403. typedef struct
  404. {
  405. BOOL MHEG5Active;
  406. UINT8 bInfo;
  407. }MHEG5_STATUS;
  408. typedef struct
  409. {
  410. VIP_MHEG5_SceneAspectRatio bSceneAR;
  411. MHEG5_STATUS eMheg5St;
  412. }MHEG5_SCENE_AR;
  413. typedef struct
  414. {
  415. VIP_MHEG5_WideAignment bWideAlignment;
  416. MHEG5_STATUS eMheg5St;
  417. }MHEG5_WIDE_ALIGNMENT;
  418. typedef struct _VIP_Win_t
  419. {
  420. INT16 Hstart;
  421. INT16 Vstart;
  422. UINT16 Hsize;
  423. UINT16 Vsize;
  424. MHEG5_STATUS eMheg5St;
  425. }VIP_Win_t;
  426. typedef struct _InputSrcIOCTL_t{
  427. UINT8 path;
  428. //UINT8 inputSrc;
  429. //UINT32 srcID;
  430. UINT32 input_type;
  431. UINT8 linkno;
  432. }InputSrcIOCTL_t, *PInputSrcIOCTL_t;
  433. typedef struct _InputPinIOCTL_t{
  434. UINT32 input_type;
  435. InputVideoConf_st InputSrcPin;
  436. }InputPinIOCTL_t, *PInputPinIOCTL_t;
  437. typedef struct _ScartPinStatus_t
  438. {
  439. UINT8 pin;
  440. UINT8 value;
  441. }ScartPinStatus_t;
  442. typedef struct _TTSIOCTL_t
  443. {
  444. UINT8 bEnable;
  445. UINT32 InputSrc;
  446. }TTSIOCTL_t;
  447. typedef struct _ModulePower_t
  448. {
  449. UINT8 Module;
  450. UINT8 bEnable;
  451. }ModulePower_t;
  452. typedef struct _FlashTableSearch_t
  453. {
  454. UINT32 Addr;
  455. UINT32 size;
  456. UINT32 Flashddr;
  457. void *pTag;
  458. }FlashTableSearch_t;
  459. typedef struct _DVDIR_t
  460. {
  461. UINT8 protocol;
  462. UINT32 keycode;
  463. }DVDIR_t;
  464. enum {
  465. KMF_OP_SET,
  466. KMF_OP_GET,
  467. KMF_OP_ERASE,
  468. KMF_OP_LOCK,
  469. KMF_OP_GETINFO,
  470. KMF_OP_SFS_UMOUNT,
  471. KMF_OP_GET_MEMORY,
  472. KMF_OF_UPDATE_MODULE,
  473. KMF_OF_READ_MODULE,
  474. KMF_OP_SFS_MOUNT,
  475. KMF_OP_SPI_CMD_LOCK,
  476. KMF_OP_SPI_ENCRYPT_CONTROL,
  477. KMF_OP_SPI_DECRYPT_CONTROL,
  478. KMF_OP_UPDATE_BOOTROMSHAREDATE,/*Under certain conditions, main menu upgrade function needs to update bootsharedata area separately.*/
  479. KMF_OP_LOOKUP_FLASH_WRITE_COMPLETE,
  480. };
  481. enum {
  482. MMIO_READ_DWORD,
  483. MMIO_WRITE_DWORD,
  484. MMIO_READ_BYTE,
  485. MMIO_WRITE_BYTE,
  486. GPIO_READ_BYTE,
  487. GPIO_WRITE_BYTE,
  488. I2C_READ_BYTE,
  489. I2C_WRITE_BYTE,
  490. GPIO_READ_TRY,
  491. };
  492. typedef struct _KMFIOCTL_t
  493. {
  494. UINT8 op;
  495. UINT32 bufSize;
  496. void *pBuf;
  497. }KMFIOCTL_t, *PKMFIOCTL_t;
  498. typedef struct _UTILRW_t
  499. {
  500. UINT8 op;
  501. UINT8 index;
  502. UINT32 addr;
  503. UINT32 value;
  504. UINT32 mask;
  505. UINT8 status;
  506. }UTILRW_t;
  507. typedef struct _FMIICRW_t
  508. {
  509. UINT8 op;
  510. UINT8 Length;
  511. UINT8 address;
  512. UINT8 *value;
  513. UINT8 status;
  514. }FMIICRW_t;
  515. typedef struct _NVMRW_t
  516. {
  517. UINT8 op;
  518. UINT8 nvmID;
  519. UINT8 compress;
  520. UINT32 size;
  521. void *pBuf;
  522. }NVMRW_t;
  523. typedef struct _SPICmdRW_t
  524. {
  525. UINT16 writecnt;
  526. UINT16 readcnt;
  527. UINT8 *writebuf;
  528. UINT8 *readbuf;
  529. }SPICmdRW_t;
  530. typedef struct _RWHDCP_t
  531. {
  532. UINT8 *KSV;
  533. }RWHDCP_t;
  534. typedef struct _FlashControl_t
  535. {
  536. UINT8 op;
  537. UINT8 flashID;
  538. UINT32 destAddr;
  539. UINT32 srcAddr;
  540. UINT32 size;
  541. }FlashControl_t;
  542. typedef struct _SfsFile_t
  543. {
  544. UINT16 fileID;
  545. int size;
  546. }SfsFile_t;
  547. typedef struct _StandbyLEDPWMCtrl
  548. {
  549. UINT8 action;;
  550. INT32 Period;
  551. INT32 Duty;
  552. }StandbyLEDPWMCtrl;
  553. typedef struct _FrontendCmd_t
  554. {
  555. UINT32 cmd; //Specify the frontend control command.
  556. void *param; //Specify the frontend control data or parameter.
  557. }FrontendCmd_t;
  558. typedef struct _OsdAdjValue
  559. {
  560. UINT8 path;
  561. UINT8 cmd;
  562. INT32 value;
  563. INT32 min;
  564. INT32 max;
  565. }OsdAdjValue;
  566. typedef struct _AdcAdjValue
  567. {
  568. UINT8 cmd;
  569. INT32 value;
  570. }AdcAdjValue;
  571. typedef struct _VipAdjValue
  572. {
  573. UINT8 cmd;
  574. INT32 value;
  575. INT32 iParm1;
  576. INT32 iParm2;
  577. } VipAdjValue;
  578. typedef struct _VipOverscanValue
  579. {
  580. UINT16 usVTop; //! Specify how many lines of source can be dropped from top line.
  581. UINT16 usVBottom; //! Specify how many lines of source can be dropped from bottom line.
  582. UINT16 usHLeft; //! Specify how many pixels of source can be dropped from left pixel.
  583. UINT16 usHRight; //! Specify how many pixels of source can be dropped from right pixel.
  584. BOOL fUnitByRatio;
  585. } VipOverscanValue;
  586. #ifdef CONFIG_ENABLE_MIR
  587. typedef struct _VipMirSetting
  588. {
  589. BOOL fMirEn;
  590. UINT8 bFormat;
  591. BOOL fOSDEn;
  592. } VipMirSetting;
  593. #endif
  594. typedef struct _VipPanelResolution
  595. {
  596. UINT16 ulWidth;
  597. UINT16 ulHeight;
  598. } VipPanelResolution;
  599. typedef struct _VipWindow
  600. {
  601. UINT16 ulHStart;
  602. UINT16 ulHEnd;
  603. UINT16 ulVStart;
  604. UINT16 ulVEnd;
  605. } VipWindow;
  606. typedef struct _PQAdjValue
  607. {
  608. UINT8 cmd;
  609. INT32 value;
  610. } PQAdjValue;
  611. typedef struct _ColorLUT7AxisAdjValue
  612. {
  613. UINT8 cmd;
  614. UINT8 RegionIdx;
  615. UINT8 bEnable;
  616. INT8 iHueGain;
  617. INT8 iSatGain;
  618. INT8 iYGain;
  619. BOOL bSet;
  620. } ColorLUT7AxisAdjValue;
  621. typedef struct _PQAdjCurve
  622. {
  623. UINT8 cmd;
  624. UINT8 CurveType;
  625. UINT8 CurvePointIdx;
  626. INT16 iValue;
  627. } PQAdjCurve;
  628. typedef struct
  629. {
  630. UINT8 cmd;
  631. UINT16 wRGain;
  632. UINT16 wGGain;
  633. UINT16 wBGain;
  634. UINT8 wGammaSwitch;
  635. UINT8 wGammaIndex;
  636. } kmf_DISP_ColorTemp_Set_t;
  637. typedef struct _RegionYaverage
  638. {
  639. UINT8 index;
  640. UINT8 iHtotalNum;
  641. UINT8 iVtotalNum;;
  642. } RegionYaverage;
  643. typedef struct _ColorLUT7RangeAdjValue
  644. {
  645. UINT8 RegionIdx;
  646. UINT8 bMake;
  647. UINT8 HueMin;
  648. UINT8 HueMax;
  649. UINT8 SatMin;
  650. UINT8 SatMax;
  651. UINT8 YMin;
  652. UINT8 YMax;
  653. UINT8 SmoothLevel;
  654. BOOL bSet;
  655. } ColorLUT7RangeAdjValue;
  656. typedef struct _Window_RECT
  657. {
  658. UINT32 ulHStart,ulHEnd;
  659. UINT32 ulVStart,ulVEnd;
  660. UINT8 FullScreen;
  661. }Window_RECT,*PWindow_RECT;
  662. typedef struct
  663. {
  664. UINT16 ulWidth;
  665. UINT16 ulHeight;
  666. INT8 cScreenMode;
  667. INT8 cDataFormat;
  668. }VipNESPara;
  669. typedef struct
  670. {
  671. UINT32 uiBuf0Addr;
  672. UINT32 uiBuf1Addr;
  673. UINT32 uiBuf2Addr;
  674. }VipNESFrameBufAddr;
  675. /*!
  676. * @brief DRV_TvDecDetectAudioM() use to report Audio M or NTSC443 colorburst
  677. */
  678. typedef enum
  679. {
  680. TVFE_TvDec_AudioM = 0,
  681. TVFE_TvDec_Colorburst
  682. } TVFE_TvDecBurstType_t;
  683. /* TV decoding format type */
  684. typedef enum {
  685. TVFE_TvDecFORMAT_NTSC = 0,
  686. TVFE_TvDecFORMAT_NTSC_443,
  687. TVFE_TvDecFORMAT_PAL,
  688. TVFE_TvDecFORMAT_PAL_M,
  689. TVFE_TvDecFORMAT_PAL_N,
  690. TVFE_TvDecFORMAT_PAL_60,
  691. TVFE_TvDecFORMAT_SECAM,
  692. TVFE_TvDecFORMAT_SwitchModulation, //For ATV scan mode to detect SECAM L/L' signal.
  693. TVFE_TvDecFORMAT_AUTO,
  694. TVFE_TVDecFORMAT_NONE,
  695. } TVFE_TvDecFormatType_e;
  696. typedef enum
  697. {
  698. TVFE_SIGNAL_UNKNOWN = 0,
  699. TVFE_SIGNAL_LOCK,
  700. TVFE_SIGNAL_UNLOCK,
  701. } TVFE_SignalLock_e;
  702. typedef enum
  703. {
  704. /* common status values */
  705. TVFE_SUCCESS, /* successful outcome */
  706. TVFE_ERR_INVALID_PARAM, /* invalid parameter */
  707. TVFE_ERR_INVALID_OP, /* requested operation is invalid */
  708. TVFE_ERR_MEMORY_ALLOC, /* problem allocating memory */
  709. TVFE_ERR_BUFFER_UNDERFLOW, /* not enough stream data is available to decode the next video frame */
  710. TVFE_ERR_RESOURCE_UNAVAILABLE, /* hardware resource is in use or otherwise unavailable */
  711. TVFE_ERR_FAILURE,
  712. TVFE_WARN_NO_ACTION, /* the function completed successfully, but no action was taken */
  713. TVFE_WARN_PARAM_CLIPPED, /* the function completed successfully, though a parameter was clipped to within a valid range.*/
  714. TVFE_WARN_BUFFER_EMPTY, /* buffer became empty before the requested amount of data could be read */
  715. TVFE_WARN_BUFFER_FULL, /* buffer became full before the requested amount of data could be written */
  716. } TVFE_Status_e;
  717. /*!
  718. * @brief TVFE_GetCVBSOUTMode() use to report CVBSOUT mode
  719. */
  720. typedef enum
  721. {
  722. TVFE_CVBSOUT_DTV_DAC_Mode = 0,
  723. TVFE_CVBSOUT_DVIF_DAC_Mode,
  724. TVFE_CVBSOUT_TVDEC_DAC_Mode,
  725. TVFE_CVBSOUT_BYPASS_Mode,
  726. } TVFE_CVBSOUTMode_t;
  727. typedef enum {
  728. TVFE_TVDEC_AUTO_DETECT_PALM = 0x01, /* 0x01 << 0x00 */
  729. TVFE_TVDEC_AUTO_DETECT_PALCN = 0x02, /* 0x01 << 0x01 */
  730. TVFE_TVDEC_AUTO_DETECT_SECAM = 0x04, /* 0x01 << 0x02 */
  731. TVFE_TVDEC_AUTO_DETECT_NTSC443 = 0x08, /* 0x01 << 0x03 */
  732. TVFE_TVDEC_AUTO_DETECT_PAL60 = 0x10, /* 0x01 << 0x04 */
  733. TVFE_TVDEC_AUTO_DETECT_NTSC = 0x20, /* 0x01 << 0x05 */
  734. TVFE_TVDEC_AUTO_DETECT_PALI = 0x40, /* 0x01 << 0x06 */
  735. TVFE_TVDEC_AUTO_DETECT_SECAML = 0x80, /* 0x01 << 0x07 */
  736. } TVFE_TvDecAutoDetectMask_e;
  737. /* Enumeration of video timing info type */
  738. typedef enum {
  739. TVFE_TVDEC_TIMING,
  740. TVFE_HDTV_TIMING,
  741. TVFE_CUSTOMER_HDTV_TIMING,
  742. TVFE_HDMI_VIDEO_TIMING,
  743. TVFE_CUSTOMER_HDMI_VIDEO_TIMING,
  744. TVFE_HDMI_PC_TIMING,
  745. TVFE_CUSTOMER_HDMI_PC_TIMING,
  746. TVFE_PC_TIMING,
  747. TVFE_CUSTOMER_PC_TIMING,
  748. TVFE_MPEG_TIMING,
  749. TVFE_TIMING_MAX,
  750. } TVFE_VideoTiming_e;
  751. typedef struct _RGB_MAXMIN
  752. {
  753. INT32 iRMax;
  754. INT32 iGMax;
  755. INT32 iBMax;
  756. INT32 iRMin;
  757. INT32 iGMin;
  758. INT32 iBMin;
  759. } RGB_MAXMIN;
  760. typedef struct _YHISTCNT
  761. {
  762. INT32 iYHistOverValue;
  763. INT32 iCount;
  764. } YHISTCNT;
  765. #endif /* _KMF_IOCTL_H_ */