gr55xx_hal_br.h
Go to the documentation of this file.
1 /**
2  ****************************************************************************************
3  *
4  * @file gr55xx_hal_br.h
5  * @author BLE Driver Team
6  * @brief This file contains all the functions prototypes for the HAL
7  * Bridge module driver.
8  *
9  ****************************************************************************************
10  * @attention
11  #####Copyright (c) 2019 GOODIX
12  All rights reserved.
13 
14  Redistribution and use in source and binary forms, with or without
15  modification, are permitted provided that the following conditions are met:
16  * Redistributions of source code must retain the above copyright
17  notice, this list of conditions and the following disclaimer.
18  * Redistributions in binary form must reproduce the above copyright
19  notice, this list of conditions and the following disclaimer in the
20  documentation and/or other materials provided with the distribution.
21  * Neither the name of GOODIX nor the names of its contributors may be used
22  to endorse or promote products derived from this software without
23  specific prior written permission.
24 
25  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28  ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
29  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35  POSSIBILITY OF SUCH DAMAGE.
36  ****************************************************************************************
37  */
38 
39 /** @addtogroup PERIPHERAL Peripheral Driver
40  * @{
41  */
42 
43 /** @addtogroup HAL_DRIVER HAL Driver
44  * @{
45  */
46 
47 /** @defgroup HAL_BR HAL_BR
48  * @brief HAL Bridge module driver.
49  * @{
50  */
51 
52 /* Define to prevent recursive inclusion -------------------------------------*/
53 #ifndef __GR55xx_HAL_BR_H__
54 #define __GR55xx_HAL_BR_H__
55 
56 #ifdef __cplusplus
57 extern "C" {
58 #endif
59 
60 /* Includes ------------------------------------------------------------------*/
61 #include "gr55xx_hal.h"
62 
63 /** @addtogroup HAL_HAL_BR_CALLBACK_STRUCTURES Callback Structures
64  * @{
65  */
66 
67 /** @defgroup HAL_HAL_BR_Callback Callback
68  * @{
69  */
70 
71 /**
72  * @brief HAL_HAL Callback function definition
73  */
74 
75 typedef struct _hal_callback
76 {
77  void (*msp_init)(void); /**< HAL init MSP callback */
78  void (*msp_deinit)(void); /**< HAL de-init MSP callback */
79  void (*systick_callback)(void); /**< HAL systick callback */
81 
82 /** @} */
83 
84 /** @} */
85 
86 /** @addtogroup HAL_HAL_BR_DRIVER_FUNCTIONS Functions
87  * @{
88  */
89 
90 /** @addtogroup HAL_BR_Exported_Functions_Group1 Initialization, De-initialization \
91  * and Callback registration Functions
92  * @brief Initialization , de-initialization and Callback registration Functions
93  * @{
94  */
95 
96 /**
97  ****************************************************************************************
98  * @brief This function configures time base source, NVIC and Low level hardware.
99  *
100  * @note This function is called at the beginning of program after reset and before
101  * the clock configuration.
102  * The SysTick configuration is based on AHB clock.
103  * When the time base configuration is done, time base tick starts incrementing.
104  * In the default implementation, SysTick is used as source of time base.
105  * The tick variable is incremented each 1ms in its ISR.
106  * The function will call the hal_init function to initialize the HAL.
107  *
108  * @retval ::HAL_OK: Operation is OK.
109  * @retval ::HAL_ERROR: Parameter error or operation not supported.
110  * @retval ::HAL_BUSY: Driver is busy.
111  * @retval ::HAL_TIMEOUT: Timeout occurred.
112  ****************************************************************************************
113  */
115 
116 /**
117  ****************************************************************************************
118  * @brief This function de-initializes common part of the HAL and stops the source
119  * of time base.
120  *
121  * @note This function is optional.
122  * The function will call the hal_deinit function to De-initialize the HAL.
123  *
124  * @retval ::HAL_OK: Operation is OK.
125  * @retval ::HAL_ERROR: Parameter error or operation not supported.
126  * @retval ::HAL_BUSY: Driver is busy.
127  * @retval ::HAL_TIMEOUT: Timeout occurred.
128  ****************************************************************************************
129  */
131 
132 /**
133  ****************************************************************************************
134  * @brief This function registers the callback function to the ROM area.
135  *
136  * @note This function needs to be called before hal_init.
137  *
138  * @param[in] hal_callback: Pointer to callback structure function. @ref hal_callback_t
139  ****************************************************************************************
140  */
142 
143 #ifdef HAL_ADC_MODULE_ENABLED
144 
145 /**
146  ****************************************************************************************
147  * @brief Initialize the ADC according to the specified parameters
148  * in the adc_init_t and initialize the associated handle.
149  *
150  * @param[in] p_adc: Pointer to an ADC handle which contains the configuration information for
151  * the specified ADC module.
152  *
153  * @note The function will call the hal_adc_init function to initialize the HAL ADC.
154  *
155  * @retval ::HAL_OK: Operation is OK.
156  * @retval ::HAL_ERROR: Parameter error or operation not supported.
157  * @retval ::HAL_BUSY: Driver is busy.
158  * @retval ::HAL_TIMEOUT: Timeout occurred.
159  ****************************************************************************************
160  */
162 
163 /**
164  ****************************************************************************************
165  * @brief De-initialize the ADC peripheral.
166  *
167  * @param[in] p_adc: Pointer to an ADC handle which contains the configuration information for
168  * the specified ADC module.
169  *
170  * @note The function will call the hal_adc_deinit function to De-initialize the HAL ADC.
171  *
172  * @retval ::HAL_OK: Operation is OK.
173  * @retval ::HAL_ERROR: Parameter error or operation not supported.
174  * @retval ::HAL_BUSY: Driver is busy.
175  * @retval ::HAL_TIMEOUT: Timeout occurred.
176  ****************************************************************************************
177  */
179 
180 /**
181  ****************************************************************************************
182  * @brief This function registers the callback function to the ROM area.
183  *
184  * @note This function needs to be called before hal_adc_init.
185  *
186  * @param[in] adc_callback: Pointer to callback structure function. @ref adc_callback_t
187  ****************************************************************************************
188  */
190 
191 #endif /* HAL_ADC_MODULE_ENABLED */
192 
193 
194 #ifdef HAL_AES_MODULE_ENABLED
195 
196 /**
197  ****************************************************************************************
198  * @brief Initialize the AES according to the specified parameters
199  * in the aes_init_t and initialize the associated handle.
200  *
201  * @param[in] p_aes: Pointer to an AES handle which contains the configuration
202  * information for the specified AES module.
203  *
204  * @note The function will call the hal_aes_init function to initialize the HAL AES.
205  *
206  * @retval ::HAL_OK: Operation is OK.
207  * @retval ::HAL_ERROR: Parameter error or operation not supported.
208  * @retval ::HAL_BUSY: Driver is busy.
209  * @retval ::HAL_TIMEOUT: Timeout occurred.
210  ****************************************************************************************
211  */
213 
214 /**
215  ****************************************************************************************
216  * @brief De-initialize the AES peripheral.
217  *
218  * @param[in] p_aes: Pointer to an AES handle which contains the configuration
219  * information for the specified AES module.
220  *
221  * @note The function will call the hal_aes_denit function to De-initialize the HAL AES.
222  *
223  * @retval ::HAL_OK: Operation is OK.
224  * @retval ::HAL_ERROR: Parameter error or operation not supported.
225  * @retval ::HAL_BUSY: Driver is busy.
226  * @retval ::HAL_TIMEOUT: Timeout occurred.
227  ****************************************************************************************
228  */
230 
231 /**
232  ****************************************************************************************
233  * @brief This function registers the callback function to the ROM area.
234  *
235  * @note This function needs to be called before hal_aes_init.
236  *
237  * @param[in] aes_callback: Pointer to callback structure function. @ref aes_callback_t
238  ****************************************************************************************
239  */
241 
242 #endif /* HAL_AES_MODULE_ENABLED */
243 
244 
245 #ifdef HAL_AON_GPIO_MODULE_ENABLED
246 
247 /**
248  ****************************************************************************************
249  * @brief Initialize the AON_GPIOx peripheral according to the specified parameters in the @ref aon_gpio_init_t.
250  *
251  * @note The function will call the hal_aon_gpio_init function to initialize the HAL AON GPIO.
252  *
253  * @param[in] p_aon_gpio_init: Pointer to an @ref aon_gpio_init_t structure that contains
254  * the configuration information for the specified AON_GPIO peripheral port.
255  ****************************************************************************************
256  */
257 void hal_aon_gpio_init_ext(aon_gpio_init_t *p_aon_gpio_init);
258 
259 /**
260  ****************************************************************************************
261  * @brief De-initialize the AON_GPIOx peripheral registers to their default reset values.
262  *
263  * @note The function will call the hal_aon_gpio_deinit function to De-initialize the HAL AON GPIO.
264  *
265  * @param[in] aon_gpio_pin: Specifies the port bit to be written.
266  * This parameter can be a combination of the following values:
267  * @arg @ref AON_GPIO_PIN_0
268  * @arg @ref AON_GPIO_PIN_1
269  * @arg @ref AON_GPIO_PIN_2
270  * @arg @ref AON_GPIO_PIN_3
271  * @arg @ref AON_GPIO_PIN_4
272  * @arg @ref AON_GPIO_PIN_5
273  * @arg @ref AON_GPIO_PIN_ALL
274  ****************************************************************************************
275  */
276 void hal_aon_gpio_deinit_ext(uint32_t aon_gpio_pin);
277 
278 /**
279  ****************************************************************************************
280  * @brief This function registers the callback function to the ROM area.
281  *
282  * @note This function needs to be called before hal_aon_gpio_init.
283  *
284  * @param[in] aon_gpio_callback: Pointer to callback structure function. @ref aon_gpio_callback_t
285  ****************************************************************************************
286  */
288 
289 #endif /* HAL_AON_GPIO_MODULE_ENABLED */
290 
291 
292 #ifdef HAL_AON_WDT_MODULE_ENABLED
293 
294 /**
295  ****************************************************************************************
296  * @brief Initialize the AON_WDT according to the specified parameters in the wdt_init_t
297  * of associated handle.
298  *
299  * @param[in] p_aon_wdt: Pointer to a AON_WDT handle which contains the configuration
300  * information for the specified AON_WDT module.
301  *
302  * @note The function will call the hal_aon_wdt_init function to initialize the HAL AON WDT.
303  *
304  * @retval ::HAL_OK: Operation is OK.
305  * @retval ::HAL_ERROR: Parameter error or operation not supported.
306  * @retval ::HAL_BUSY: Driver is busy.
307  * @retval ::HAL_TIMEOUT: Timeout occurred.
308  ****************************************************************************************
309  */
311 
312 /**
313  ****************************************************************************************
314  * @brief De-initialize the AON_WDT peripheral.
315  *
316  * @param[in] p_aon_wdt: AON_WDT handle.
317  *
318  * @note The function will call the hal_aon_wdt_deinit function to De-initialize the HAL AON WDT.
319  *
320  * @retval ::HAL_OK: Operation is OK.
321  * @retval ::HAL_ERROR: Parameter error or operation not supported.
322  * @retval ::HAL_BUSY: Driver is busy.
323  * @retval ::HAL_TIMEOUT: Timeout occurred.
324  ****************************************************************************************
325  */
327 
328 /**
329  ****************************************************************************************
330  * @brief This function registers the callback function to the ROM area.
331  *
332  * @note This function needs to be called before hal_aon_wdt_init.
333  *
334  * @param[in] aon_wdt_callback: Pointer to callback structure function. @ref aon_wdt_callback_t.
335  ****************************************************************************************
336  */
338 
339 #endif /* HAL_AON_WDT_MODULE_ENABLED */
340 
341 
342 #ifdef HAL_CALENDAR_MODULE_ENABLED
343 
344 /**
345  ****************************************************************************************
346  * @brief Initialize the CALENDAR according to the specified parameters in the
347  * calendar_init_t of associated handle.
348  *
349  * @param[in] p_calendar: Pointer to a CALENDAR handle which contains the configuration
350  * information for the specified CALENDAR module.
351  *
352  * @note The function will call the hal_calendar_init function to initialize the HAL CALENDER.
353  *
354  * @retval ::HAL_OK: Operation is OK.
355  * @retval ::HAL_ERROR: Parameter error or operation not supported.
356  * @retval ::HAL_BUSY: Driver is busy.
357  * @retval ::HAL_TIMEOUT: Timeout occurred.
358  ****************************************************************************************
359  */
361 
362 /**
363  ****************************************************************************************
364  * @brief De-initialize the CALENDAR peripheral.
365  *
366  * @param[in] p_calendar: CALENDAR handle.
367  *
368  * @note The function will call the hal_calendar_deinit function to De-initialize the HAL CALENDER.
369  *
370  * @retval ::HAL_OK: Operation is OK.
371  * @retval ::HAL_ERROR: Parameter error or operation not supported.
372  * @retval ::HAL_BUSY: Driver is busy.
373  * @retval ::HAL_TIMEOUT: Timeout occurred.
374  ****************************************************************************************
375  */
377 
378 /**
379  ****************************************************************************************
380  * @brief This function registers the callback function to the ROM area.
381  *
382  * @note This function needs to be called before hal_calendar_init.
383  *
384  * @param[in] calendar_callback: Pointer to callback structure function. @ref calendar_callback_t
385  ****************************************************************************************
386  */
388 
389 #endif /* HAL_CALENDAR_MODULE_ENABLED */
390 
391 #ifdef HAL_RTC_MODULE_ENABLED
392 
393 /**
394  ****************************************************************************************
395  * @brief Initialize the RTC according to the specified parameters in the
396  * rtc_init_t of associated handle.counter start after hal_rtc_init.
397  *
398  * @param[in] p_rtc: Pointer to a RTC handle which contains the configuration
399  * information for the specified RTC module.
400  *
401  * @note The function will call the hal_rtc_init function to initialize the HAL RTC.
402  *
403  * @retval ::HAL_OK: Operation is OK.
404  * @retval ::HAL_ERROR: Parameter error or operation not supported.
405  * @retval ::HAL_BUSY: Driver is busy.
406  * @retval ::HAL_TIMEOUT: Timeout occurred.
407  ****************************************************************************************
408  */
410 
411 /**
412  ****************************************************************************************
413  * @brief DeInitialize the RTC according to the specified parameters in the
414  * rtc_init_t of associated handle.counter stop after hal_rtc_deinit.
415  *
416  * @param[in] p_rtc: Pointer to a RTC handle which contains the configuration
417  * information for the specified RTC module.
418  *
419  * @note The function will call the hal_rtc_deinit function to De-initialize the HAL RTC.
420  *
421  * @retval ::HAL_OK: Operation is OK.
422  * @retval ::HAL_ERROR: Parameter error or operation not supported.
423  * @retval ::HAL_BUSY: Driver is busy.
424  * @retval ::HAL_TIMEOUT: Timeout occurred.
425  ****************************************************************************************
426  */
428 
429 /**
430  ****************************************************************************************
431  * @brief This function registers the callback function to the ROM area.
432  *
433  * @note This function needs to be called before hal_rtc_init.
434  *
435  * @param[in] rtc_callback: Pointer to callback structure function. @ref rtc_callback_t
436  ****************************************************************************************
437  */
439 
440 #endif /* HAL_RTC_MODULE_ENABLED */
441 
442 #ifdef HAL_DUAL_TIMER_MODULE_ENABLED
443 
444 /**
445  ****************************************************************************************
446  * @brief Initialize the DUAL TIMER according to the specified parameters
447  * in the dual_timer_init_t and initialize the associated handle.
448  *
449  * @param[in] p_dual_timer: Pointer to a DUAL_TIMER handle which contains the configuration information for the specified DUAL TIMER.
450  *
451  * @note The function will call the hal_dual_timer_base_init function to initialize the HAL DUAL TIMER.
452  *
453  * @retval ::HAL_OK: Operation is OK.
454  * @retval ::HAL_ERROR: Parameter error or operation not supported.
455  * @retval ::HAL_BUSY: Driver is busy.
456  * @retval ::HAL_TIMEOUT: Timeout occurred.
457  ****************************************************************************************
458  */
460 
461 /**
462  ****************************************************************************************
463  * @brief De-initialize the DUAL TIMER peripheral.
464  *
465  * @param[in] p_dual_timer: Pointer to a DUAL_TIM handle which contains the configuration information for the specified DUAL TIMER.
466  *
467  * @note The function will call the hal_dual_timer_base_deinit function to De-initialize the HAL DUAL TIMER.
468  *
469  * @retval ::HAL_OK: Operation is OK.
470  * @retval ::HAL_ERROR: Parameter error or operation not supported.
471  * @retval ::HAL_BUSY: Driver is busy.
472  * @retval ::HAL_TIMEOUT: Timeout occurred.
473  ****************************************************************************************
474  */
476 
477 /**
478  ****************************************************************************************
479  * @brief This function registers the callback function to the ROM area.
480  *
481  * @note This function needs to be called before hal_dual_timer_base_init.
482  *
483  * @param[in] dual_timer_callback: Pointer to callback structure function. @ref dual_timer_callback_t
484  ****************************************************************************************
485  */
487 
488 #endif /* HAL_DUAL_TIMER_MODULE_ENABLED */
489 
490 
491 #ifdef HAL_GPIO_MODULE_ENABLED
492 
493 /**
494  ****************************************************************************************
495  * @brief Initialize the GPIOx peripheral according to the specified parameters in the p_gpio_init.
496  *
497  * @note The function will call the hal_gpio_init function to initialize the HAL GPIO.
498  *
499  * @param[in] GPIOx: Where x can be (0, 1) to select the GPIO peripheral port
500  * @param[in] p_gpio_init: Pointer to a gpio_init_t structure that contains the configuration information
501  * for the specified GPIO peripheral port.
502  ****************************************************************************************
503  */
504 void hal_gpio_init_ext(gpio_regs_t *GPIOx, gpio_init_t *p_gpio_init);
505 
506 /**
507  ****************************************************************************************
508  * @brief De-initialize the GPIOx peripheral registers to their default reset values.
509  *
510  * @note The function will call the hal_gpio_deinit function to De-initialize the HAL GPIO.
511  *
512  * @param[in] GPIOx: Where x can be (0, 1) to select the GPIO peripheral port for GR55xx device
513  * @param[in] gpio_pin: Specifies the port bit to be written.
514  * This parameter can be a combination of the following values:
515  * @arg @ref GPIO_PIN_0
516  * @arg @ref GPIO_PIN_1
517  * @arg @ref GPIO_PIN_2
518  * @arg @ref GPIO_PIN_3
519  * @arg @ref GPIO_PIN_4
520  * @arg @ref GPIO_PIN_5
521  * @arg @ref GPIO_PIN_6
522  * @arg @ref GPIO_PIN_7
523  * @arg @ref GPIO_PIN_8
524  * @arg @ref GPIO_PIN_9
525  * @arg @ref GPIO_PIN_10
526  * @arg @ref GPIO_PIN_11
527  * @arg @ref GPIO_PIN_12
528  * @arg @ref GPIO_PIN_13
529  * @arg @ref GPIO_PIN_14
530  * @arg @ref GPIO_PIN_15
531  * @arg @ref GPIO_PIN_ALL
532  ****************************************************************************************
533  */
534 void hal_gpio_deinit_ext(gpio_regs_t *GPIOx, uint32_t gpio_pin);
535 
536 /**
537  ****************************************************************************************
538  * @brief This function registers the callback function to the ROM area.
539  *
540  * @note This function needs to be called before hal_gpio_init.
541  *
542  * @param[in] gpio_callback: Pointer to callback structure function. @ref gpio_callback_t
543  ****************************************************************************************
544  */
546 
547 #endif /* HAL_GPIO_MODULE_ENABLED */
548 
549 
550 #ifdef HAL_HMAC_MODULE_ENABLED
551 
552 /**
553  ****************************************************************************************
554  * @brief Initialize the HMAC according to the specified parameters
555  * in the hmac_init_t and initialize the associated handle.
556  *
557  * @param[in] p_hmac: Pointer to a HMAC handle which contains the configuration information for the specified HMAC module.
558  *
559  * @note The function will call the hal_hmac_init function to initialize the HAL HMAC.
560  *
561  * @retval ::HAL_OK: Operation is OK.
562  * @retval ::HAL_ERROR: Parameter error or operation not supported.
563  * @retval ::HAL_BUSY: Driver is busy.
564  * @retval ::HAL_TIMEOUT: Timeout occurred.
565  ****************************************************************************************
566  */
568 
569 /**
570  ****************************************************************************************
571  * @brief De-initialize the HMAC peripheral.
572  *
573  * @param[in] p_hmac: Pointer to a HMAC handle which contains the configuration information for the specified HMAC module.
574  *
575  * @note The function will call the hal_hmac_deinit function to De-initialize the HAL HMAC.
576  *
577  * @retval ::HAL_OK: Operation is OK.
578  * @retval ::HAL_ERROR: Parameter error or operation not supported.
579  * @retval ::HAL_BUSY: Driver is busy.
580  * @retval ::HAL_TIMEOUT: Timeout occurred.
581  ****************************************************************************************
582  */
584 
585 /**
586  ****************************************************************************************
587  * @brief This function registers the callback function to the ROM area.
588  *
589  * @note This function needs to be called before hal_hmac_init.
590  *
591  * @param[in] hmac_callback: Pointer to callback structure function. @ref hmac_callback_t
592  ****************************************************************************************
593  */
595 
596 #endif /* HAL_HMAC_MODULE_ENABLED */
597 
598 
599 #ifdef HAL_I2C_MODULE_ENABLED
600 
601 /**
602  ****************************************************************************************
603  * @brief Initializes the I2C according to the specified parameters
604  * in the i2c_init_t and initialize the associated handle.
605  *
606  * @param[in] p_i2c: Pointer to an I2C handle which contains the configuration
607  * information for the specified I2C.
608  *
609  * @note The function will call the hal_i2c_init function to initialize the HAL I2C.
610  *
611  * @retval ::HAL_OK: Operation is OK.
612  * @retval ::HAL_ERROR: Parameter error or operation not supported.
613  * @retval ::HAL_BUSY: Driver is busy.
614  * @retval ::HAL_TIMEOUT: Timeout occurred.
615  ****************************************************************************************
616  */
618 
619 /**
620  ****************************************************************************************
621  * @brief De-initialize the I2C peripheral.
622  *
623  * @param[in] p_i2c: Pointer to an I2C handle which contains the configuration information for the specified I2C.
624  *
625  * @note The function will call the hal_i2c_deinit function to De-initialize the HAL I2C.
626  *
627  * @retval ::HAL_OK: Operation is OK.
628  * @retval ::HAL_ERROR: Parameter error or operation not supported.
629  * @retval ::HAL_BUSY: Driver is busy.
630  * @retval ::HAL_TIMEOUT: Timeout occurred.
631  ****************************************************************************************
632  */
634 
635 /**
636  ****************************************************************************************
637  * @brief This function registers the callback function to the ROM area.
638  *
639  * @note This function needs to be called before hal_i2c_init.
640  *
641  * @param[in] i2c_callback: Pointer to callback structure function. @ref i2c_callback_t
642  ****************************************************************************************
643  */
645 
646 #endif /* HAL_I2C_MODULE_ENABLED */
647 
648 
649 #ifdef HAL_I2S_MODULE_ENABLED
650 
651 /**
652  ****************************************************************************************
653  * @brief Initialize the I2S according to the specified parameters
654  * in the i2s_init_t and initialize the associated handle.
655  *
656  * @param[in] p_i2s: Pointer to an I2S handle which contains the configuration information for the specified I2S module.
657  *
658  * @note The function will call the hal_i2s_init function to initialize the HAL I2S.
659  *
660  * @retval ::HAL_OK: Operation is OK.
661  * @retval ::HAL_ERROR: Parameter error or operation not supported.
662  * @retval ::HAL_BUSY: Driver is busy.
663  * @retval ::HAL_TIMEOUT: Timeout occurred.
664  ****************************************************************************************
665  */
667 
668 /**
669  ****************************************************************************************
670  * @brief De-initialize the I2S peripheral.
671  *
672  * @param[in] p_i2s: Pointer to an I2S handle which contains the configuration information for the specified I2S module.
673  *
674  * @note The function will call the hal_i2s_deinit function to De-initialize the HAL I2S.
675  *
676  * @retval ::HAL_OK: Operation is OK.
677  * @retval ::HAL_ERROR: Parameter error or operation not supported.
678  * @retval ::HAL_BUSY: Driver is busy.
679  * @retval ::HAL_TIMEOUT: Timeout occurred.
680  ****************************************************************************************
681  */
683 
684 /**
685  ****************************************************************************************
686  * @brief This function registers the callback function to the ROM area.
687  *
688  * @note This function needs to be called before hal_i2s_init.
689  *
690  * @param[in] i2s_callback: Pointer to callback structure function. @ref i2s_callback_t
691  ****************************************************************************************
692  */
694 
695 #endif /* HAL_I2S_MODULE_ENABLED */
696 
697 
698 #ifdef HAL_MSIO_MODULE_ENABLED
699 
700 /**
701  ****************************************************************************************
702  * @brief Initialize the MSIOx peripheral according to the specified parameters in the msio_init_t.
703  *
704  * @note The function will call the hal_msio_init function to initialize the HAL MSIO.
705  *
706  * @param[in] MSIOx: MSIO peripheral port.
707  * @param[in] p_msio_init: Pointer to an @ref msio_init_t structure that contains
708  * the configuration information for the specified MSIO peripheral port.
709  ****************************************************************************************
710  */
711 void hal_msio_init_ext(msio_pad_t MSIOx, msio_init_t *p_msio_init);
712 
713 /**
714  ****************************************************************************************
715  * @brief De-initialize the MSIOx peripheral registers to their default reset values.
716  *
717  * @note The function will call the hal_msio_deinit function to De-initialize the HAL MSIO.
718  *
719  * @param[in] MSIOx: MSIO peripheral port.
720  * @param[in] msio_pin: Specifies the port bit to be written.
721  * This parameter can be a combination of the following values:
722  * @arg @ref MSIO_PIN_0
723  * @arg @ref MSIO_PIN_1
724  * @arg @ref MSIO_PIN_2
725  * @arg @ref MSIO_PIN_3
726  * @arg @ref MSIO_PIN_4
727  * @arg @ref MSIO_PIN_ALL
728  ****************************************************************************************
729  */
730 void hal_msio_deinit_ext(msio_pad_t MSIOx, uint32_t msio_pin);
731 
732 /**
733  ****************************************************************************************
734  * @brief This function registers the callback function to the ROM area.
735  *
736  * @note This function needs to be called before hal_msio_init.
737  *
738  * @param[in] msio_callback: Pointer to callback structure function. @ref msio_callback_t
739  ****************************************************************************************
740  */
742 
743 #endif /* HAL_MSIO_MODULE_ENABLED */
744 
745 
746 #ifdef HAL_PKC_MODULE_ENABLED
747 
748 /**
749  ****************************************************************************************
750  * @brief Initialize the PKC according to the specified parameters
751  * in the pkc_init_t and initialize the associated handle.
752  *
753  * @param[in] p_pkc: Pointer to a PKC handle which contains the configuration
754  * information for the specified PKC module.
755  *
756  * @note The function will call the hal_pkc_init function to initialize the HAL PKC.
757  *
758  * @retval ::HAL_OK: Operation is OK.
759  * @retval ::HAL_ERROR: Parameter error or operation not supported.
760  * @retval ::HAL_BUSY: Driver is busy.
761  * @retval ::HAL_TIMEOUT: Timeout occurred.
762  ****************************************************************************************
763  */
765 
766 /**
767  ****************************************************************************************
768  * @brief De-initialize the PKC peripheral.
769  *
770  * @param[in] p_pkc: Pointer to a PKC handle which contains the configuration
771  * information for the specified PKC module.
772  *
773  * @note The function will call the hal_pkc_deinit function to De-initialize the HAL PKC.
774  *
775  * @retval ::HAL_OK: Operation is OK.
776  * @retval ::HAL_ERROR: Parameter error or operation not supported.
777  * @retval ::HAL_BUSY: Driver is busy.
778  * @retval ::HAL_TIMEOUT: Timeout occurred.
779  ****************************************************************************************
780  */
782 
783 /**
784  ****************************************************************************************
785  * @brief This function registers the callback function to the ROM area.
786  *
787  * @note This function needs to be called before hal_pkc_init.
788  *
789  * @param[in] pkc_callback: Pointer to callback structure function. @ref pkc_callback_t
790  ****************************************************************************************
791  */
793 
794 #endif /* HAL_PKC_MODULE_ENABLED */
795 
796 
797 #ifdef HAL_PWM_MODULE_ENABLED
798 
799 /**
800  ****************************************************************************************
801  * @brief Initialize the PWM mode according to the specified
802  * parameters in the pwm_init_t and initialize the associated handle.
803  *
804  * @param[in] p_pwm: Pointer to a PWM handle that contains the configuration information for the specified PWM module.
805  *
806  * @note The function will call the hal_pwm_init function to initialize the HAL PWM.
807  *
808  * @retval ::HAL_OK: Operation is OK.
809  * @retval ::HAL_ERROR: Parameter error or operation not supported.
810  * @retval ::HAL_BUSY: Driver is busy.
811  * @retval ::HAL_TIMEOUT: Timeout occurred.
812  ****************************************************************************************
813  */
815 
816 /**
817  ****************************************************************************************
818  * @brief De-initialize the PWM peripheral.
819  *
820  * @param[in] p_pwm: Pointer to a PWM handle that contains the configuration information for the specified PWM module.
821  *
822  * @note The function will call the hal_pwm_deinit function to De-initialize the HAL PWM.
823  *
824  * @retval ::HAL_OK: Operation is OK.
825  * @retval ::HAL_ERROR: Parameter error or operation not supported.
826  * @retval ::HAL_BUSY: Driver is busy.
827  * @retval ::HAL_TIMEOUT: Timeout occurred.
828  ****************************************************************************************
829  */
831 
832 /**
833  ****************************************************************************************
834  * @brief This function registers the callback function to the ROM area.
835  *
836  * @note This function needs to be called before hal_pwm_init.
837  *
838  * @param[in] pwm_callback: Pointer to callback structure function. @ref pwm_callback_t
839  ****************************************************************************************
840  */
842 
843 #endif /* HAL_PWM_MODULE_ENABLED */
844 
845 
846 #ifdef HAL_PWR_MODULE_ENABLED
847 
848 #ifdef HAL_SLEEP_TIMER_MODULE_ENABLED
849 
850 /**
851 ****************************************************************************************
852 * @brief Configure the AON Sleep Timer mode, count and start used to wakeup MCU.
853 *
854 * @param[in] mode: Specifies the sleep timer mode.
855 * This parameter can be a combination of the following values:
856 * @arg @ref PWR_SLP_TIMER_MODE_NORMAL
857 * @arg @ref PWR_SLP_TIMER_MODE_SINGLE
858 * @arg @ref PWR_SLP_TIMER_MODE_RELOAD
859 * @param[in] value: Count value of the AON Sleep Timer.
860 *
861 * @note The function will call the hal_sleep_timer_config_and_start function to initialize the HAL SLEEP TIMER.
862 *
863 * @retval ::HAL_OK: Operation is OK.
864 * @retval ::HAL_BUSY: Driver is busy.
865 * @note The sleep clock of AON Timer is 32 KHz.
866 ****************************************************************************************
867 */
868 hal_status_t hal_pwr_config_timer_wakeup_ext(uint8_t mode, uint32_t value);
869 
870 /**
871  ****************************************************************************************
872  * @brief This function registers the callback function to the ROM area.
873  *
874  * @param[in] pwr_slp_elapsed_hander: Pointer to callback structure function. @ref pwr_slp_elapsed_handler_t
875  ****************************************************************************************
876  */
878 
879 #endif /* HAL_SLEEP_TIMER_MODULE_ENABLED */
880 
881 #endif /* HAL_PWR_MODULE_ENABLED */
882 
883 
884 #ifdef HAL_QSPI_MODULE_ENABLED
885 
886 /**
887  ****************************************************************************************
888  * @brief Initialize the QSPI according to the specified parameters
889  * in the qspi_init_t and initialize the associated handle.
890  *
891  * @param[in] p_qspi: Pointer to a QSPI handle which contains the configuration information for the specified QSPI module.
892  *
893  * @note The function will call the hal_qspi_init function to initialize the HAL QSPI.
894  *
895  * @retval ::HAL_OK: Operation is OK.
896  * @retval ::HAL_ERROR: Parameter error or operation not supported.
897  * @retval ::HAL_BUSY: Driver is busy.
898  * @retval ::HAL_TIMEOUT: Timeout occurred.
899  ****************************************************************************************
900  */
902 
903 /**
904  ****************************************************************************************
905  * @brief De-initialize the QSPI peripheral.
906  *
907  * @param[in] p_qspi: Pointer to a QSPI handle which contains the configuration information for the specified QSPI module.
908  *
909  * @note The function will call the hal_qspi_deinit function to De-initialize the HAL QSPI.
910  *
911  * @retval ::HAL_OK: Operation is OK.
912  * @retval ::HAL_ERROR: Parameter error or operation not supported.
913  * @retval ::HAL_BUSY: Driver is busy.
914  * @retval ::HAL_TIMEOUT: Timeout occurred.
915  ****************************************************************************************
916  */
918 
919 /**
920  ****************************************************************************************
921  * @brief This function registers the callback function to the ROM area.
922  *
923  * @note This function needs to be called before hal_qspi_init.
924  *
925  * @param[in] qspi_callback: Pointer to callback structure function. @ref qspi_callback_t
926  ****************************************************************************************
927  */
929 
930 #endif /* HAL_QSPI_MODULE_ENABLED */
931 
932 
933 #ifdef HAL_SPI_MODULE_ENABLED
934 
935 /**
936  ****************************************************************************************
937  * @brief Initialize the SPI according to the specified parameters
938  * in the spi_init_t and initialize the associated handle.
939  *
940  * @param[in] p_spi: Pointer to an SPI handle which contains the configuration information for the specified SPI module.
941  *
942  * @note The function will call the hal_spi_init function to initialize the HAL SPI.
943  *
944  * @retval ::HAL_OK: Operation is OK.
945  * @retval ::HAL_ERROR: Parameter error or operation not supported.
946  * @retval ::HAL_BUSY: Driver is busy.
947  * @retval ::HAL_TIMEOUT: Timeout occurred.
948  ****************************************************************************************
949  */
951 
952 /**
953  ****************************************************************************************
954  * @brief De-initialize the SPI peripheral.
955  *
956  * @param[in] p_spi: Pointer to an SPI handle which contains the configuration information for the specified SPI module.
957  *
958  * @note The function will call the hal_spi_deinit function to De-initialize the HAL SPI.
959  *
960  * @retval ::HAL_OK: Operation is OK.
961  * @retval ::HAL_ERROR: Parameter error or operation not supported.
962  * @retval ::HAL_BUSY: Driver is busy.
963  * @retval ::HAL_TIMEOUT: Timeout occurred.
964  ****************************************************************************************
965  */
967 
968 /**
969  ****************************************************************************************
970  * @brief This function registers the callback function to the ROM area.
971  *
972  * @note This function needs to be called before hal_spi_init.
973  *
974  * @param[in] spi_callback: Pointer to callback structure function. @ref spi_callback_t
975  ****************************************************************************************
976  */
978 
979 #endif /* HAL_SPI_MODULE_ENABLED */
980 
981 
982 #ifdef HAL_TIMER_MODULE_ENABLED
983 
984 /**
985  ****************************************************************************************
986  * @brief Initialize the TIMER according to the specified parameters
987  * in the timer_init_t and initialize the associated handle.
988  *
989  * @param[in] p_timer: Pointer to a TIMER handle which contains the configuration
990  * information for the specified TIMER module.
991  *
992  * @note The function will call the hal_timer_base_init function to initialize the HAL TIM.
993  *
994  * @retval ::HAL_OK: Operation is OK.
995  * @retval ::HAL_ERROR: Parameter error or operation not supported.
996  * @retval ::HAL_BUSY: Driver is busy.
997  * @retval ::HAL_TIMEOUT: Timeout occurred.
998  ****************************************************************************************
999  */
1001 
1002 /**
1003  ****************************************************************************************
1004  * @brief De-initialize the TIMER peripheral.
1005  *
1006  * @param[in] p_timer: Pointer to a TIMER handle which contains the configuration
1007  * information for the specified TIMER module.
1008  *
1009  * @note The function will call the hal_timer_base_deinit function to De-initialize the HAL TIM.
1010  *
1011  * @retval ::HAL_OK: Operation is OK.
1012  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1013  * @retval ::HAL_BUSY: Driver is busy.
1014  * @retval ::HAL_TIMEOUT: Timeout occurred.
1015  ****************************************************************************************
1016  */
1018 
1019 /**
1020  ****************************************************************************************
1021  * @brief This function registers the callback function to the ROM area.
1022  *
1023  * @note This function needs to be called before hal_timer_base_init.
1024  *
1025  * @param[in] timer_base_callback: Pointer to callback structure function. @ref timer_base_callback_t
1026  ****************************************************************************************
1027  */
1029 
1030 #endif /* HAL_TIMER_MODULE_ENABLED */
1031 
1032 
1033 #ifdef HAL_UART_MODULE_ENABLED
1034 
1035 /**
1036  ****************************************************************************************
1037  * @brief Initialize the UART according to the specified
1038  * parameters in the uart_init_t and initialize the associated handle.
1039  *
1040  * @param[in] p_uart: Pointer to a UART handle which contains the configuration
1041  * information for the specified UART module.
1042  *
1043  * @note The function will call the hal_uart_init function to initialize the HAL UART.
1044  *
1045  * @retval ::HAL_OK: Operation is OK.
1046  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1047  * @retval ::HAL_BUSY: Driver is busy.
1048  * @retval ::HAL_TIMEOUT: Timeout occurred.
1049  ****************************************************************************************
1050  */
1052 
1053 /**
1054  ****************************************************************************************
1055  * @brief De-initialize the UART peripheral.
1056  *
1057  * @param[in] p_uart: Pointer to a UART handle which contains the configuration
1058  * information for the specified UART module.
1059  *
1060  * @note The function will call the hal_uart_deinit function to De-initialize the HAL UART.
1061  *
1062  * @retval ::HAL_OK: Operation is OK.
1063  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1064  * @retval ::HAL_BUSY: Driver is busy.
1065  * @retval ::HAL_TIMEOUT: Timeout occurred.
1066  ****************************************************************************************
1067  */
1069 
1070 /**
1071  ****************************************************************************************
1072  * @brief This function registers the callback function to the ROM area.
1073  *
1074  * @note This function needs to be called before hal_uart_init.
1075  *
1076  * @param[in] uart_callback: Pointer to callback structure function. @ref uart_callback_t
1077  ****************************************************************************************
1078  */
1080 
1081 #endif /* HAL_UART_MODULE_ENABLED */
1082 
1083 
1084 #ifdef HAL_WDT_MODULE_ENABLED
1085 
1086 /**
1087  ****************************************************************************************
1088  * @brief Initialize the WDT according to the specified
1089  * parameters in the wdt_init_t of associated handle.
1090  *
1091  * @param[in] p_wdt: Pointer to a WDT handle which contains the configuration
1092  * information for the specified WDT module.
1093  *
1094  * @note The function will call the hal_wdt_init function to initialize the HAL WDT.
1095  *
1096  * @retval ::HAL_OK: Operation is OK.
1097  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1098  * @retval ::HAL_BUSY: Driver is busy.
1099  * @retval ::HAL_TIMEOUT: Timeout occurred.
1100  ****************************************************************************************
1101  */
1103 
1104 /**
1105  ****************************************************************************************
1106  * @brief De-initialize the WDT peripheral.
1107  *
1108  * @param[in] p_wdt: WDT handle.
1109  *
1110  * @note The function will call the hal_wdt_deinit function to De-initialize the HAL WDT.
1111  *
1112  * @retval ::HAL_OK: Operation is OK.
1113  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1114  * @retval ::HAL_BUSY: Driver is busy.
1115  * @retval ::HAL_TIMEOUT: Timeout occurred.
1116  ****************************************************************************************
1117  */
1119 
1120 /**
1121  ****************************************************************************************
1122  * @brief This function registers the callback function to the ROM area.
1123  *
1124  * @note This function needs to be called before hal_wdt_init.
1125  *
1126  * @param[in] wdt_callback: Pointer to callback structure function. @ref wdt_callback_t
1127  ****************************************************************************************
1128  */
1130 
1131 #endif /* HAL_WDT_MODULE_ENABLED */
1132 
1133 
1134 #ifdef HAL_XQSPI_MODULE_ENABLED
1135 
1136 /**
1137  ****************************************************************************************
1138  * @brief Initialize the XQSPI according to the specified parameters
1139  * in the xqspi_init_t and initialize the associated handle.
1140  *
1141  * @param[in] p_xqspi: Pointer to an XQSPI handle which contains the configuration information for the specified XQSPI module.
1142  *
1143  * @note The function will call the hal_xqspi_init function to initialize the HAL XQSPI.
1144  *
1145  * @retval ::HAL_OK: Operation is OK.
1146  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1147  * @retval ::HAL_BUSY: Driver is busy.
1148  * @retval ::HAL_TIMEOUT: Timeout occurred.
1149  ****************************************************************************************
1150  */
1152 
1153 /**
1154  ****************************************************************************************
1155  * @brief De-initialize the XQSPI peripheral.
1156  *
1157  * @param[in] p_xqspi: Pointer to an XQSPI handle which contains the configuration information for the specified XQSPI module.
1158  *
1159  * @note The function will call the hal_xqspi_deinit function to De-initialize the HAL XQSPI.
1160  *
1161  * @retval ::HAL_OK: Operation is OK.
1162  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1163  * @retval ::HAL_BUSY: Driver is busy.
1164  * @retval ::HAL_TIMEOUT: Timeout occurred.
1165  ****************************************************************************************
1166  */
1168 
1169 /**
1170  ****************************************************************************************
1171  * @brief This function registers the callback function to the ROM area.
1172  *
1173  * @note This function needs to be called before hal_wdt_init.
1174  *
1175  * @param[in] xqspi_callback: Pointer to callback structure function. @ref xqspi_callback_t
1176  ****************************************************************************************
1177  */
1179 
1180 #endif /* HAL_XQSPI_MODULE_ENABLED */
1181 
1182 
1183 #ifdef HAL_EXFLASH_MODULE_ENABLED
1184 
1185 /**
1186  ****************************************************************************************
1187  * @brief Initialize the exFlash according to the specified parameters
1188  * in the exflash_init_t and initialize the associated handle.
1189  *
1190  *
1191  * @note The function will call the hal_exflash_init function to initialize the HAL EXFLASH.
1192  *
1193  * @retval ::HAL_OK: Operation is OK.
1194  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1195  * @retval ::HAL_BUSY: Driver is busy.
1196  * @retval ::HAL_TIMEOUT: Timeout occurred.
1197  ****************************************************************************************
1198  */
1200 
1201 /**
1202  ****************************************************************************************
1203  * @brief De-initialize the exFlash peripheral.
1204  *
1205  *
1206  * @note The function will call the hal_exflash_deinit function to De-initialize the HAL EXFLASH.
1207  *
1208  * @retval ::HAL_OK: Operation is OK.
1209  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1210  * @retval ::HAL_BUSY: Driver is busy.
1211  * @retval ::HAL_TIMEOUT: Timeout occurred.
1212  ****************************************************************************************
1213  */
1215 
1216 /**
1217  ****************************************************************************************
1218  * @brief This function registers the callback function to the ROM area.
1219  *
1220  * @note This function needs to be called before hal_exflash_init.
1221  *
1222  * @param[in] exflash_callback: Pointer to callback structure function. @ref exflash_callback_t
1223  ****************************************************************************************
1224  */
1226 
1227 #endif /* HAL_EXFLASH_MODULE_ENABLED */
1228 
1229 
1230 #ifdef HAL_EFUSE_MODULE_ENABLED
1231 
1232 /**
1233  ****************************************************************************************
1234  * @brief Initialize the eFuse according to the specified parameters
1235  * in the efuse_init_t and initialize the associated handle.
1236  *
1237  * @param[in] p_efuse: Pointer to a eFuse handle which contains the configuration information for the specified eFuse module.
1238  *
1239  * @note The function will call the hal_efuse_init function to initialize the HAL EFUSE.
1240  *
1241  * @retval ::HAL_OK: Operation is OK.
1242  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1243  * @retval ::HAL_BUSY: Driver is busy.
1244  * @retval ::HAL_TIMEOUT: Timeout occurred.
1245  ****************************************************************************************
1246  */
1248 
1249 /**
1250  ****************************************************************************************
1251  * @brief De-initialize the eFuse peripheral.
1252  *
1253  * @param[in] p_efuse: Pointer to a eFuse handle which contains the configuration information for the specified eFuse module.
1254  *
1255  * @note The function will call the hal_efuse_deinit function to De-initialize the HAL EFUSE.
1256  *
1257  * @retval ::HAL_OK: Operation is OK.
1258  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1259  * @retval ::HAL_BUSY: Driver is busy.
1260  * @retval ::HAL_TIMEOUT: Timeout occurred.
1261  ****************************************************************************************
1262  */
1264 
1265 /**
1266  ****************************************************************************************
1267  * @brief This function registers the callback function to the ROM area.
1268  *
1269  * @note This function needs to be called before hal_efuse_init.
1270  *
1271  * @param[in] efuse_callback: Pointer to callback structure function. @ref efuse_callback_t
1272  ****************************************************************************************
1273  */
1275 
1276 #endif /* HAL_EFUSE_MODULE_ENABLED */
1277 
1278 
1279 #ifdef HAL_RNG_MODULE_ENABLED
1280 
1281 /**
1282  ****************************************************************************************
1283  * @brief Initialize the RNG according to the specified
1284  * parameters in the rng_init_t of associated handle.
1285  *
1286  * @param[in] p_rng: Pointer to a RNG handle which contains the configuration
1287  * information for the specified RNG module.
1288  *
1289  * @note The function will call the hal_rng_init function to initialize the HAL RNG.
1290  *
1291  * @retval ::HAL_OK: Operation is OK.
1292  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1293  * @retval ::HAL_BUSY: Driver is busy.
1294  * @retval ::HAL_TIMEOUT: Timeout occurred.
1295  ****************************************************************************************
1296  */
1298 
1299 /**
1300  ****************************************************************************************
1301  * @brief De-initialize the RNG peripheral.
1302  *
1303  * @param[in] p_rng: RNG handle.
1304  *
1305  * @note The function will call the hal_rng_deinit function to De-initialize the HAL RNG.
1306  *
1307  * @retval ::HAL_OK: Operation is OK.
1308  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1309  * @retval ::HAL_BUSY: Driver is busy.
1310  * @retval ::HAL_TIMEOUT: Timeout occurred.
1311  ****************************************************************************************
1312  */
1314 
1315 /**
1316  ****************************************************************************************
1317  * @brief This function registers the callback function to the ROM area.
1318  *
1319  * @note This function needs to be called before hal_rng_init.
1320  *
1321  * @param[in] rng_callback: Pointer to callback structure function. @ref rng_callback_t
1322  ****************************************************************************************
1323  */
1325 
1326 #endif /* HAL_RNG_MODULE_ENABLED */
1327 
1328 
1329 #ifdef HAL_COMP_MODULE_ENABLED
1330 
1331 /**
1332  ****************************************************************************************
1333  * @brief Initialize the COMP according to the specified parameters
1334  * in the comp_init_t and initialize the associated handle.
1335  *
1336  * @param[in] p_comp: Pointer to a COMP handle which contains the configuration information for
1337  * the specified COMP module.
1338  *
1339  * @note The function will call the hal_comp_init function to initialize the HAL COMP.
1340  *
1341  * @retval ::HAL_OK: Operation is OK.
1342  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1343  * @retval ::HAL_BUSY: Driver is busy.
1344  * @retval ::HAL_TIMEOUT: Timeout occurred.
1345  ****************************************************************************************
1346  */
1348 
1349 /**
1350  ****************************************************************************************
1351  * @brief De-initialize the COMP peripheral.
1352  *
1353  * @param[in] p_comp: Pointer to a COMP handle which contains the configuration information for
1354  * the specified COMP module.
1355  *
1356  * @note The function will call the hal_comp_deinit function to De-initialize the HAL COMP.
1357  *
1358  * @retval ::HAL_OK: Operation is OK.
1359  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1360  * @retval ::HAL_BUSY: Driver is busy.
1361  * @retval ::HAL_TIMEOUT: Timeout occurred.
1362  ****************************************************************************************
1363  */
1365 
1366 /**
1367  ****************************************************************************************
1368  * @brief This function registers the callback function to the ROM area.
1369  *
1370  * @note This function needs to be called before hal_comp_init.
1371  *
1372  * @param[in] comp_callback: Pointer to callback structure function. @ref comp_callback_t
1373  ****************************************************************************************
1374  */
1376 
1377 #endif /* HAL_COMP_MODULE_ENABLED */
1378 
1379 
1380 #ifdef HAL_ISO7816_MODULE_ENABLED
1381 
1382 /**
1383  ****************************************************************************************
1384  * @brief Initializes the ISO7816 according to the specified parameters
1385  * in the iso7816_init_t and initialize the associated handle.
1386  *
1387  * @param[in] p_iso7816: Pointer to an ISO7816 handle which contains the configuration
1388  * information for the specified ISO7816.
1389  *
1390  * @note The function will call the hal_iso7816_init function to initialize the HAL ISO7816.
1391  *
1392  * @retval ::HAL_OK: Operation is OK.
1393  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1394  * @retval ::HAL_BUSY: Driver is busy.
1395  * @retval ::HAL_TIMEOUT: Timeout occurred.
1396  ****************************************************************************************
1397  */
1399 
1400 /**
1401  ****************************************************************************************
1402  * @brief De-initializes the ISO7816 according to the specified parameters
1403  * in the iso7816_init_t and initialize the associated handle.
1404  *
1405  * @param[in] p_iso7816: Pointer to an ISO7816 handle which contains the configuration
1406  * information for the specified ISO7816.
1407  *
1408  * @note The function will call the hal_iso7816_deinit function to De-initialize the HAL ISO7816.
1409  *
1410  * @retval ::HAL_OK: Operation is OK.
1411  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1412  * @retval ::HAL_BUSY: Driver is busy.
1413  * @retval ::HAL_TIMEOUT: Timeout occurred.
1414  ****************************************************************************************
1415  */
1417 
1418 /**
1419  ****************************************************************************************
1420  * @brief This function registers the callback function to the ROM area.
1421  *
1422  * @note This function needs to be called before hal_iso7816_init.
1423  *
1424  * @param[in] iso7816_callback: Pointer to callback structure function. @ref iso7816_callback_t
1425  ****************************************************************************************
1426  */
1428 
1429 #endif /* HAL_ISO7816_MODULE_ENABLED */
1430 
1431 
1432 #ifdef HAL_PDM_MODULE_ENABLED
1433 
1434 /**
1435  ****************************************************************************************
1436  * @brief Initialize the PDM according to the specified parameters
1437  * in the pdm_init_t and initialize the associated handle.
1438  *
1439  * @param[in] p_pdm: Pointer to an PDM handle which contains the configuration information for
1440  * the specified PDM module.
1441  *
1442  * @note The function will call the hal_pdm_init function to initialize the HAL PDM.
1443  *
1444  * @retval ::HAL_OK: Operation is OK.
1445  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1446  * @retval ::HAL_BUSY: Driver is busy.
1447  * @retval ::HAL_TIMEOUT: Timeout occurred.
1448  ****************************************************************************************
1449  */
1451 
1452 /**
1453  ****************************************************************************************
1454  * @brief De-initialize the PDM peripheral.
1455  *
1456  * @param[in] p_pdm: Pointer to an PDM handle which contains the configuration information for
1457  * the specified PDM module.
1458  *
1459  * @note The function will call the hal_pdm_deinit function to De-initialize the HAL PDM.
1460  *
1461  * @retval ::HAL_OK: Operation is OK.
1462  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1463  * @retval ::HAL_BUSY: Driver is busy.
1464  * @retval ::HAL_TIMEOUT: Timeout occurred.
1465  ****************************************************************************************
1466  */
1468 
1469 /**
1470  ****************************************************************************************
1471  * @brief This function registers the callback function to the ROM area.
1472  *
1473  * @note This function needs to be called before hal_pdm_init.
1474  *
1475  * @param[in] pdm_callback: Pointer to callback structure function. @ref pdm_callback_t
1476  ****************************************************************************************
1477  */
1479 
1480 #endif /* HAL_PDM_MODULE_ENABLED */
1481 
1482 
1483 #ifdef HAL_DSPI_MODULE_ENABLED
1484 
1485 /**
1486  ****************************************************************************************
1487  * @brief Initialize the DSPI according to the specified parameters
1488  * in the dspi_init_t and initialize the associated handle.
1489  *
1490  * @param[in] p_dspi: Pointer to a DSPI handle which contains the configuration information for the specified DSPI module.
1491  *
1492  * @note The function will call the hal_dspi_init function to initialize the HAL DSPI.
1493  *
1494  * @retval ::HAL_OK: Operation is OK.
1495  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1496  * @retval ::HAL_BUSY: Driver is busy.
1497  * @retval ::HAL_TIMEOUT: Timeout occurred.
1498  ****************************************************************************************
1499  */
1501 
1502 /**
1503  ****************************************************************************************
1504  * @brief De-initialize the DSPI peripheral.
1505  *
1506  * @param[in] p_dspi: Pointer to a DSPI handle which contains the configuration information for the specified DSPI module.
1507  *
1508  * @note The function will call the hal_dspi_deinit function to De-initialize the HAL DSPI.
1509  *
1510  * @retval ::HAL_OK: Operation is OK.
1511  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1512  * @retval ::HAL_BUSY: Driver is busy.
1513  * @retval ::HAL_TIMEOUT: Timeout occurred.
1514  ****************************************************************************************
1515  */
1517 
1518 /**
1519  ****************************************************************************************
1520  * @brief This function registers the callback function to the ROM area.
1521  *
1522  * @note This function needs to be called before hal_dspi_init.
1523  *
1524  * @param[in] dspi_callback: Pointer to callback structure function. @ref dspi_callback_t
1525  ****************************************************************************************
1526  */
1528 
1529 #endif /* HAL_DSPI_MODULE_ENABLED */
1530 
1531 
1532 
1533 #ifdef HAL_GPADC_MODULE_ENABLED
1534 
1535 /**
1536  ****************************************************************************************
1537  * @brief Initialize the GPADC according to the specified parameters
1538  * in the gpadc_init_t and initialize the associated handle.
1539  *
1540  * @param[in] p_gpadc: Pointer to an GPADC handle which contains the configuration information for
1541  * the specified GPADC module.
1542  *
1543  * @note The function will call the hal_gpadc_init function to initialize the HAL GPADC.
1544  *
1545  * @retval ::HAL_OK: Operation is OK.
1546  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1547  * @retval ::HAL_BUSY: Driver is busy.
1548  * @retval ::HAL_TIMEOUT: Timeout occurred.
1549  ****************************************************************************************
1550  */
1551 hal_status_t hal_gpadc_init_ext(gpadc_handle_t *p_gpadc);
1552 
1553 /**
1554  ****************************************************************************************
1555  * @brief De-initialize the GPADC peripheral.
1556  *
1557  * @param[in] p_gpadc: Pointer to an GPADC handle which contains the configuration information for
1558  * the specified GPADC module.
1559  *
1560  * @note The function will call the hal_gpadc_deinit function to De-initialize the HAL GPADC.
1561  *
1562  * @retval ::HAL_OK: Operation is OK.
1563  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1564  * @retval ::HAL_BUSY: Driver is busy.
1565  * @retval ::HAL_TIMEOUT: Timeout occurred.
1566  ****************************************************************************************
1567  */
1568 hal_status_t hal_gpadc_deinit_ext(gpadc_handle_t *p_gpadc);
1569 
1570 /**
1571  ****************************************************************************************
1572  * @brief This function registers the callback function to the ROM area.
1573  *
1574  * @note This function needs to be called before hal_gpadc_init.
1575  *
1576  * @param[in] gpadc_callback: Pointer to callback structure function. @ref gpadc_callback_t
1577  ****************************************************************************************
1578  */
1579 void hal_gpadc_register_callback(gpadc_callback_t *gpadc_callback);
1580 
1581 #endif /* HAL_GPADC_MODULE_ENABLED */
1582 
1583 
1584 #ifdef HAL_USB_MODULE_ENABLED
1585 
1586 /**
1587  ****************************************************************************************
1588  * @brief Initialize the USB according to the specified parameters
1589  * in the usb_init_t and initialize the associated handle.
1590  *
1591  * @param[in] p_usb: Pointer to an USB handle which contains the configuration information for the specified USB module.
1592  *
1593  * @note The function will call the hal_usb_init function to initialize the HAL USB.
1594  *
1595  * @retval ::HAL_OK: Operation is OK.
1596  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1597  * @retval ::HAL_BUSY: Driver is busy.
1598  * @retval ::HAL_TIMEOUT: Timeout occurred.
1599  ****************************************************************************************
1600  */
1602 
1603 /**
1604  ****************************************************************************************
1605  * @brief De-initialize the USB peripheral.
1606  *
1607  * @param[in] p_usb: Pointer to an USB handle which contains the configuration information for the specified USB module.
1608  *
1609  * @note The function will call the hal_usb_deinit function to De-initialize the HAL USB.
1610  *
1611  * @retval ::HAL_OK: Operation is OK.
1612  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1613  * @retval ::HAL_BUSY: Driver is busy.
1614  * @retval ::HAL_TIMEOUT: Timeout occurred.
1615  ****************************************************************************************
1616  */
1618 
1619 /**
1620  ****************************************************************************************
1621  * @brief This function registers the callback function to the ROM area.
1622  *
1623  * @note This function needs to be called before hal_usb_init.
1624  *
1625  * @param[in] usb_callback: Pointer to callback structure function. @ref usb_callback_t
1626  ****************************************************************************************
1627  */
1629 
1630 #endif /* HAL_USB_MODULE_ENABLED */
1631 
1632 #ifdef HAL_BOD_MODULE_ENABLED
1633 
1634 /**
1635  ****************************************************************************************
1636  * @brief Initialize the BOD according to the specified parameters
1637  * in the bod_init_t and initialize the associated handle.
1638  *
1639  * @param[in] p_bod: Pointer to an BOD handle which contains the configuration information for
1640  * the specified BOD module.
1641  *
1642  * @retval ::HAL_OK: Operation is OK.
1643  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1644  * @retval ::HAL_BUSY: Driver is busy.
1645  * @retval ::HAL_TIMEOUT: Timeout occurred.
1646  ****************************************************************************************
1647  */
1649 
1650 /**
1651  ****************************************************************************************
1652  * @brief De-initialize the BOD peripheral.
1653  *
1654  * @param[in] p_bod: Pointer to an BOD handle which contains the configuration information for
1655  * the specified BOD module.
1656  *
1657  * @retval ::HAL_OK: Operation is OK.
1658  * @retval ::HAL_ERROR: Parameter error or operation not supported.
1659  * @retval ::HAL_BUSY: Driver is busy.
1660  * @retval ::HAL_TIMEOUT: Timeout occurred.
1661  ****************************************************************************************
1662  */
1664 
1665 /**
1666  ****************************************************************************************
1667  * @brief This function registers the callback function to the ROM area.
1668  *
1669  * @note This function needs to be called before hal_bod__init.
1670  *
1671  * @param[in] bod_callback: Pointer to callback structure function. @ref bod_callback_t
1672  ****************************************************************************************
1673  */
1675 #endif
1676 
1677 /** @} */
1678 
1679 /** @} */
1680 
1681 #ifdef __cplusplus
1682 }
1683 #endif
1684 
1685 #endif /* __GR55xx_HAL_BR_H__ */
1686 
1687 /** @} */
1688 
1689 /** @} */
1690 
1691 /** @} */
hal_usb_init_ext
hal_status_t hal_usb_init_ext(usb_handle_t *p_usb)
Initialize the USB according to the specified parameters in the usb_init_t and initialize the associa...
_bod_handle
BOD handle Structure definition.
Definition: gr55xx_hal_bod.h:84
_i2s_callback
HAL_I2S Callback function definition.
Definition: gr55xx_hal_i2s.h:185
hal_i2s_init_ext
hal_status_t hal_i2s_init_ext(i2s_handle_t *p_i2s)
Initialize the I2S according to the specified parameters in the i2s_init_t and initialize the associa...
_hal_callback::msp_deinit
void(* msp_deinit)(void)
Definition: gr55xx_hal_br.h:78
_xqspi_callback
HAL_XQSPI Callback function definition.
Definition: gr55xx_hal_xqspi.h:219
_spi_handle
SPI handle Structure definition.
Definition: gr55xx_hal_spi.h:196
hal_pwr_register_timer_elaspsed_handler
void hal_pwr_register_timer_elaspsed_handler(pwr_slp_elapsed_handler_t pwr_slp_elapsed_hander)
This function registers the callback function to the ROM area.
hal_qspi_deinit_ext
hal_status_t hal_qspi_deinit_ext(qspi_handle_t *p_qspi)
De-initialize the QSPI peripheral.
hal_hmac_deinit_ext
hal_status_t hal_hmac_deinit_ext(hmac_handle_t *p_hmac)
De-initialize the HMAC peripheral.
hal_wdt_init_ext
hal_status_t hal_wdt_init_ext(wdt_handle_t *p_wdt)
Initialize the WDT according to the specified parameters in the wdt_init_t of associated handle.
_usb_handle
USB handle Structure definition.
Definition: gr55xx_hal_usb.h:186
hal_calendar_register_callback
void hal_calendar_register_callback(calendar_callback_t *calendar_callback)
This function registers the callback function to the ROM area.
hal_exflash_deinit_ext
hal_status_t hal_exflash_deinit_ext(void)
De-initialize the exFlash peripheral.
_comp_callback
HAL COMP Callback function definition.
Definition: gr55xx_hal_comp.h:137
hal_i2c_register_callback
void hal_i2c_register_callback(i2c_callback_t *i2c_callback)
This function registers the callback function to the ROM area.
_efuse_handle
eFuse handle Structure definition
Definition: gr55xx_hal_efuse.h:113
_iso7816_handle_t
ISO7816 handle Structure definition.
Definition: gr55xx_hal_iso7816.h:121
hal_aon_gpio_deinit_ext
void hal_aon_gpio_deinit_ext(uint32_t aon_gpio_pin)
De-initialize the AON_GPIOx peripheral registers to their default reset values.
_iso7816_callback
HAL_ISO7816 Callback function definition.
Definition: gr55xx_hal_iso7816.h:155
hal_pdm_init_ext
hal_status_t hal_pdm_init_ext(pdm_handle_t *p_pdm)
Initialize the PDM according to the specified parameters in the pdm_init_t and initialize the associa...
hal_exflash_register_callback
void hal_exflash_register_callback(exflash_callback_t *exflash_callback)
This function registers the callback function to the ROM area.
hal_wdt_register_callback
void hal_wdt_register_callback(wdt_callback_t *wdt_callback)
This function registers the callback function to the ROM area.
hal_comp_register_callback
void hal_comp_register_callback(comp_callback_t *comp_callback)
This function registers the callback function to the ROM area.
_msio_init
MSIO init structure definition.
Definition: gr55xx_hal_msio.h:102
hal_gpio_deinit_ext
void hal_gpio_deinit_ext(gpio_regs_t *GPIOx, uint32_t gpio_pin)
De-initialize the GPIOx peripheral registers to their default reset values.
hal_dual_timer_base_deinit_ext
hal_status_t hal_dual_timer_base_deinit_ext(dual_timer_handle_t *p_dual_timer)
De-initialize the DUAL TIMER peripheral.
_i2c_handle
I2C handle Structure definition.
Definition: gr55xx_hal_i2c.h:187
hal_aon_gpio_register_callback
void hal_aon_gpio_register_callback(aon_gpio_callback_t *aon_gpio_callback)
This function registers the callback function to the ROM area.
hal_uart_init_ext
hal_status_t hal_uart_init_ext(uart_handle_t *p_uart)
Initialize the UART according to the specified parameters in the uart_init_t and initialize the assoc...
_aon_wdt_callback
HAL_AON_WDT Callback function definition.
Definition: gr55xx_hal_aon_wdt.h:124
hal_pkc_init_ext
hal_status_t hal_pkc_init_ext(pkc_handle_t *p_pkc)
Initialize the PKC according to the specified parameters in the pkc_init_t and initialize the associa...
hal_aon_wdt_deinit_ext
hal_status_t hal_aon_wdt_deinit_ext(aon_wdt_handle_t *p_aon_wdt)
De-initialize the AON_WDT peripheral.
_rng_callback
HAL_RNG Callback function definition.
Definition: gr55xx_hal_rng.h:156
_pkc_handle
PKC handle Structure definition.
Definition: gr55xx_hal_pkc.h:134
hal_hmac_register_callback
void hal_hmac_register_callback(hmac_callback_t *hmac_callback)
This function registers the callback function to the ROM area.
hal_adc_deinit_ext
hal_status_t hal_adc_deinit_ext(adc_handle_t *p_adc)
De-initialize the ADC peripheral.
_uart_callback
HAL_UART Callback function definition.
Definition: gr55xx_hal_uart.h:207
hal_msio_register_callback
void hal_msio_register_callback(msio_callback_t *msio_callback)
This function registers the callback function to the ROM area.
_pkc_callback
HAL_PKC Callback function definition.
Definition: gr55xx_hal_pkc.h:289
_calendar_handle
CALENDAR handle Structure definition.
Definition: gr55xx_hal_calendar.h:132
hal_rng_register_callback
void hal_rng_register_callback(rng_callback_t *rng_callback)
This function registers the callback function to the ROM area.
hal_bod_deinit_ext
hal_status_t hal_bod_deinit_ext(bod_handle_t *p_bod)
De-initialize the BOD peripheral.
hal_aon_wdt_register_callback
void hal_aon_wdt_register_callback(aon_wdt_callback_t *aon_wdt_callback)
This function registers the callback function to the ROM area.
_qspi_callback
HAL_QSPI Callback function definition.
Definition: gr55xx_hal_qspi.h:375
hal_i2c_deinit_ext
hal_status_t hal_i2c_deinit_ext(i2c_handle_t *p_i2c)
De-initialize the I2C peripheral.
_comp_handle
COMP handle Structure definition.
Definition: gr55xx_hal_comp.h:109
_uart_handle
UART handle Structure definition.
Definition: gr55xx_hal_uart.h:153
hal_spi_deinit_ext
hal_status_t hal_spi_deinit_ext(spi_handle_t *p_spi)
De-initialize the SPI peripheral.
hal_xqspi_init_ext
hal_status_t hal_xqspi_init_ext(xqspi_handle_t *p_xqspi)
Initialize the XQSPI according to the specified parameters in the xqspi_init_t and initialize the ass...
hal_adc_init_ext
hal_status_t hal_adc_init_ext(adc_handle_t *p_adc)
Initialize the ADC according to the specified parameters in the adc_init_t and initialize the associa...
_rtc_handle_t
rtc handle definition
Definition: gr55xx_hal_rtc.h:273
_dual_timer_handle
DUAL_TIMER handle Structure definition.
Definition: gr55xx_hal_dual_tim.h:119
_gpio_callback
HAL_GPIO Callback function definition.
Definition: gr55xx_hal_gpio.h:77
hal_msio_init_ext
void hal_msio_init_ext(msio_pad_t MSIOx, msio_init_t *p_msio_init)
Initialize the MSIOx peripheral according to the specified parameters in the msio_init_t.
hal_rng_init_ext
hal_status_t hal_rng_init_ext(rng_handle_t *p_rng)
Initialize the RNG according to the specified parameters in the rng_init_t of associated handle.
hal_pkc_register_callback
void hal_pkc_register_callback(pkc_callback_t *pkc_callback)
This function registers the callback function to the ROM area.
hal_iso7816_register_callback
void hal_iso7816_register_callback(iso7816_callback_t *iso7816_callback)
This function registers the callback function to the ROM area.
hal_timer_register_callback
void hal_timer_register_callback(timer_base_callback_t *timer_base_callback)
This function registers the callback function to the ROM area.
_exflash_callback
HAL_EXFLASH Callback function definition.
Definition: gr55xx_hal_exflash.h:190
_aon_gpio_callback
HAL AON_GPIO Callback function definition.
Definition: gr55xx_hal_aon_gpio.h:115
hal_comp_init_ext
hal_status_t hal_comp_init_ext(comp_handle_t *p_comp)
Initialize the COMP according to the specified parameters in the comp_init_t and initialize the assoc...
hal_gpio_register_callback
void hal_gpio_register_callback(gpio_callback_t *gpio_callback)
This function registers the callback function to the ROM area.
hal_gpio_init_ext
void hal_gpio_init_ext(gpio_regs_t *GPIOx, gpio_init_t *p_gpio_init)
Initialize the GPIOx peripheral according to the specified parameters in the p_gpio_init.
_hmac_callback
HAL_HMAC Callback function definition.
Definition: gr55xx_hal_hmac.h:170
hal_xqspi_deinit_ext
hal_status_t hal_xqspi_deinit_ext(xqspi_handle_t *p_xqspi)
De-initialize the XQSPI peripheral.
hal_usb_register_callback
void hal_usb_register_callback(usb_callback_t *usb_callback)
This function registers the callback function to the ROM area.
hal_aes_init_ext
hal_status_t hal_aes_init_ext(aes_handle_t *p_aes)
Initialize the AES according to the specified parameters in the aes_init_t and initialize the associa...
hal_init_ext
hal_status_t hal_init_ext(void)
This function configures time base source, NVIC and Low level hardware.
hal_dual_timer_register_callback
void hal_dual_timer_register_callback(dual_timer_callback_t *dual_timer_callback)
This function registers the callback function to the ROM area.
_xqspi_handle_t
XQSPI handle Structure definition.
Definition: gr55xx_hal_xqspi.h:139
hal_wdt_deinit_ext
hal_status_t hal_wdt_deinit_ext(wdt_handle_t *p_wdt)
De-initialize the WDT peripheral.
hal_i2s_register_callback
void hal_i2s_register_callback(i2s_callback_t *i2s_callback)
This function registers the callback function to the ROM area.
hal_efuse_deinit_ext
hal_status_t hal_efuse_deinit_ext(efuse_handle_t *p_efuse)
De-initialize the eFuse peripheral.
_i2s_handle
I2S handle Structure definition.
Definition: gr55xx_hal_i2s.h:133
hal_aes_deinit_ext
hal_status_t hal_aes_deinit_ext(aes_handle_t *p_aes)
De-initialize the AES peripheral.
hal_aes_register_callback
void hal_aes_register_callback(aes_callback_t *aes_callback)
This function registers the callback function to the ROM area.
hal_adc_register_callback
void hal_adc_register_callback(adc_callback_t *adc_callback)
This function registers the callback function to the ROM area.
hal_aon_wdt_init_ext
hal_status_t hal_aon_wdt_init_ext(aon_wdt_handle_t *p_aon_wdt)
Initialize the AON_WDT according to the specified parameters in the wdt_init_t of associated handle.
_wdt_callback
HAL_WDT Callback function definition.
Definition: gr55xx_hal_wdt.h:125
hal_xqspi_register_callback
void hal_xqspi_register_callback(xqspi_callback_t *xqspi_callback)
This function registers the callback function to the ROM area.
_rng_handle
RNG handle Structure definition.
Definition: gr55xx_hal_rng.h:125
_usb_callback
HAL_USB Callback function definition.
Definition: gr55xx_hal_usb.h:218
_dspi_handle
DSPI handle Structure definition.
Definition: gr55xx_hal_dspi.h:117
hal_deinit_ext
hal_status_t hal_deinit_ext(void)
This function de-initializes common part of the HAL and stops the source of time base.
pwm_handle_t
PWM handle Structure definition.
Definition: gr55xx_hal_pwm.h:166
_pdm_handle
PDM handle Structure definition.
Definition: gr55xx_hal_pdm.h:92
hal_pwr_config_timer_wakeup_ext
hal_status_t hal_pwr_config_timer_wakeup_ext(uint8_t mode, uint32_t value)
Configure the AON Sleep Timer mode, count and start used to wakeup MCU.
hal_iso7816_deinit_ext
hal_status_t hal_iso7816_deinit_ext(iso7816_handle_t *p_iso7816)
De-initializes the ISO7816 according to the specified parameters in the iso7816_init_t and initialize...
msio_pad_t
msio_pad_t
MSIO pad Enumerations definition.
Definition: gr55xx_ll_msio.h:77
_hmac_handle
HMAC handle Structure definition.
Definition: gr55xx_hal_hmac.h:126
hal_pwm_init_ext
hal_status_t hal_pwm_init_ext(pwm_handle_t *p_pwm)
Initialize the PWM mode according to the specified parameters in the pwm_init_t and initialize the as...
_i2c_callback
HAL_I2C Callback function definition.
Definition: gr55xx_hal_i2c.h:239
_gpio_init
GPIO init structure definition.
Definition: gr55xx_hal_gpio.h:109
_adc_handle
ADC handle Structure definition.
Definition: gr55xx_hal_adc.h:130
hal_i2s_deinit_ext
hal_status_t hal_i2s_deinit_ext(i2s_handle_t *p_i2s)
De-initialize the I2S peripheral.
pwr_slp_elapsed_handler_t
void(* pwr_slp_elapsed_handler_t)(void)
HAL_SLP_TIM Elapsed Callback function definition.
Definition: gr55xx_hal_sleep_timer.h:76
hal_dspi_init_ext
hal_status_t hal_dspi_init_ext(dspi_handle_t *p_dspi)
Initialize the DSPI according to the specified parameters in the dspi_init_t and initialize the assoc...
hal_efuse_register_callback
void hal_efuse_register_callback(efuse_callback_t *efuse_callback)
This function registers the callback function to the ROM area.
hal_status_t
hal_status_t
HAL Status structures definition.
Definition: gr55xx_hal_def.h:70
hal_timer_base_init_ext
hal_status_t hal_timer_base_init_ext(timer_handle_t *p_timer)
Initialize the TIMER according to the specified parameters in the timer_init_t and initialize the ass...
hal_dspi_register_callback
void hal_dspi_register_callback(dspi_callback_t *dspi_callback)
This function registers the callback function to the ROM area.
hal_register_callback
void hal_register_callback(hal_callback_t *hal_callback)
This function registers the callback function to the ROM area.
hal_uart_register_callback
void hal_uart_register_callback(uart_callback_t *uart_callback)
This function registers the callback function to the ROM area.
_aes_handle
AES handle Structure definition.
Definition: gr55xx_hal_aes.h:130
_pdm_callback
HAL PDM Callback function definition.
Definition: gr55xx_hal_pdm.h:118
gr55xx_hal.h
This file contains all the functions prototypes for the HAL module driver.
hal_rtc_init_ext
hal_status_t hal_rtc_init_ext(rtc_handle_t *p_rtc)
Initialize the RTC according to the specified parameters in the rtc_init_t of associated handle....
_hal_callback
HAL_HAL Callback function definition.
Definition: gr55xx_hal_br.h:76
hal_iso7816_init_ext
hal_status_t hal_iso7816_init_ext(iso7816_handle_t *p_iso7816)
Initializes the ISO7816 according to the specified parameters in the iso7816_init_t and initialize th...
hal_bod_init_ext
hal_status_t hal_bod_init_ext(bod_handle_t *p_bod)
Initialize the BOD according to the specified parameters in the bod_init_t and initialize the associa...
_wdt_handle
WDT handle Structure definition.
Definition: gr55xx_hal_wdt.h:99
_rtc_callback
HAL_RTC Callback function definition.
Definition: gr55xx_hal_rtc.h:305
hal_uart_deinit_ext
hal_status_t hal_uart_deinit_ext(uart_handle_t *p_uart)
De-initialize the UART peripheral.
hal_spi_register_callback
void hal_spi_register_callback(spi_callback_t *spi_callback)
This function registers the callback function to the ROM area.
hal_exflash_init_ext
hal_status_t hal_exflash_init_ext(void)
Initialize the exFlash according to the specified parameters in the exflash_init_t and initialize the...
hal_aon_gpio_init_ext
void hal_aon_gpio_init_ext(aon_gpio_init_t *p_aon_gpio_init)
Initialize the AON_GPIOx peripheral according to the specified parameters in the aon_gpio_init_t.
_timer_handle
TIMER handle Structure definition.
Definition: gr55xx_hal_tim.h:113
_msio_callback
HAL_MSIO Callback function definition.
Definition: gr55xx_hal_msio.h:73
_hal_callback::systick_callback
void(* systick_callback)(void)
Definition: gr55xx_hal_br.h:79
hal_usb_deinit_ext
hal_status_t hal_usb_deinit_ext(usb_handle_t *p_usb)
De-initialize the USB peripheral.
hal_rtc_register_callback
void hal_rtc_register_callback(rtc_callback_t *rtc_callback)
This function registers the callback function to the ROM area.
hal_qspi_register_callback
void hal_qspi_register_callback(qspi_callback_t *qspi_callback)
This function registers the callback function to the ROM area.
_bod_callback
HAL BOD Callback function definition.
Definition: gr55xx_hal_bod.h:93
hal_msio_deinit_ext
void hal_msio_deinit_ext(msio_pad_t MSIOx, uint32_t msio_pin)
De-initialize the MSIOx peripheral registers to their default reset values.
hal_timer_base_deinit_ext
hal_status_t hal_timer_base_deinit_ext(timer_handle_t *p_timer)
De-initialize the TIMER peripheral.
hal_comp_deinit_ext
hal_status_t hal_comp_deinit_ext(comp_handle_t *p_comp)
De-initialize the COMP peripheral.
_hal_callback::msp_init
void(* msp_init)(void)
Definition: gr55xx_hal_br.h:77
hal_rng_deinit_ext
hal_status_t hal_rng_deinit_ext(rng_handle_t *p_rng)
De-initialize the RNG peripheral.
hal_callback_t
struct _hal_callback hal_callback_t
HAL_HAL Callback function definition.
_spi_callback
HAL_SPI Callback function definition.
Definition: gr55xx_hal_spi.h:252
hal_pwm_register_callback
void hal_pwm_register_callback(pwm_callback_t *pwm_callback)
This function registers the callback function to the ROM area.
hal_efuse_init_ext
hal_status_t hal_efuse_init_ext(efuse_handle_t *p_efuse)
Initialize the eFuse according to the specified parameters in the efuse_init_t and initialize the ass...
hal_qspi_init_ext
hal_status_t hal_qspi_init_ext(qspi_handle_t *p_qspi)
Initialize the QSPI according to the specified parameters in the qspi_init_t and initialize the assoc...
_aon_wdt_handle
AON_WDT handle Structure definition.
Definition: gr55xx_hal_aon_wdt.h:99
_adc_callback
HAL ADC Callback function definition.
Definition: gr55xx_hal_adc.h:166
hal_pkc_deinit_ext
hal_status_t hal_pkc_deinit_ext(pkc_handle_t *p_pkc)
De-initialize the PKC peripheral.
hal_pdm_deinit_ext
hal_status_t hal_pdm_deinit_ext(pdm_handle_t *p_pdm)
De-initialize the PDM peripheral.
hal_dspi_deinit_ext
hal_status_t hal_dspi_deinit_ext(dspi_handle_t *p_dspi)
De-initialize the DSPI peripheral.
hal_calendar_init_ext
hal_status_t hal_calendar_init_ext(calendar_handle_t *p_calendar)
Initialize the CALENDAR according to the specified parameters in the calendar_init_t of associated ha...
hal_pdm_register_callback
void hal_pdm_register_callback(pdm_callback_t *pdm_callback)
This function registers the callback function to the ROM area.
hal_calendar_deinit_ext
hal_status_t hal_calendar_deinit_ext(calendar_handle_t *p_calendar)
De-initialize the CALENDAR peripheral.
hal_bod_register_callback
void hal_bod_register_callback(bod_callback_t *bod_callback)
This function registers the callback function to the ROM area.
_efuse_callback
HAL_EFUSE Callback function definition.
Definition: gr55xx_hal_efuse.h:168
hal_rtc_deinit_ext
hal_status_t hal_rtc_deinit_ext(rtc_handle_t *p_rtc)
DeInitialize the RTC according to the specified parameters in the rtc_init_t of associated handle....
_dual_timer_callback
HAL_DUAL_TIMER Callback function definition.
Definition: gr55xx_hal_dual_tim.h:145
_aon_gpio_init
AON_GPIO init structure definition.
Definition: gr55xx_hal_aon_gpio.h:87
_calendar_callback
HAL_CALENDAR Callback function definition.
Definition: gr55xx_hal_calendar.h:164
_dspi_callback
HAL_DSPI Callback function definition.
Definition: gr55xx_hal_dspi.h:182
hal_pwm_deinit_ext
hal_status_t hal_pwm_deinit_ext(pwm_handle_t *p_pwm)
De-initialize the PWM peripheral.
hal_dual_timer_base_init_ext
hal_status_t hal_dual_timer_base_init_ext(dual_timer_handle_t *p_dual_timer)
Initialize the DUAL TIMER according to the specified parameters in the dual_timer_init_t and initiali...
_qspi_handle
QSPI handle Structure definition.
Definition: gr55xx_hal_qspi.h:157
hal_i2c_init_ext
hal_status_t hal_i2c_init_ext(i2c_handle_t *p_i2c)
Initializes the I2C according to the specified parameters in the i2c_init_t and initialize the associ...
_pwm_callback
HAL_PWM Callback function definition.
Definition: gr55xx_hal_pwm.h:198
_timer_base_callback
HAL_TIMER Callback function definition.
Definition: gr55xx_hal_tim.h:140
hal_hmac_init_ext
hal_status_t hal_hmac_init_ext(hmac_handle_t *p_hmac)
Initialize the HMAC according to the specified parameters in the hmac_init_t and initialize the assoc...
_aes_callback
HAL AES Callback function definition.
Definition: gr55xx_hal_aes.h:170
hal_spi_init_ext
hal_status_t hal_spi_init_ext(spi_handle_t *p_spi)
Initialize the SPI according to the specified parameters in the spi_init_t and initialize the associa...