1 /* 2 * Copyright (C) 2022 HiSilicon (Shanghai) Technologies CO., LIMITED. 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public License 6 * as published by the Free Software Foundation; either version 2 7 * of the License, or (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 17 */ 18 19 /** @addtogroup MODULES */ 20 /** @{ */ /** <!-- [MODULES] */ 21 #ifndef __HI_MODULE_H__ 22 #define __HI_MODULE_H__ 23 24 #ifdef __cplusplus 25 #if __cplusplus 26 extern "C" { 27 #endif 28 #endif /* __cplusplus */ 29 30 #define HI_INVALID_MODULE_ID (0xffffffff) 31 #define HI_MAX_USER_MODULE_NUMBER (256) 32 33 /** Module ID flags */ 34 typedef enum hiMOD_ID_E { 35 HI_ID_STB = 0, 36 37 /**< common. */ /**< CNcomment: System general enumeration data constants */ 38 HI_ID_SYS = 1, 39 HI_ID_MODULE, 40 HI_ID_LOG, 41 HI_ID_PROC, 42 HI_ID_MEM, 43 HI_ID_STAT, 44 HI_ID_PDM, 45 HI_ID_MEMDEV, 46 HI_ID_CUSTOM, 47 HI_ID_COMMON_BUTT, 48 49 HI_ID_DEMUX = HI_ID_COMMON_BUTT + 1, 50 HI_ID_DEMUX_BUTT, 51 52 /**< audio. */ /**< CNcomment: Audio part constant area */ 53 HI_ID_ADEC = HI_ID_DEMUX_BUTT + 1, 54 HI_ID_AO, 55 HI_ID_SIO_AI, 56 HI_ID_SIO_AO, 57 HI_ID_SIO, 58 HI_ID_AI, 59 HI_ID_AENC, 60 HI_ID_SRC, 61 HI_ID_AIAO, 62 HI_ID_AFLT, 63 HI_ID_ADSP, 64 HI_ID_AMP, 65 HI_ID_SIF, 66 HI_ID_TTS, 67 HI_ID_AUDIO_BUTT, 68 69 /**< video. */ /**< CNcomment: Video part constant area */ 70 HI_ID_VFMW = HI_ID_AUDIO_BUTT + 1, 71 HI_ID_SVDEC, 72 HI_ID_DISP, 73 HI_ID_HDMI, 74 HI_ID_VO, 75 HI_ID_FRC, 76 HI_ID_VPSS, 77 HI_ID_VDEC, 78 HI_ID_VI, 79 HI_ID_VENC, 80 HI_ID_PQ, 81 HI_ID_EDID, 82 HI_ID_MEMC, 83 HI_ID_VICAP, 84 HI_ID_PANEL, 85 HI_ID_FDMNG, 86 HI_ID_RM, 87 HI_ID_VPLUGIN, 88 HI_ID_VIDEO_BUTT, 89 90 /**< graphics. */ /**< CNcomment: Graphics part constant area */ 91 HI_ID_TDE = HI_ID_VIDEO_BUTT + 1, 92 HI_ID_JPGDEC, 93 HI_ID_JPGENC, 94 HI_ID_FB, 95 HI_ID_PNG, 96 HI_ID_HIGO, 97 HI_ID_GRAPHICS_BUTT, 98 99 /**< player. */ /**< CNcomment: Play the relevant part of the constant area */ 100 HI_ID_PVR = HI_ID_GRAPHICS_BUTT + 1, 101 HI_ID_AVPLAY, 102 HI_ID_SYNC, 103 HI_ID_VSYNC, 104 HI_ID_ASYNC, 105 HI_ID_FASTPLAY, 106 HI_ID_PLAYER_BUTT, 107 108 /**< ecs. */ /**< CNcomment: Peripheral part constant area */ 109 HI_ID_FLASH = HI_ID_PLAYER_BUTT + 1, 110 HI_ID_IR, 111 HI_ID_RTC, 112 HI_ID_I2C, 113 HI_ID_SCI, 114 HI_ID_ETH, 115 HI_ID_USB_PROTECT, 116 HI_ID_WDG, /* watch dog used 'W' */ 117 HI_ID_GPIO, 118 HI_ID_GPIO_I2C, 119 HI_ID_DMAC, 120 HI_ID_PMOC, 121 HI_ID_TUNER, 122 HI_ID_KEYLED, 123 HI_ID_CIPHER, 124 HI_ID_OTP, 125 HI_ID_CA, 126 HI_ID_PM, 127 HI_ID_CI, 128 HI_ID_CIMAXPLUS, 129 HI_ID_TVP5150, 130 HI_ID_SIL9293, 131 HI_ID_PWM, 132 HI_ID_LSADC, 133 HI_ID_SPI, 134 HI_ID_MDDRC, 135 HI_ID_ECS_BUTT, 136 137 /**< ATV */ /**< CNcomment: ATV front part constant area */ 138 HI_ID_VFE = HI_ID_ECS_BUTT + 1, 139 HI_ID_TVD, 140 HI_ID_HDDEC, 141 HI_ID_HDMIRX, 142 HI_ID_VBI, 143 HI_ID_ATV_BUTT, 144 145 /**< voip, bluetooth,alsa. */ /**< CNcomment: VOIP¡¢Bluetooth part constant area */ 146 HI_ID_VOIP_HME = HI_ID_ATV_BUTT + 1, 147 HI_ID_NDPT, 148 HI_ID_AUDADP, 149 HI_ID_BT, 150 HI_ID_ALSA, 151 HI_ID_3G, 152 HI_ID_KARAOKE, 153 HI_ID_VOIP_BUTT, 154 155 /**< vp. */ /**< CNcomment: VP constant area */ 156 HI_ID_VP = HI_ID_VOIP_BUTT + 1, 157 HI_ID_HDCP, 158 HI_ID_VP_BUTT, 159 160 /**< subtitle. */ /**< CNcomment: Subtitle constant area */ 161 HI_ID_SUBT = HI_ID_VP_BUTT + 1, 162 HI_ID_TTX, 163 HI_ID_CC, 164 HI_ID_SUBTITLE_BUTT, 165 166 /**< loader. */ /**< CNcomment: loader */ 167 HI_ID_LOADER = HI_ID_SUBTITLE_BUTT + 1, 168 HI_ID_LOADER_BUTT, 169 170 /**< user definition. */ /**< CNcomment: Custom area reserved for the whole machine */ 171 HI_ID_USR_START = HI_ID_LOADER_BUTT + 1, 172 HI_ID_USER, 173 HI_ID_IRQ, 174 HI_ID_USR_END = 0xFE, /* Caution: to avoid overflow */ 175 176 HI_ID_BUTT = 0xFF 177 } HI_MOD_ID_E; 178 179 180 #ifndef __DRV_STRUCT_IOCTL_H__ 181 #define __DRV_STRUCT_IOCTL_H__ 182 183 #ifndef __HI_DRV_STRUCT_H__ 184 #define __HI_DRV_STRUCT_H__ 185 186 #ifdef __cplusplus 187 #if __cplusplus 188 extern "C" { 189 #endif 190 #endif /* End of #ifdef __cplusplus */ 191 192 /*************************** Structure Definition ****************************/ 193 /** \addtogroup H_2_1_2 */ 194 /** @{ */ /** <!-- ¡¾Common data structure. CNcomment: General data structure */ 195 196 #define UMAP_NAME "hi_" 197 198 #define HI_MOD_SYS "sys" 199 #define UMAP_DEVNAME_SYS UMAP_NAME HI_MOD_SYS 200 #define UMAP_DEV_NUM_SYS 1 201 #define UMAP_MIN_MINOR_SYS 1 202 #define UMAP_MAX_MINOR_SYS (UMAP_MIN_MINOR_SYS + UMAP_DEV_NUM_SYS - 1) 203 204 #define HI_MOD_LOG "log" 205 #define UMAP_DEVNAME_LOG UMAP_NAME HI_MOD_LOG 206 #define UMAP_DEV_NUM_LOG 1 207 #define UMAP_MIN_MINOR_LOG (UMAP_MAX_MINOR_SYS + 1) 208 #define UMAP_MAX_MINOR_LOG (UMAP_MIN_MINOR_LOG + UMAP_DEV_NUM_LOG - 1) 209 210 #define HI_MOD_EVENT "low_delay" 211 #define UMAP_DEVNAME_EVENT UMAP_NAME HI_MOD_EVENT 212 #define UMAP_DEV_NUM_EVENT 1 213 #define UMAP_MIN_MINOR_EVENT (UMAP_MAX_MINOR_LOG + 1) 214 #define UMAP_MAX_MINOR_EVENT (UMAP_MIN_MINOR_EVENT + UMAP_DEV_NUM_EVENT - 1) 215 216 #define HI_MOD_STAT "stat" 217 #define UMAP_DEVNAME_STAT UMAP_NAME HI_MOD_STAT 218 #define UMAP_DEV_NUM_STAT 1 219 #define UMAP_MIN_MINOR_STAT (UMAP_MAX_MINOR_EVENT + 1) 220 #define UMAP_MAX_MINOR_STAT (UMAP_MIN_MINOR_STAT + UMAP_DEV_NUM_STAT - 1) 221 222 #define HI_MOD_MEM "mem" 223 224 #define HI_MOD_PROC "proc" 225 226 /* End of CMPI */ 227 /* Other modules */ 228 /* CNcomment: other modules */ 229 #define HI_MOD_CIPHER "cipher" 230 #define UMAP_DEVNAME_CIPHER UMAP_NAME HI_MOD_CIPHER 231 #define UMAP_DEV_NUM_CIPHER 1 232 #define UMAP_MIN_MINOR_CIPHER (UMAP_MAX_MINOR_STAT + 1) 233 #define UMAP_MAX_MINOR_CIPHER (UMAP_MIN_MINOR_CIPHER + UMAP_DEV_NUM_CIPHER - 1) 234 235 #define HI_MOD_DISP "disp" 236 #define UMAP_DEVNAME_DISP UMAP_NAME HI_MOD_DISP 237 #define UMAP_DEV_NUM_DISP 1 238 #define UMAP_MIN_MINOR_DISP (UMAP_MAX_MINOR_CIPHER + 1) 239 #define UMAP_MAX_MINOR_DISP (UMAP_MIN_MINOR_DISP + UMAP_DEV_NUM_DISP - 1) 240 241 #define HI_MOD_VO "vo" 242 #define UMAP_DEVNAME_VO UMAP_NAME HI_MOD_VO 243 #define UMAP_DEV_NUM_VO 1 244 #define UMAP_MIN_MINOR_VO (UMAP_MAX_MINOR_DISP + 1) 245 #define UMAP_MAX_MINOR_VO (UMAP_MIN_MINOR_VO + UMAP_DEV_NUM_VO - 1) 246 247 #define HI_MOD_VPSS "vpss" 248 #define UMAP_DEVNAME_VPSS UMAP_NAME HI_MOD_VPSS 249 #define UMAP_DEV_NUM_VPSS 1 250 #define UMAP_MIN_MINOR_VPSS (UMAP_MAX_MINOR_VO + 1) 251 #define UMAP_MAX_MINOR_VPSS (UMAP_MIN_MINOR_VPSS + UMAP_DEV_NUM_VPSS - 1) 252 253 #define HI_MOD_VDEC "vdec" 254 #define UMAP_DEVNAME_VDEC UMAP_NAME HI_MOD_VDEC 255 #define UMAP_DEV_NUM_VDEC 2 256 #define UMAP_MIN_MINOR_VDEC (UMAP_MAX_MINOR_VPSS + 1) 257 #define UMAP_MAX_MINOR_VDEC (UMAP_MIN_MINOR_VDEC + UMAP_DEV_NUM_VDEC - 1) 258 259 #define HI_MOD_AO "ao" 260 #define UMAP_DEVNAME_AO UMAP_NAME HI_MOD_AO 261 #define UMAP_DEV_NUM_AO 2 262 #define UMAP_MIN_MINOR_AO (UMAP_MAX_MINOR_VDEC + 1) 263 #define UMAP_MAX_MINOR_AO (UMAP_MIN_MINOR_AO + UMAP_DEV_NUM_AO - 1) 264 265 #define HI_MOD_AI "ai" 266 #define UMAP_DEVNAME_AI UMAP_NAME HI_MOD_AI 267 #define UMAP_DEV_NUM_AI 2 268 #define UMAP_MIN_MINOR_AI (UMAP_MAX_MINOR_AO + 1) 269 #define UMAP_MAX_MINOR_AI (UMAP_MIN_MINOR_AI + UMAP_DEV_NUM_AI - 1) 270 271 #define HI_MOD_AIAO "aiao" 272 #define UMAP_DEVNAME_AIAO UMAP_NAME HI_MOD_AIAO 273 #define UMAP_DEV_NUM_AIAO 2 274 #define UMAP_MIN_MINOR_AIAO (UMAP_MAX_MINOR_AI + 1) 275 #define UMAP_MAX_MINOR_AIAO (UMAP_MIN_MINOR_AIAO + UMAP_DEV_NUM_AIAO - 1) 276 277 #define HI_MOD_AENC "aenc" 278 #define UMAP_DEVNAME_AENC UMAP_NAME HI_MOD_AENC 279 #define UMAP_DEV_NUM_AENC 2 280 #define UMAP_MIN_MINOR_AENC (UMAP_MAX_MINOR_AIAO + 1) 281 #define UMAP_MAX_MINOR_AENC (UMAP_MIN_MINOR_AENC + UMAP_DEV_NUM_AENC - 1) 282 283 #define HI_MOD_AFLT "aflt" 284 #define UMAP_DEVNAME_AFLT UMAP_NAME HI_MOD_AFLT 285 #define UMAP_DEV_NUM_AFLT 2 286 #define UMAP_MIN_MINOR_AFLT (UMAP_MAX_MINOR_AENC + 1) 287 #define UMAP_MAX_MINOR_AFLT (UMAP_MIN_MINOR_AFLT + UMAP_DEV_NUM_AFLT - 1) 288 289 #define HI_MOD_ADSP "adsp" 290 #define UMAP_DEVNAME_ADSP UMAP_NAME HI_MOD_ADSP 291 #define UMAP_DEV_NUM_ADSP 2 292 #define UMAP_MIN_MINOR_ADSP (UMAP_MAX_MINOR_AFLT + 1) 293 #define UMAP_MAX_MINOR_ADSP (UMAP_MIN_MINOR_ADSP + UMAP_DEV_NUM_ADSP - 1) 294 295 #define HI_MOD_ADEC "adec" 296 #define UMAP_DEVNAME_ADEC UMAP_NAME HI_MOD_ADEC 297 #define UMAP_DEV_NUM_ADEC 2 298 #define UMAP_MIN_MINOR_ADEC (UMAP_MAX_MINOR_ADSP + 1) 299 #define UMAP_MAX_MINOR_ADEC (UMAP_MIN_MINOR_ADEC + UMAP_DEV_NUM_ADEC - 1) 300 301 #define HI_MOD_DEMUX "demux" 302 #define UMAP_DEVNAME_DEMUX UMAP_NAME HI_MOD_DEMUX 303 #define UMAP_DEV_NUM_DEMUX 1 304 #define UMAP_MIN_MINOR_DEMUX (UMAP_MAX_MINOR_ADEC + 1) 305 #define UMAP_MAX_MINOR_DEMUX (UMAP_MIN_MINOR_DEMUX + UMAP_DEV_NUM_DEMUX - 1) 306 307 #define HI_MOD_JPGD "jpgd" 308 #define UMAP_DEVNAME_JPGD UMAP_NAME HI_MOD_JPGD 309 #define UMAP_DEV_NUM_JPGD 1 310 #define UMAP_MIN_MINOR_JPGD (UMAP_MAX_MINOR_DEMUX + 1) 311 #define UMAP_MAX_MINOR_JPGD (UMAP_MIN_MINOR_JPGD + UMAP_DEV_NUM_JPGD - 1) 312 313 #define HI_MOD_SYNC "sync" 314 #define UMAP_DEVNAME_SYNC UMAP_NAME HI_MOD_SYNC 315 #define UMAP_DEV_NUM_SYNC 1 316 #define UMAP_MIN_MINOR_SYNC (UMAP_MAX_MINOR_JPGD + 1) 317 #define UMAP_MAX_MINOR_SYNC (UMAP_MIN_MINOR_SYNC + UMAP_DEV_NUM_SYNC - 1) 318 319 #define HI_MOD_AVPLAY "avplay" 320 #define UMAP_DEVNAME_AVPLAY UMAP_NAME HI_MOD_AVPLAY 321 #define UMAP_DEV_NUM_AVPLAY 1 322 #define UMAP_MIN_MINOR_AVPLAY (UMAP_MAX_MINOR_SYNC + 1) 323 #define UMAP_MAX_MINOR_AVPLAY (UMAP_MIN_MINOR_AVPLAY + UMAP_DEV_NUM_AVPLAY - 1) 324 325 #define HI_MOD_PVR "pvr" 326 #define UMAP_DEVNAME_PVR UMAP_NAME HI_MOD_PVR 327 #define UMAP_DEV_NUM_PVR 1 328 #define UMAP_MIN_MINOR_PVR (UMAP_MAX_MINOR_AVPLAY + 1) 329 #define UMAP_MAX_MINOR_PVR (UMAP_MIN_MINOR_PVR + UMAP_DEV_NUM_PVR - 1) 330 331 #define HI_MOD_HDMI "hdmi" 332 #define UMAP_DEVNAME_HDMI UMAP_NAME HI_MOD_HDMI 333 #define UMAP_DEV_NUM_HDMI 1 334 #define UMAP_MIN_MINOR_HDMI (UMAP_MAX_MINOR_PVR + 1) 335 #define UMAP_MAX_MINOR_HDMI (UMAP_MIN_MINOR_HDMI + UMAP_DEV_NUM_HDMI - 1) 336 337 #define HI_MOD_VI "vi" 338 #define UMAP_DEVNAME_VI UMAP_NAME HI_MOD_VI 339 #define UMAP_DEV_NUM_VI 1 340 #define UMAP_MIN_MINOR_VI (UMAP_MAX_MINOR_HDMI + 1) 341 #define UMAP_MAX_MINOR_VI (UMAP_MIN_MINOR_VI + UMAP_DEV_NUM_VI - 1) 342 343 #define HI_MOD_VENC "venc" 344 #define UMAP_DEVNAME_VENC UMAP_NAME HI_MOD_VENC 345 #define UMAP_DEV_NUM_VENC 2 346 #define UMAP_MIN_MINOR_VENC (UMAP_MAX_MINOR_VI + 1) 347 #define UMAP_MAX_MINOR_VENC (UMAP_MIN_MINOR_VENC + UMAP_DEV_NUM_VENC - 1) 348 349 #define HI_MOD_SIO_AI "sio_ai" 350 #define UMAP_DEVNAME_SIO_AI UMAP_NAME HI_MOD_SIO_AI 351 #define UMAP_DEV_NUM_SIO_AI 2 352 #define UMAP_MIN_MINOR_SIO_AI (UMAP_MAX_MINOR_VENC + 1) 353 #define UMAP_MAX_MINOR_SIO_AI (UMAP_MIN_MINOR_SIO_AI + UMAP_DEV_NUM_SIO_AI - 1) 354 355 #define HI_MOD_SIO_AO "sio_ao" 356 #define UMAP_DEVNAME_SIO_AO UMAP_NAME HI_MOD_SIO_AO 357 #define UMAP_DEV_NUM_SIO_AO 2 358 #define UMAP_MIN_MINOR_SIO_AO (UMAP_MAX_MINOR_SIO_AI + 1) 359 #define UMAP_MAX_MINOR_SIO_AO (UMAP_MIN_MINOR_SIO_AO + UMAP_DEV_NUM_SIO_AO - 1) 360 361 #define HI_MOD_DMA "dma" 362 #define UMAP_DEVNAME_DMA UMAP_NAME HI_MOD_DMA 363 #define UMAP_DEV_NUM_DMA 1 364 #define UMAP_MIN_MINOR_DMA (UMAP_MAX_MINOR_SIO_AO + 1) 365 #define UMAP_MAX_MINOR_DMA (UMAP_MIN_MINOR_DMA + UMAP_DEV_NUM_DMA - 1) 366 367 #define HI_MOD_AUDADP "audadp" 368 #define UMAP_DEVNAME_AUDADP UMAP_NAME HI_MOD_AUDADP 369 #define UMAP_DEV_NUM_AUDADP 1 370 #define UMAP_MIN_MINOR_AUDADP (UMAP_MAX_MINOR_DMA + 1) 371 #define UMAP_MAX_MINOR_AUDADP (UMAP_MIN_MINOR_AUDADP + UMAP_DEV_NUM_AUDADP - 1) 372 373 #define HI_MOD_HME "hme" 374 #define UMAP_DEVNAME_HME UMAP_NAME HI_MOD_HME 375 #define UMAP_DEV_NUM_HME 1 376 #define UMAP_MIN_MINOR_HME (UMAP_MAX_MINOR_AUDADP + 1) 377 #define UMAP_MAX_MINOR_HME (UMAP_MIN_MINOR_HME + UMAP_DEV_NUM_HME - 1) 378 379 #define HI_MOD_NDPT "ndpt" 380 #define UMAP_DEVNAME_NDPT UMAP_NAME HI_MOD_NDPT 381 #define UMAP_DEV_NUM_NDPT 1 382 #define UMAP_MIN_MINOR_NDPT (UMAP_MAX_MINOR_HME + 1) 383 #define UMAP_MAX_MINOR_NDPT (UMAP_MIN_MINOR_NDPT + UMAP_DEV_NUM_NDPT - 1) 384 385 #define HI_MOD_VP "vp" 386 #define UMAP_DEVNAME_VP UMAP_NAME HI_MOD_VP 387 #define UMAP_DEV_NUM_VP 1 388 #define UMAP_MIN_MINOR_VP (UMAP_MAX_MINOR_NDPT + 1) 389 #define UMAP_MAX_MINOR_VP (UMAP_MIN_MINOR_VP + UMAP_DEV_NUM_VP - 1) 390 391 /* ECS */ 392 #define HI_MOD_IR "ir" 393 #define UMAP_DEVNAME_IR UMAP_NAME HI_MOD_IR 394 #define UMAP_DEV_NUM_IR 1 395 #define UMAP_MIN_MINOR_IR (UMAP_MAX_MINOR_VP + 1) 396 #define UMAP_MAX_MINOR_IR (UMAP_MIN_MINOR_IR + UMAP_DEV_NUM_IR - 1) 397 398 #define HI_MOD_KEYLED "keyled" 399 #define UMAP_DEVNAME_KEYLED UMAP_NAME HI_MOD_KEYLED 400 #define UMAP_DEV_NUM_KEYLED 1 401 #define UMAP_MIN_MINOR_KEYLED (UMAP_MAX_MINOR_IR + 1) 402 #define UMAP_MAX_MINOR_KEYLED (UMAP_MIN_MINOR_KEYLED + UMAP_DEV_NUM_KEYLED - 1) 403 404 #define HI_MOD_LSADC "lsadc" 405 #define UMAP_DEVNAME_LSADC UMAP_NAME HI_MOD_LSADC 406 #define UMAP_DEV_NUM_LSADC 1 407 #define UMAP_MIN_MINOR_LSADC (UMAP_MAX_MINOR_KEYLED + 1) 408 #define UMAP_MAX_MINOR_LSADC (UMAP_MIN_MINOR_LSADC + UMAP_DEV_NUM_LSADC - 1) 409 410 #define HI_MOD_I2C "i2c" 411 #define UMAP_DEVNAME_I2C UMAP_NAME HI_MOD_I2C 412 #define UMAP_DEV_NUM_I2C 1 413 #define UMAP_MIN_MINOR_I2C (UMAP_MAX_MINOR_LSADC + 1) 414 #define UMAP_MAX_MINOR_I2C (UMAP_MIN_MINOR_I2C + UMAP_DEV_NUM_I2C - 1) 415 416 #define HI_MOD_TUNER "tuner" 417 #define UMAP_DEVNAME_TUNER UMAP_NAME HI_MOD_TUNER 418 #define UMAP_DEV_NUM_TUNER 1 419 #define UMAP_MIN_MINOR_TUNER (UMAP_MAX_MINOR_I2C + 1) 420 #define UMAP_MAX_MINOR_TUNER (UMAP_MIN_MINOR_TUNER + UMAP_DEV_NUM_TUNER - 1) 421 422 #define HI_MOD_SCI "sci" 423 #define UMAP_DEVNAME_SCI UMAP_NAME HI_MOD_SCI 424 #define UMAP_DEV_NUM_SCI 1 425 #define UMAP_MIN_MINOR_SCI (UMAP_MAX_MINOR_TUNER + 1) 426 #define UMAP_MAX_MINOR_SCI (UMAP_MIN_MINOR_SCI + UMAP_DEV_NUM_SCI - 1) 427 428 #define HI_MOD_PM "pm" 429 #define UMAP_DEVNAME_PM UMAP_NAME HI_MOD_PM 430 #define UMAP_DEV_NUM_PM 1 431 #define UMAP_MIN_MINOR_PM (UMAP_MAX_MINOR_SCI + 1) 432 #define UMAP_MAX_MINOR_PM (UMAP_MIN_MINOR_PM + UMAP_DEV_NUM_PM - 1) 433 434 #define HI_MOD_CA "ca" 435 #define UMAP_DEVNAME_CA UMAP_NAME HI_MOD_CA 436 #define UMAP_DEV_NUM_CA 1 437 #define UMAP_MIN_MINOR_CA (UMAP_MAX_MINOR_PM + 1) 438 #define UMAP_MAX_MINOR_CA (UMAP_MIN_MINOR_CA + UMAP_DEV_NUM_CA - 1) 439 440 #define HI_MOD_OTP "otp" 441 #define UMAP_DEVNAME_OTP UMAP_NAME HI_MOD_OTP 442 #define UMAP_DEV_NUM_OTP 1 443 #define UMAP_MIN_MINOR_OTP (UMAP_MAX_MINOR_CA + 1) 444 #define UMAP_MAX_MINOR_OTP (UMAP_MIN_MINOR_OTP + UMAP_DEV_NUM_OTP - 1) 445 446 #define HI_MOD_SVDEC "svdec" 447 #define UMAP_DEVNAME_SVDEC UMAP_NAME HI_MOD_SVDEC 448 #define UMAP_DEV_NUM_SVDEC 1 449 #define UMAP_MIN_MINOR_SVDEC (UMAP_MAX_MINOR_OTP + 1) 450 #define UMAP_MAX_MINOR_SVDEC (UMAP_MIN_MINOR_SVDEC + UMAP_DEV_NUM_SVDEC - 1) 451 452 #define HI_MOD_SETHDCP "sethdcp" 453 #define UMAP_DEVNAME_SETHDCP UMAP_NAME HI_MOD_SETHDCP 454 #define UMAP_DEV_NUM_SETHDCP 1 455 #define UMAP_MIN_MINOR_SETHDCP (UMAP_MAX_MINOR_SVDEC + 1) 456 #define UMAP_MAX_MINOR_SETHDCP (UMAP_MIN_MINOR_SETHDCP + UMAP_DEV_NUM_SETHDCP - 1) 457 458 #define HI_MOD_CI "ci" 459 #define UMAP_DEVNAME_CI UMAP_NAME HI_MOD_CI 460 #define UMAP_DEV_NUM_CI 1 461 #define UMAP_MIN_MINOR_CI (UMAP_MAX_MINOR_SETHDCP + 1) 462 #define UMAP_MAX_MINOR_CI (UMAP_MIN_MINOR_CI + UMAP_DEV_NUM_CI - 1) 463 464 #define HI_MOD_SUBT "subt" 465 #define UMAP_DEVNAME_SUBT UMAP_NAME HI_MOD_SUBT 466 #define UMAP_DEV_NUM_SUBT 1 467 #define UMAP_MIN_MINOR_SUBT (UMAP_MAX_MINOR_CI + 1) 468 #define UMAP_MAX_MINOR_SUBT (UMAP_MIN_MINOR_SUBT + UMAP_DEV_NUM_SUBT - 1) 469 470 #define HI_MOD_MEM2 "memmgr" 471 #define UMAP_DEVNAME_MEM2 UMAP_NAME HI_MOD_MEM2 472 #define UMAP_DEV_NUM_MEM2 1 473 #define UMAP_MIN_MINOR_MEM2 (UMAP_MAX_MINOR_SUBT + 1) 474 #define UMAP_MAX_MINOR_MEM2 (UMAP_MIN_MINOR_MEM2 + UMAP_DEV_NUM_MEM2 - 1) 475 476 #define HI_MOD_MODULE "module" 477 #define UMAP_DEVNAME_MODULE UMAP_NAME HI_MOD_MODULE 478 #define UMAP_DEV_NUM_MODULE 1 479 #define UMAP_MIN_MINOR_MODULE (UMAP_MAX_MINOR_MEM2 + 1) 480 #define UMAP_MAX_MINOR_MODULE (UMAP_MIN_MINOR_MODULE + UMAP_DEV_NUM_MODULE - 1) 481 482 #define HI_MOD_MLOG "mlog" 483 #define UMAP_DEVNAME_MLOG UMAP_NAME HI_MOD_MLOG 484 #define UMAP_DEV_NUM_MLOG 1 485 #define UMAP_MIN_MINOR_MLOG (UMAP_MAX_MINOR_MODULE + 1) 486 #define UMAP_MAX_MINOR_MLOG (UMAP_MIN_MINOR_MLOG + UMAP_DEV_NUM_MLOG - 1) 487 488 #define HI_MOD_MCE "mce" 489 #define UMAP_DEVNAME_MCE UMAP_NAME HI_MOD_MCE 490 #define UMAP_DEV_NUM_MCE 1 491 #define UMAP_MIN_MINOR_MCE (UMAP_MAX_MINOR_MLOG + 1) 492 #define UMAP_MAX_MINOR_MCE (UMAP_MIN_MINOR_MCE + UMAP_DEV_NUM_MCE - 1) 493 494 #define HI_MOD_PDM "pdm" 495 #define UMAP_DEVNAME_PDM UMAP_NAME HI_MOD_PDM 496 #define UMAP_DEV_NUM_PDM 1 497 #define UMAP_MIN_MINOR_PDM (UMAP_MAX_MINOR_MCE + 1) 498 #define UMAP_MAX_MINOR_PDM (UMAP_MIN_MINOR_PDM + UMAP_DEV_NUM_PDM - 1) 499 500 #define UMAP_DEV_NUM_TDE 1 501 #define UMAP_MIN_MINOR_TDE (UMAP_MAX_MINOR_PDM + 1) 502 #define UMAP_MAX_MINOR_TDE (UMAP_MIN_MINOR_TDE + UMAP_DEV_NUM_TDE - 1) 503 504 #define UMAP_DEV_NUM_HIFB 1 505 #define UMAP_MIN_MINOR_HIFB (UMAP_MAX_MINOR_TDE + 1) 506 #define UMAP_MAX_MINOR_HIFB (UMAP_MIN_MINOR_HIFB + UMAP_DEV_NUM_HIFB - 1) 507 508 #define UMAP_DEV_NUM_PNG 2 509 #define UMAP_MIN_MINOR_PNG (UMAP_MAX_MINOR_HIFB + 1) 510 #define UMAP_MAX_MINOR_PNG (UMAP_MIN_MINOR_PNG + UMAP_DEV_NUM_PNG - 1) 511 512 #define UMAP_DEV_NUM_JPEG 1 513 #define UMAP_MIN_MINOR_JPEG (UMAP_MAX_MINOR_PNG + 1) 514 #define UMAP_MAX_MINOR_JPEG (UMAP_MIN_MINOR_JPEG + UMAP_DEV_NUM_JPEG - 1) 515 516 #define UMAP_DEV_NUM_JPGE 1 517 #define UMAP_MIN_MINOR_JPGE (UMAP_MAX_MINOR_JPEG + 1) 518 #define UMAP_MAX_MINOR_JPGE (UMAP_MIN_MINOR_JPGE + UMAP_DEV_NUM_JPGE - 1) 519 520 #define HI_MOD_WDG "wdg" 521 #define UMAP_DEVNAME_WDG UMAP_NAME HI_MOD_WDG 522 #define UMAP_DEV_NUM_WDG 1 523 #define UMAP_MIN_MINOR_WDG (UMAP_MAX_MINOR_JPGE + 1) 524 #define UMAP_MAX_MINOR_WDG (UMAP_MIN_MINOR_WDG + UMAP_DEV_NUM_WDG - 1) 525 526 #define HI_MOD_GPIO "gpio" 527 #define UMAP_DEVNAME_GPIO UMAP_NAME HI_MOD_GPIO 528 #define UMAP_DEV_NUM_GPIO 1 529 #define UMAP_MIN_MINOR_GPIO (UMAP_MAX_MINOR_WDG + 1) 530 #define UMAP_MAX_MINOR_GPIO (UMAP_MIN_MINOR_GPIO + UMAP_DEV_NUM_GPIO - 1) 531 532 #define HI_MOD_SIL9293 "sil9293" 533 #define UMAP_DEVNAME_SIL9293 UMAP_NAME HI_MOD_SIL9293 534 #define UMAP_DEV_NUM_SIL9293 1 535 #define UMAP_MIN_MINOR_SIL9293 (UMAP_MAX_MINOR_GPIO + 1) 536 #define UMAP_MAX_MINOR_SIL9293 (UMAP_MIN_MINOR_SIL9293 + UMAP_DEV_NUM_SIL9293 - 1) 537 538 #define HI_MOD_PQ "pq" 539 #define UMAP_DEVNAME_PQ UMAP_NAME HI_MOD_PQ 540 #define UMAP_DEV_NUM_PQ 1 541 #define UMAP_MIN_MINOR_PQ (UMAP_MAX_MINOR_SIL9293 + 1) 542 #define UMAP_MAX_MINOR_PQ (UMAP_MIN_MINOR_PQ + UMAP_DEV_NUM_PQ - 1) 543 544 #define HI_MOD_PWM "pwm" 545 #define UMAP_DEVNAME_PWM UMAP_NAME HI_MOD_PWM 546 #define UMAP_DEV_NUM_PWM 1 547 #define UMAP_MIN_MINOR_PWM (UMAP_MAX_MINOR_PQ + 1) 548 #define UMAP_MAX_MINOR_PWM (UMAP_MIN_MINOR_PWM + UMAP_DEV_NUM_PWM - 1) 549 550 #define HI_MOD_TVD "tvd" 551 #define UMAP_DEVNAME_TVD UMAP_NAME HI_MOD_TVD 552 #define UMAP_DEV_NUM_TVD 1 553 #define UMAP_MIN_MINOR_TVD (UMAP_MAX_MINOR_PWM + 1) 554 #define UMAP_MAX_MINOR_TVD (UMAP_MIN_MINOR_TVD + UMAP_DEV_NUM_TVD - 1) 555 556 #define HI_MOD_PANEL "panel" 557 #define UMAP_DEVNAME_PANEL UMAP_NAME HI_MOD_PANEL 558 #define UMAP_DEV_NUM_PANEL 1 559 #define UMAP_MIN_MINOR_PANEL (UMAP_MAX_MINOR_TVD + 1) 560 #define UMAP_MAX_MINOR_PANEL (UMAP_MIN_MINOR_PANEL + UMAP_DEV_NUM_PANEL - 1) 561 562 #define HI_MOD_VICAP "vicap" 563 #define UMAP_DEVNAME_VICAP UMAP_NAME HI_MOD_VICAP 564 #define UMAP_DEV_NUM_VICAP 1 565 #define UMAP_MIN_MINOR_VICAP (UMAP_MAX_MINOR_PANEL + 1) 566 #define UMAP_MAX_MINOR_VICAP (UMAP_MIN_MINOR_VICAP + UMAP_DEV_NUM_VICAP - 1) 567 568 #define HI_MOD_SIF "sif" 569 #define UMAP_DEVNAME_SIF UMAP_NAME HI_MOD_SIF 570 #define UMAP_DEV_NUM_SIF 1 571 #define UMAP_MIN_MINOR_SIF (UMAP_MIN_MINOR_VICAP + 1) 572 #define UMAP_MAX_MINOR_SIF (UMAP_MIN_MINOR_SIF + UMAP_DEV_NUM_SIF - 1) 573 574 #define HI_MOD_VFE "vfe" 575 #define UMAP_DEVNAME_VFE UMAP_NAME HI_MOD_VFE 576 #define UMAP_DEV_NUM_VFE 1 577 #define UMAP_MIN_MINOR_VFE (UMAP_MAX_MINOR_SIF + 1) 578 #define UMAP_MAX_MINOR_VFE (UMAP_MIN_MINOR_VFE + UMAP_DEV_NUM_VFE - 1) 579 580 #define HI_MOD_HDDEC "hddec" 581 #define UMAP_DEVNAME_HDDEC UMAP_NAME HI_MOD_HDDEC 582 #define UMAP_DEV_NUM_HDDEC 1 583 #define UMAP_MIN_MINOR_HDDEC (UMAP_MAX_MINOR_VFE + 1) 584 #define UMAP_MAX_MINOR_HDDEC (UMAP_MIN_MINOR_HDDEC + UMAP_DEV_NUM_HDDEC - 1) 585 586 #define HI_MOD_HDMIRX "hdmirx" 587 #define UMAP_DEVNAME_HDMIRX UMAP_NAME HI_MOD_HDMIRX 588 #define UMAP_DEV_NUM_HDMIRX 1 589 #define UMAP_MIN_MINOR_HDMIRX (UMAP_MAX_MINOR_HDDEC + 1) 590 #define UMAP_MAX_MINOR_HDMIRX (UMAP_MIN_MINOR_HDMIRX + UMAP_DEV_NUM_HDMIRX - 1) 591 592 #define HI_MOD_AMP "amp" 593 #define UMAP_DEVNAME_AMP UMAP_NAME HI_MOD_AMP 594 #define UMAP_DEV_NUM_AMP 1 595 #define UMAP_MIN_MINOR_AMP (UMAP_MAX_MINOR_HDMIRX + 1) 596 #define UMAP_MAX_MINOR_AMP (UMAP_MIN_MINOR_AMP + UMAP_DEV_NUM_AMP - 1) 597 598 #define HI_MOD_VPU "vpu" 599 #define UMAP_DEVNAME_VPU UMAP_NAME HI_MOD_VPU 600 #define UMAP_DEV_NUM_VPU 1 601 #define UMAP_MIN_MINOR_VPU (UMAP_MAX_MINOR_AMP + 1) 602 #define UMAP_MAX_MINOR_VPU (UMAP_MIN_MINOR_VPU + UMAP_DEV_NUM_VPU - 1) 603 604 #define HI_MOD_FDMNG "fdmng" 605 #define UMAP_DEVNAME_FDMNG UMAP_NAME HI_MOD_FDMNG 606 #define UMAP_DEV_NUM_FDMNG 1 607 #define UMAP_MIN_MINOR_FDMNG (UMAP_MAX_MINOR_VPU + 1) 608 #define UMAP_MAX_MINOR_FDMNG (UMAP_MIN_MINOR_FDMNG + UMAP_DEV_NUM_FDMNG - 1) 609 610 #define HI_MOD_CUSTOM "custom" 611 #define UMAP_DEVNAME_CUSTOM UMAP_NAME HI_MOD_CUSTOM 612 #define UMAP_DEV_NUM_CUSTOM 1 613 #define UMAP_MIN_MINOR_CUSTOM (UMAP_MIN_MINOR_FDMNG + 1) 614 #define UMAP_MAX_MINOR_CUSTOM (UMAP_MIN_MINOR_CUSTOM + UMAP_DEV_NUM_CUSTOM - 1) 615 616 #define HI_MOD_VBI "vbi" 617 #define UMAP_DEVNAME_VBI UMAP_NAME HI_MOD_VBI 618 #define UMAP_DEV_NUM_VBI 1 619 #define UMAP_MIN_MINOR_VBI (UMAP_MAX_MINOR_CUSTOM + 1) 620 #define UMAP_MAX_MINOR_VBI (UMAP_MIN_MINOR_VBI + UMAP_DEV_NUM_VBI - 1) 621 622 #define HI_MOD_RM "rm" 623 #define UMAP_DEVNAME_RM UMAP_NAME HI_MOD_RM 624 #define UMAP_DEV_NUM_RM 1 625 #define UMAP_MIN_MINOR_RM (UMAP_MAX_MINOR_VBI + 1) 626 #define UMAP_MAX_MINOR_RM (UMAP_MIN_MINOR_RM + UMAP_DEV_NUM_RM - 1) 627 628 #define HI_MOD_SPI "spi" 629 #define UMAP_DEVNAME_SPI UMAP_NAME HI_MOD_SPI 630 #define UMAP_DEV_NUM_SPI 1 631 #define UMAP_MIN_MINOR_SPI (UMAP_MIN_MINOR_RM + 1) 632 #define UMAP_MAX_MINOR_SPI (UMAP_MIN_MINOR_SPI + UMAP_DEV_NUM_SPI - 1) 633 634 #define HI_MOD_MEMC "memc" 635 #define UMAP_DEVNAME_MEMC UMAP_NAME HI_MOD_MEMC 636 #define UMAP_DEV_NUM_MEMC 1 637 #define UMAP_MIN_MINOR_MEMC (UMAP_MIN_MINOR_SPI + 1) 638 #define UMAP_MAX_MINOR_MEMC (UMAP_MIN_MINOR_MEMC + UMAP_DEV_NUM_MEMC - 1) 639 640 #define HI_MOD_VFMW "vfmw" 641 #define UMAP_DEVNAME_VFMW UMAP_NAME HI_MOD_VFMW 642 #define UMAP_DEV_NUM_VFMW 1 643 #define UMAP_MIN_MINOR_VFMW (UMAP_MIN_MINOR_MEMC + 1) 644 #define UMAP_MAX_MINOR_VFMW (UMAP_MIN_MINOR_VFMW + UMAP_DEV_NUM_VFMW - 1) 645 646 #define HI_MOD_MDDRC "mddrc" 647 #define UMAP_DEVNAME_MDDRC UMAP_NAME HI_MOD_MDDRC 648 #define UMAP_DEV_NUM_MDDRC 1 649 #define UMAP_MIN_MINOR_MDDRC (UMAP_MIN_MINOR_VFMW + 1) 650 #define UMAP_MAX_MINOR_MDDRC (UMAP_MIN_MINOR_MDDRC + UMAP_DEV_NUM_MDDRC - 1) 651 #define UMAP_DEV_NUM_TOTAL UMAP_MAX_MINOR_MDDRC 652 653 #define HI_MOD_VPLUGIN "vplugin" 654 #define UMAP_DEVNAME_VPLUGIN UMAP_NAME HI_MOD_VPLUGIN 655 #define UMAP_DEV_NUM_VPLUGIN 1 656 #define UMAP_MIN_MINOR_VPLUGIN (UMAP_MIN_MINOR_MDDRC + 1) 657 #define UMAP_MAX_MINOR_VPLUGIN (UMAP_MIN_MINOR_VPLUGIN + UMAP_DEV_NUM_VPLUGIN - 1) 658 659 /** @} */ /** <!-- ==== Structure Definition End ==== */ 660 661 #define IOC_TYPE_DEMUX 'I' 662 #define IOC_TYPE_MEM 'J' 663 #define IOC_TYPE_RELEASE 'K' 664 #define IOC_TYPE_EVENT 'L' 665 #define IOC_TYPE_SYS 'M' 666 #define IOC_TYPE_STAT 'N' 667 #define IOC_TYPE_MCC 'O' 668 #define IOC_TYPE_TDE 'P' 669 670 #define IOC_TYPE_CIPHER 'Q' 671 #define IOC_TYPE_AVPLAY 'R' 672 673 #define IOC_TYPE_VI 'S' 674 #define IOC_TYPE_VENC 'T' 675 #define IOC_TYPE_CA 'U' 676 #define IOC_TYPE_OTP 'V' 677 678 #define IOC_TYPE_VP 'W' 679 #define IOC_TYPE_VICAP 'X' 680 #define IOC_TYPE_SIF 'Y' 681 682 #ifdef __cplusplus 683 #if __cplusplus 684 } 685 #endif 686 #endif /* __cplusplus */ 687 688 #endif 689 #endif 690 691 #ifdef __cplusplus 692 #if __cplusplus 693 } 694 #endif 695 #endif /* __cplusplus */ 696 697 #endif 698 699 /** @} */ /** <!-- ==== group Definition end ==== */ 700 701