• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2020 HiSilicon (Shanghai) Technologies CO., LIMITED.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include <stdio.h>
17 
18 #ifdef __cplusplus
19 #if __cplusplus
20 extern "C" {
21 #endif
22 #endif /* End of #ifdef __cplusplus */
23 
BASE_exit(void)24 static void BASE_exit(void)
25 {
26     extern void base_mod_exit(void);
27     base_mod_exit();
28 }
29 
MMZ_exit(void)30 static void MMZ_exit(void)
31 {
32     extern void media_mem_exit(void);
33     media_mem_exit();
34 }
SYS_exit(void)35 static void SYS_exit(void)
36 {
37     extern void sys_mod_exit(void);
38     sys_mod_exit();
39 }
40 
ISP_exit(void)41 static void ISP_exit(void)
42 {
43     extern void isp_mod_exit(void);
44     isp_mod_exit();
45 }
46 
VI_exit(void)47 static void VI_exit(void)
48 {
49     extern void vi_mod_exit(void);
50     vi_mod_exit();
51 }
52 
RGN_exit(void)53 static void RGN_exit(void)
54 {
55     extern void rgn_mod_exit(void);
56     rgn_mod_exit();
57 }
58 
GDC_exit(void)59 static void GDC_exit(void)
60 {
61     extern void gdc_mod_exit(void);
62     gdc_mod_exit();
63 }
64 
DIS_exit(void)65 static void DIS_exit(void)
66 {
67     extern void dis_mod_exit(void);
68     dis_mod_exit();
69 }
70 
VGS_exit(void)71 static void VGS_exit(void)
72 {
73     extern void vgs_mod_exit(void);
74     vgs_mod_exit();
75 }
76 
VPSS_exit(void)77 static void VPSS_exit(void)
78 {
79     extern void vpss_mod_exit(void);
80     vpss_mod_exit();
81 }
82 
VO_exit(void)83 static void VO_exit(void)
84 {
85     extern void vou_module_exit(void);
86     vou_module_exit();
87 }
88 
TDE_exit(void)89 static void TDE_exit(void)
90 {
91     extern void tde_mod_exit(void);
92     tde_mod_exit();
93 }
94 
HIFB_exit(void)95 static void HIFB_exit(void)
96 {
97     extern void hifb_cleanup(void);
98 
99     hifb_cleanup();
100 }
101 
HDMI_exit(void)102 static void HDMI_exit(void)
103 {
104     extern hi_void HDMI_DRV_ModExit(void);
105     HDMI_DRV_ModExit();
106 }
107 
MIPIRX_exit(void)108 static void MIPIRX_exit(void)
109 {
110     extern void mipi_rx_mod_exit(void);
111     mipi_rx_mod_exit();
112 }
113 
MIPITX_exit(void)114 static void MIPITX_exit(void)
115 {
116     extern void mipi_tx_module_exit(void);
117     mipi_tx_module_exit();
118 }
119 
RC_exit(void)120 static void RC_exit(void)
121 {
122     extern void rc_mod_exit(void);
123     rc_mod_exit();
124 }
125 
VENC_exit(void)126 static void VENC_exit(void)
127 {
128     extern void venc_mod_exit(void);
129     venc_mod_exit();
130 }
131 
CHNL_exit(void)132 static void CHNL_exit(void)
133 {
134     extern void chnl_mod_exit(void);
135     chnl_mod_exit();
136 }
137 
VEDU_exit(void)138 static void VEDU_exit(void)
139 {
140     extern void vedu_mod_exit(void);
141     vedu_mod_exit();
142 }
143 
H264e_exit(void)144 static void H264e_exit(void)
145 {
146     extern void h264e_mod_exit(void);
147     h264e_mod_exit();
148 }
149 
H265e_exit(void)150 static void H265e_exit(void)
151 {
152     extern  void h265e_mod_exit(void);
153     h265e_mod_exit();
154 }
155 
JPEGE_exit(void)156 static void JPEGE_exit(void)
157 {
158     extern void jpege_mod_exit(void);
159     jpege_mod_exit();
160 }
161 
PWM_exit(void)162 static void PWM_exit(void)
163 {
164     extern void pwm_exit(void);
165     pwm_exit();
166 }
167 
PIRIS_exit(void)168 static void PIRIS_exit(void)
169 {
170     extern void piris_exit(void);
171 
172     piris_exit();
173 }
174 
hi_sensor_spi_exit(void)175 static void hi_sensor_spi_exit(void)
176 {
177     extern void sensor_spi_dev_exit(void);
178     sensor_spi_dev_exit();
179 }
180 
hi_sensor_i2c_exit(void)181 static void hi_sensor_i2c_exit(void)
182 {
183     extern void hi_dev_exit(void);
184     hi_dev_exit();
185 }
186 
JPEGD_exit(void)187 static void JPEGD_exit(void)
188 {
189     extern void jpegd_mod_exit(void);
190     jpegd_mod_exit();
191 }
192 
VFMW_exit(void)193 static void VFMW_exit(void)
194 {
195     extern void vfmw_mod_exit(void);
196     vfmw_mod_exit();
197 }
198 
VDEC_exit(void)199 static void VDEC_exit(void)
200 {
201     extern void vdec_mod_exit(void);
202     vdec_mod_exit();
203 }
204 
IVE_exit(void)205 static void IVE_exit(void)
206 {
207     extern void ive_mod_exit(void);
208     ive_mod_exit();
209 }
210 
NNIE_exit(void)211 static void NNIE_exit(void)
212 {
213     extern void nnie_mod_exit(void);
214     nnie_mod_exit();
215 }
216 
Cipher_exit(void)217 static void Cipher_exit(void)
218 {
219     extern void cipher_drv_mod_exit(void);
220     cipher_drv_mod_exit();
221 }
222 
HI_USER_exit(void)223 static void HI_USER_exit(void)
224 {
225     extern void hi_user_exit(void);
226     hi_user_exit();
227 }
228 
AiaoMod_exit(void)229 static void AiaoMod_exit(void)
230 {
231     extern void aiao_mod_exit(void);
232     aiao_mod_exit();
233 }
234 
AiMod_exit(void)235 static void AiMod_exit(void)
236 {
237     extern void ai_mod_exit(void);
238     ai_mod_exit();
239 }
240 
AoMod_exit(void)241 static void AoMod_exit(void)
242 {
243     extern void ao_mod_exit(void);
244     ao_mod_exit();
245 }
246 
AencMod_exit(void)247 static void AencMod_exit(void)
248 {
249     extern void aenc_mod_exit(void);
250     aenc_mod_exit();
251 }
252 
AdecMod_exit(void)253 static void AdecMod_exit(void)
254 {
255     extern void adec_mod_exit(void);
256     adec_mod_exit();
257 }
258 
AcodecMod_exit(void)259 static void AcodecMod_exit(void)
260 {
261     extern void acodec_mod_exit(void);
262     acodec_mod_exit();
263 }
264 
remove_audio(void)265 static void remove_audio(void)
266 {
267     AcodecMod_exit();
268     AdecMod_exit();
269     AencMod_exit();
270     AoMod_exit();
271     AiMod_exit();
272     AiaoMod_exit();
273 }
274 
275 extern void osal_proc_exit(void);
276 
SDK_exit(void)277 void SDK_exit(void)
278 {
279     HI_USER_exit();
280     Cipher_exit();
281     MIPITX_exit();
282     MIPIRX_exit();
283     HDMI_exit();
284     hi_sensor_spi_exit();
285     hi_sensor_i2c_exit();
286     PIRIS_exit();
287     PWM_exit();
288 
289     remove_audio();
290 
291     HIFB_exit();
292     TDE_exit();
293     NNIE_exit();
294     IVE_exit();
295     VDEC_exit();
296     VFMW_exit();
297     JPEGD_exit();
298     JPEGE_exit();
299     H265e_exit();
300     H264e_exit();
301     VENC_exit();
302     RC_exit();
303     VEDU_exit();
304     CHNL_exit();
305 
306     VO_exit();
307     VPSS_exit();
308     ISP_exit();
309     VI_exit();
310     DIS_exit();
311     VGS_exit();
312     GDC_exit();
313     RGN_exit();
314 
315     SYS_exit();
316     BASE_exit();
317     MMZ_exit();
318     osal_proc_exit();
319 
320     printf("SDK exit ok...\n");
321 }
322 
323 
324 #ifdef __cplusplus
325 #if __cplusplus
326 }
327 #endif
328 #endif /* End of #ifdef __cplusplus */
329