• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2021 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 #ifndef __HI_MOD_PARAM__
20 #define __HI_MOD_PARAM__
21 
22 #include "hi_type.h"
23 #include "hi_defines.h"
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
29 typedef struct hi_vgs_module_params_s {
30     HI_U32 u32_max_vgs_job;
31     HI_U32 u32_max_vgs_task;
32     HI_U32 u32_max_vgs_node;
33     HI_U32 au32_vgs_en[VGS_IP_NUM];
34     HI_BOOL b_vgs_hdr_support;
35     HI_BOOL b_vgs_exit_in_sys;
36 } vgs_module_params_s;
37 
38 typedef struct hi_gdc_module_params_s {
39     HI_U32 u32_max_gdc_job;
40     HI_U32 u32_max_gdc_task;
41     HI_U32 u32_max_gdc_node;
42     HI_U32 au32_gdc_en[GDC_IP_NUM];
43 } gdc_module_params_s;
44 
45 typedef struct hivdec_module_params_s {
46     HI_U32 u32_vdec_max_chn_num;
47     HI_BOOL b_vdec_hfr;
48 } vdec_module_params_s;
49 
50 typedef struct hi_ive_module_params_s {
51     HI_BOOL b_save_power_en;
52     HI_U16  u16_ive_node_num;
53     HI_U16  u16_rsv;
54 } ive_module_params_s;
55 
56 typedef struct hi_svp_nnie_module_params_s {
57     HI_BOOL b_save_power_en;
58     HI_U16 u16_nnie_tsk_buf_num;
59 } svp_nnie_module_params_s;
60 
61 
62 typedef struct hi_h265e_module_params_s {
63     HI_U32 u32_feature_enable;
64 } h265e_module_params_s;
65 
66 typedef struct hi_venc_module_params_s {
67     HI_U32 u32_venc_max_chn_num;
68 } venc_module_params_s;
69 
70 typedef struct hi_vfmw_module_params_s {
71     HI_S32 s32_vfmw_max_chn_num;
72 } vfmw_module_params_s;
73 
74 typedef struct hi_acodec_module_params_s {
75     HI_U32  u32_init_delay_timems;
76 }acodec_module_params_s;
77 
78 #ifdef __cplusplus
79 }
80 #endif /* __cplusplus */
81 
82 #endif /* __HI_MOD_PARAM__ */
83