1 /**
2   ******************************************************************************
3   * @file    bl616_romdriver_e907.h
4   * @version V1.0
5   * @date
6   * @brief   This file is the standard driver header file
7   ******************************************************************************
8   * @attention
9   *
10   * <h2><center>&copy; COPYRIGHT(c) 2020 Bouffalo Lab</center></h2>
11   *
12   * Redistribution and use in source and binary forms, with or without modification,
13   * are permitted provided that the following conditions are met:
14   *   1. Redistributions of source code must retain the above copyright notice,
15   *      this list of conditions and the following disclaimer.
16   *   2. Redistributions in binary form must reproduce the above copyright notice,
17   *      this list of conditions and the following disclaimer in the documentation
18   *      and/or other materials provided with the distribution.
19   *   3. Neither the name of Bouffalo Lab nor the names of its contributors
20   *      may be used to endorse or promote products derived from this software
21   *      without specific prior written permission.
22   *
23   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
24   * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25   * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26   * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
27   * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28   * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
29   * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30   * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
31   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32   * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33   *
34   ******************************************************************************
35   */
36 #ifndef __BL616_ROMDRIVER_E907_H__
37 #define __BL616_ROMDRIVER_E907_H__
38 
39 #include "bl616_glb.h"
40 #include "bl616_glb_gpio.h"
41 #include "bl616_pds.h"
42 #include "bl616_hbn.h"
43 #include "bl616_clock.h"
44 #include "bl616_ef_ctrl.h"
45 #include "bflb_sf_ctrl.h"
46 #include "bflb_sflash.h"
47 #include "bflb_sf_cfg.h"
48 #include "bflb_xip_sflash.h"
49 // #include "bl616_uart.h"
50 
51 /** @addtogroup  bl616_Peripheral_Driver
52  *  @{
53  */
54 
55 /** @addtogroup  ROMDRIVER
56  *  @{
57  */
58 
59 /** @defgroup  ROMDRIVER_Public_Types
60  *  @{
61  */
62 
63 #define ROMAPI_INDEX_SECT_SIZE     (0x800)
64 #define ROMAPI_INDEX_MAX           (ROMAPI_INDEX_SECT_SIZE / 4 - 1)
65 
66 typedef enum {
67     ROM_API_INDEX_VERSION = 0,
68     ROM_API_INDEX_RSVD_0 ,
69     ROM_API_INDEX_RSVD_1,
70     ROM_API_INDEX_RSVD_LAST,
71 
72 
73     ROM_API_INDEX_AON_Power_Off_BG,
74     ROM_API_INDEX_AON_Power_Off_LDO15_RF,
75     ROM_API_INDEX_AON_Power_Off_MBG,
76     ROM_API_INDEX_AON_Power_Off_SFReg,
77     ROM_API_INDEX_AON_Power_Off_XTAL,
78     ROM_API_INDEX_AON_Power_On_BG,
79     ROM_API_INDEX_AON_Power_On_LDO15_RF,
80     ROM_API_INDEX_AON_Power_On_MBG,
81     ROM_API_INDEX_AON_Power_On_SFReg,
82     ROM_API_INDEX_AON_Power_On_XTAL,
83     ROM_API_INDEX_AON_Set_Xtal_CapCode,
84     ROM_API_INDEX_AON_Trim_DcdcDis,
85     ROM_API_INDEX_AON_Trim_DcdcVoutSel,
86     ROM_API_INDEX_AON_Trim_DcdcVoutTrim,
87     ROM_API_INDEX_AON_Trim_Ldo11socVoutTrim,
88     ROM_API_INDEX_AON_Trim_Usb20RcalCode,
89     ROM_API_INDEX_AON_Get_Xtal_CapCode,
90 
91     ROM_API_INDEX_CPU_MTimer_Delay_MS,
92     ROM_API_INDEX_CPU_MTimer_Delay_US,
93     ROM_API_INDEX_CPU_Reset_MTimer,
94     ROM_API_INDEX_CPU_Set_MTimer_CLK,
95     ROM_API_INDEX_CPU_Set_MTimer_RST,
96     ROM_API_INDEX_CPU_Get_MTimer_Clock,
97     ROM_API_INDEX_CPU_Get_MTimer_Source_Clock,
98 
99     ROM_API_INDEX_Clock_Audio_ADC_Clock_Get,
100     ROM_API_INDEX_Clock_Get_ISP_Clk,
101     ROM_API_INDEX_Clock_Get_PSRAMB_Clk,
102     ROM_API_INDEX_Clock_Peripheral_Clock_Get,
103     ROM_API_INDEX_Clock_System_Clock_Get,
104 
105     ROM_API_INDEX_SystemCoreClockGet,
106 
107     ROM_API_INDEX_CPU_Get_CPU_Cycle,
108     ROM_API_INDEX_CPU_Get_MTimer_Counter,
109     ROM_API_INDEX_CPU_Get_MTimer_MS,
110     ROM_API_INDEX_CPU_Get_MTimer_US,
111 
112     ROM_API_INDEX_EF_Ctrl_Crc_Result,
113     ROM_API_INDEX_EF_Ctrl_Get_Customer_PIDVID,
114     ROM_API_INDEX_EF_Ctrl_Read_Chip_ID,
115     ROM_API_INDEX_EF_Ctrl_Read_MAC_Address,
116     ROM_API_INDEX_EF_Ctrl_Read_MAC_Address_Raw,
117     ROM_API_INDEX_EF_Ctrl_AutoLoad_Done,
118     ROM_API_INDEX_EF_Ctrl_Busy,
119     ROM_API_INDEX_EF_Ctrl_Crc_Is_Busy,
120     ROM_API_INDEX_EF_Ctrl_Get_Trim_Parity,
121     ROM_API_INDEX_EF_Ctrl_Is_All_Bits_Zero,
122     ROM_API_INDEX_EF_Ctrl_Read_FlashDlyCoe,
123     ROM_API_INDEX_EF_Ctrl_Clear,
124     ROM_API_INDEX_EF_Ctrl_Crc_Enable,
125     ROM_API_INDEX_EF_Ctrl_Crc_Set_Golden,
126     ROM_API_INDEX_EF_Ctrl_Load_Efuse_R0,
127     ROM_API_INDEX_EF_Ctrl_Program_Direct_R0,
128     ROM_API_INDEX_EF_Ctrl_Program_Efuse_0,
129     ROM_API_INDEX_EF_Ctrl_Read_ADC_Gain_Trim,
130     ROM_API_INDEX_EF_Ctrl_Read_AES_Key,
131     ROM_API_INDEX_EF_Ctrl_Read_Dbg_Pwd,
132     ROM_API_INDEX_EF_Ctrl_Read_DcdcDis_Trim,
133     ROM_API_INDEX_EF_Ctrl_Read_DcdcVoutSel_Trim,
134     ROM_API_INDEX_EF_Ctrl_Read_DcdcVoutTrim_Trim,
135     ROM_API_INDEX_EF_Ctrl_Read_Device_Info,
136     ROM_API_INDEX_EF_Ctrl_Read_Direct_R0,
137     ROM_API_INDEX_EF_Ctrl_Read_Ldo11socVoutTrim_Trim,
138     ROM_API_INDEX_EF_Ctrl_Read_Ldo18ioBypass_Trim,
139     ROM_API_INDEX_EF_Ctrl_Read_Ldo18ioVoutSel_Trim,
140     ROM_API_INDEX_EF_Ctrl_Read_Ldo18ioVoutTrim_Trim,
141     ROM_API_INDEX_EF_Ctrl_Read_Ldo33VoutTrim_Trim,
142     ROM_API_INDEX_EF_Ctrl_Read_RC32K_Trim,
143     ROM_API_INDEX_EF_Ctrl_Read_RC32M_Trim,
144     ROM_API_INDEX_EF_Ctrl_Read_Secure_Boot,
145     ROM_API_INDEX_EF_Ctrl_Read_Secure_Cfg,
146     ROM_API_INDEX_EF_Ctrl_Read_Sw_Usage,
147     ROM_API_INDEX_EF_Ctrl_Read_TSEN_Trim,
148     ROM_API_INDEX_EF_Ctrl_Read_Usb20RcalCode_Trim,
149     ROM_API_INDEX_EF_Ctrl_Readlock_AES_Key,
150     ROM_API_INDEX_EF_Ctrl_Readlock_Dbg_Pwd,
151     ROM_API_INDEX_EF_Ctrl_Set_sf_key_re_sel,
152     ROM_API_INDEX_EF_Ctrl_Sw_AHB_Clk_0,
153     ROM_API_INDEX_EF_Ctrl_Write_AES_Key,
154     ROM_API_INDEX_EF_Ctrl_Write_Dbg_Pwd,
155     ROM_API_INDEX_EF_Ctrl_Write_MAC_Address,
156     ROM_API_INDEX_EF_Ctrl_Write_Secure_Boot,
157     ROM_API_INDEX_EF_Ctrl_Write_Secure_Cfg,
158     ROM_API_INDEX_EF_Ctrl_Write_Sw_Usage,
159     ROM_API_INDEX_EF_Ctrl_Writelock_AES_Key,
160     ROM_API_INDEX_EF_Ctrl_Writelock_Dbg_Pwd,
161     ROM_API_INDEX_EF_Ctrl_Writelock_MAC_Address,
162     ROM_API_INDEX_EF_Ctrl_Writelock_Sw_Usage,
163 
164     ROM_API_INDEX_GLB_AHB_MCU_Software_Reset,
165     ROM_API_INDEX_GLB_AUPLL_Ref_Clk_Sel,
166     ROM_API_INDEX_GLB_BMX_TO_Init,
167     ROM_API_INDEX_GLB_Clr_BMX_TO_Status,
168     ROM_API_INDEX_GLB_Clr_EMI_Reset_Gate,
169     ROM_API_INDEX_GLB_Clr_Reset_Reason,
170     ROM_API_INDEX_GLB_Config_SDIO_Host_Interrupt_CPU,
171     ROM_API_INDEX_GLB_Config_SDIO_Host_Reset_SDU,
172     ROM_API_INDEX_GLB_Config_SDIO_Host_Reset_System,
173     ROM_API_INDEX_GLB_Get_Auto_Calc_Xtal_Type,
174     ROM_API_INDEX_GLB_Get_MCU_System_CLK_Div,
175     ROM_API_INDEX_GLB_Get_Reset_Reason,
176     ROM_API_INDEX_GLB_IR_RX_GPIO_Sel,
177     ROM_API_INDEX_GLB_Invert_ETH_REF_O_CLK,
178     ROM_API_INDEX_GLB_Invert_ETH_RX_CLK,
179     ROM_API_INDEX_GLB_Invert_ETH_TX_CLK,
180     ROM_API_INDEX_GLB_MCU_SW_System_Reset,
181     ROM_API_INDEX_GLB_PER_Clock_Gate,
182     ROM_API_INDEX_GLB_PER_Clock_UnGate,
183     ROM_API_INDEX_GLB_PLL_CGEN_Clock_Gate,
184     ROM_API_INDEX_GLB_PLL_CGEN_Clock_UnGate,
185     ROM_API_INDEX_GLB_Platform_Wakeup_PDS_Enable,
186     ROM_API_INDEX_GLB_Power_Off_AUPLL,
187     ROM_API_INDEX_GLB_Power_Off_WIFIPLL,
188     ROM_API_INDEX_GLB_Power_On_AUPLL,
189     ROM_API_INDEX_GLB_Power_On_WIFIPLL,
190     ROM_API_INDEX_GLB_Power_On_XTAL_And_PLL_CLK,
191     ROM_API_INDEX_GLB_SPI_Sig_Swap_Set,
192     ROM_API_INDEX_GLB_SW_CPU_Reset,
193     ROM_API_INDEX_GLB_SW_POR_Reset,
194     ROM_API_INDEX_GLB_SW_System_Reset,
195     ROM_API_INDEX_GLB_Sel_MCU_TMR_GPIO_Clock,
196     ROM_API_INDEX_GLB_Set_ADC_CLK,
197     ROM_API_INDEX_GLB_Set_Audio_ADC_CLK,
198     ROM_API_INDEX_GLB_Set_Audio_AUTO_CLK,
199     ROM_API_INDEX_GLB_Set_Audio_SOLO_CLK,
200     ROM_API_INDEX_GLB_Set_Auto_Calc_Xtal_Type,
201     ROM_API_INDEX_GLB_Set_CAM_CLK,
202     ROM_API_INDEX_GLB_Set_CPU_Reset_Address,
203     ROM_API_INDEX_GLB_Set_Chip_Clock_Out_Sel,
204     ROM_API_INDEX_GLB_Set_DBI_CLK,
205     ROM_API_INDEX_GLB_Set_DIG_32K_CLK,
206     ROM_API_INDEX_GLB_Set_DIG_512K_CLK,
207     ROM_API_INDEX_GLB_Set_DIG_CLK_Sel,
208     ROM_API_INDEX_GLB_Set_DMA_CLK,
209     ROM_API_INDEX_GLB_Set_EM_Sel,
210     ROM_API_INDEX_GLB_Set_ETH_REF_O_CLK_Sel,
211     ROM_API_INDEX_GLB_Set_ETH_REF_O_CLK_Sel_2,
212     ROM_API_INDEX_GLB_Set_I2C_CLK,
213     ROM_API_INDEX_GLB_Set_I2S_CLK,
214     ROM_API_INDEX_GLB_Set_IR_CLK,
215     ROM_API_INDEX_GLB_Set_ISP_Muxpll_80M_Sel,
216     ROM_API_INDEX_GLB_Set_MCU_Muxpll_160M_Sel,
217     ROM_API_INDEX_GLB_Set_MCU_Muxpll_80M_Sel,
218     ROM_API_INDEX_GLB_Set_MCU_SPI_0_ACT_MOD_Sel,
219     ROM_API_INDEX_GLB_Set_MCU_System_CLK,
220     ROM_API_INDEX_GLB_Set_MCU_System_CLK_Div,
221     ROM_API_INDEX_GLB_Set_PDM_IO_Sel,
222     ROM_API_INDEX_GLB_Set_PKA_CLK_Sel,
223     ROM_API_INDEX_GLB_Set_PSRAMB_CLK_Sel,
224     ROM_API_INDEX_GLB_Set_PWM1_IO_Sel,
225     ROM_API_INDEX_GLB_Set_Peripheral_DMA_CN,
226     ROM_API_INDEX_GLB_Set_SDH_CLK,
227     ROM_API_INDEX_GLB_Set_SF_CLK,
228     ROM_API_INDEX_GLB_Set_SFlash2_IO_PARM,
229     ROM_API_INDEX_GLB_Set_SFlash_IO_PARM,
230     ROM_API_INDEX_GLB_Set_SPI_CLK,
231     ROM_API_INDEX_GLB_Set_SRAM_PARM,
232     ROM_API_INDEX_GLB_Set_SRAM_RET,
233     ROM_API_INDEX_GLB_Set_SRAM_SLP,
234     ROM_API_INDEX_GLB_Set_SSC_CLK_From_WIFIPLL,
235     ROM_API_INDEX_GLB_Set_Slave_Grp_0_CLK,
236     ROM_API_INDEX_GLB_Set_UART_CLK,
237     ROM_API_INDEX_GLB_Set_USB_CLK_From_WIFIPLL,
238     ROM_API_INDEX_GLB_Swap_MCU_SPI_0_MOSI_With_MISO,
239     ROM_API_INDEX_GLB_Trim_Ldo18ioBypass,
240     ROM_API_INDEX_GLB_Trim_Ldo18ioVoutSel,
241     ROM_API_INDEX_GLB_Trim_Ldo18ioVoutTrim,
242     ROM_API_INDEX_GLB_UART_Fun_Sel,
243     ROM_API_INDEX_GLB_UART_Sig_Swap_Set,
244     ROM_API_INDEX_GLB_WIFIPLL_Ref_Clk_Sel,
245     ROM_API_INDEX_GLB_Get_Core_Type,
246     ROM_API_INDEX_GLB_Get_MCU_Muxpll_160M_Sel,
247     ROM_API_INDEX_GLB_Get_MCU_Muxpll_80M_Sel,
248     ROM_API_INDEX_GLB_Get_SRAM_PARM,
249     ROM_API_INDEX_GLB_Get_SRAM_RET,
250     ROM_API_INDEX_GLB_Get_SRAM_SLP,
251     ROM_API_INDEX_GLB_Get_BMX_TO_Status,
252     ROM_API_INDEX_GLB_Clr_GPIO_IntStatus,
253     ROM_API_INDEX_GLB_Embedded_Flash_Pad_Enable,
254     ROM_API_INDEX_GLB_GPIO_Clr,
255     ROM_API_INDEX_GLB_GPIO_Fifo_Clear,
256     ROM_API_INDEX_GLB_GPIO_Fifo_Init,
257     ROM_API_INDEX_GLB_GPIO_Fifo_IntClear,
258     ROM_API_INDEX_GLB_GPIO_Fifo_IntMask,
259     ROM_API_INDEX_GLB_GPIO_Fifo_Push,
260     ROM_API_INDEX_GLB_GPIO_Func_Init,
261     ROM_API_INDEX_GLB_GPIO_Init,
262     ROM_API_INDEX_GLB_GPIO_Input_Disable,
263     ROM_API_INDEX_GLB_GPIO_Input_Enable,
264     ROM_API_INDEX_GLB_GPIO_IntMask,
265     ROM_API_INDEX_GLB_GPIO_Int_Init,
266     ROM_API_INDEX_GLB_GPIO_Output_Disable,
267     ROM_API_INDEX_GLB_GPIO_Output_Enable,
268     ROM_API_INDEX_GLB_GPIO_Set,
269     ROM_API_INDEX_GLB_GPIO_Set_HZ,
270     ROM_API_INDEX_GLB_GPIO_Write,
271     ROM_API_INDEX_GLB_GPIO_Fifo_Disable,
272     ROM_API_INDEX_GLB_GPIO_Fifo_Enable,
273     ROM_API_INDEX_GLB_GPIO_Fifo_GetIntStatus,
274     ROM_API_INDEX_GLB_Get_GPIO_IntStatus,
275     ROM_API_INDEX_GLB_GPIO_Fifo_GetCount,
276     ROM_API_INDEX_GLB_GPIO_Read,
277     ROM_API_INDEX_GLB_GPIO_Get_Fun,
278 
279     ROM_API_INDEX_HBN_32K_Sel,
280     ROM_API_INDEX_HBN_Aon_Pad_Cfg,
281     ROM_API_INDEX_HBN_Aon_Pad_Cfg_Set,
282     ROM_API_INDEX_HBN_Aon_Pad_Ctrl,
283     ROM_API_INDEX_HBN_Aon_Pad_WakeUpCfg,
284     ROM_API_INDEX_HBN_Clear_Gpio_Keep,
285     ROM_API_INDEX_HBN_Clear_IRQ,
286     ROM_API_INDEX_HBN_Clear_PDS_Gpio_Keep,
287     ROM_API_INDEX_HBN_Clear_RTC_Counter,
288     ROM_API_INDEX_HBN_Clear_RTC_INT,
289     ROM_API_INDEX_HBN_Disable_AComp0_IRQ,
290     ROM_API_INDEX_HBN_Disable_AComp1_IRQ,
291     ROM_API_INDEX_HBN_Disable_BOD_IRQ,
292     ROM_API_INDEX_HBN_Enable_AComp0_IRQ,
293     ROM_API_INDEX_HBN_Enable_AComp1_IRQ,
294     ROM_API_INDEX_HBN_Enable_BOD_IRQ,
295     ROM_API_INDEX_HBN_Enable_RTC_Counter,
296     ROM_API_INDEX_HBN_GPIO_INT_Disable,
297     ROM_API_INDEX_HBN_GPIO_INT_Enable,
298     ROM_API_INDEX_HBN_Get_Flash_Power_Delay,
299     ROM_API_INDEX_HBN_Get_Gpio_Keep,
300     ROM_API_INDEX_HBN_Get_Ldo18io_Power_Delay_Config,
301     ROM_API_INDEX_HBN_Get_PDS_Gpio_Keep,
302     ROM_API_INDEX_HBN_Get_RTC_Timer_Val,
303     ROM_API_INDEX_HBN_Get_Xtal_Type,
304     ROM_API_INDEX_HBN_Hw_Pu_Pd_Cfg,
305     ROM_API_INDEX_HBN_Keep_On_RC32K,
306     ROM_API_INDEX_HBN_PIR_Disable,
307     ROM_API_INDEX_HBN_PIR_Enable,
308     ROM_API_INDEX_HBN_PIR_HPF_Sel,
309     ROM_API_INDEX_HBN_PIR_INT_Config,
310     ROM_API_INDEX_HBN_PIR_LPF_Sel,
311     ROM_API_INDEX_HBN_Pin_WakeUp_Mask,
312     ROM_API_INDEX_HBN_Power_Off_RC32K,
313     ROM_API_INDEX_HBN_Power_Off_Xtal_32K,
314     ROM_API_INDEX_HBN_Power_On_Xtal_32K,
315     ROM_API_INDEX_HBN_Reset,
316     ROM_API_INDEX_HBN_Set_BOD_Cfg,
317     ROM_API_INDEX_HBN_Set_BOD_Config,
318     ROM_API_INDEX_HBN_Set_Core_Reboot_Config,
319     ROM_API_INDEX_HBN_Set_Flash_Power_Delay,
320     ROM_API_INDEX_HBN_Set_GPADC_CLK_Sel,
321     ROM_API_INDEX_HBN_Set_Gpio_Keep,
322     ROM_API_INDEX_HBN_Set_HRAM_Ret,
323     ROM_API_INDEX_HBN_Set_HRAM_slp,
324     ROM_API_INDEX_HBN_Set_Ldo11_All_Vout,
325     ROM_API_INDEX_HBN_Set_Ldo11_Aon_Vout,
326     ROM_API_INDEX_HBN_Set_Ldo11_Rt_Vout,
327     ROM_API_INDEX_HBN_Set_Ldo11_Soc_Vout,
328     ROM_API_INDEX_HBN_Set_Ldo18io_Power_Delay_Config,
329     ROM_API_INDEX_HBN_Set_MCU_Root_CLK_Sel,
330     ROM_API_INDEX_HBN_Set_MCU_XCLK_Sel,
331     ROM_API_INDEX_HBN_Set_PDS_Gpio_Keep,
332     ROM_API_INDEX_HBN_Set_PIR_Interval,
333     ROM_API_INDEX_HBN_Set_PIR_Threshold,
334     ROM_API_INDEX_HBN_Set_RTC_Timer,
335     ROM_API_INDEX_HBN_Set_Status_Flag,
336     ROM_API_INDEX_HBN_Set_UART_CLK_Sel,
337     ROM_API_INDEX_HBN_Set_User_Boot_Config,
338     ROM_API_INDEX_HBN_Set_Wakeup_Addr,
339     ROM_API_INDEX_HBN_Set_Xtal_Type,
340     ROM_API_INDEX_HBN_Trim_Ldo33VoutTrim,
341     ROM_API_INDEX_HBN_Trim_RC32K,
342     ROM_API_INDEX_HBN_Get_BOD_OUT_State,
343     ROM_API_INDEX_HBN_Get_INT_State,
344     ROM_API_INDEX_HBN_Get_MCU_Root_CLK_Sel,
345     ROM_API_INDEX_HBN_Get_MCU_XCLK_Sel,
346     ROM_API_INDEX_HBN_Get_PIR_Interval,
347     ROM_API_INDEX_HBN_Get_PIR_Threshold,
348     ROM_API_INDEX_HBN_Get_Status_Flag,
349     ROM_API_INDEX_HBN_Get_Wakeup_Addr,
350     ROM_API_INDEX_HBN_Get_Core_Unhalt_Config,
351     ROM_API_INDEX_HBN_Get_Pin_Wakeup_Mode,
352     ROM_API_INDEX_HBN_Get_User_Boot_Config,
353     ROM_API_INDEX_HBN_Enable,
354     ROM_API_INDEX_HBN_Mode_Enter,
355     ROM_API_INDEX_HBN_Power_Down_Flash,
356 
357     ROM_API_INDEX_L1C_DCache_Clean_All,
358     ROM_API_INDEX_L1C_DCache_Clean_By_Addr,
359     ROM_API_INDEX_L1C_DCache_Clean_Invalid_All,
360     ROM_API_INDEX_L1C_DCache_Clean_Invalid_By_Addr,
361     ROM_API_INDEX_L1C_DCache_Disable,
362     ROM_API_INDEX_L1C_DCache_Enable,
363     ROM_API_INDEX_L1C_DCache_Invalid_All,
364     ROM_API_INDEX_L1C_DCache_Invalid_By_Addr,
365     ROM_API_INDEX_L1C_ICache_Disable,
366     ROM_API_INDEX_L1C_ICache_Enable,
367     ROM_API_INDEX_L1C_ICache_Invalid_All,
368     ROM_API_INDEX_L1C_ICache_Invalid_By_Addr,
369     ROM_API_INDEX_L1C_Set_Cache_Setting_By_ID,
370     ROM_API_INDEX_L1C_Set_Wrap,
371     ROM_API_INDEX_L1C_DCache_Write_Set,
372 
373     ROM_API_INDEX_PDS_Default_Level_Config,
374     ROM_API_INDEX_PDS_Disable_GPIO_Keep,
375     ROM_API_INDEX_PDS_Enable,
376     ROM_API_INDEX_PDS_Force_Config,
377     ROM_API_INDEX_PDS_IntClear,
378     ROM_API_INDEX_PDS_IntMask,
379     ROM_API_INDEX_PDS_RAM_Config,
380     ROM_API_INDEX_PDS_Set_Flash_Pad_Pull_None,
381     ROM_API_INDEX_PDS_Set_Flash_Pad_Pull_None_Fast,
382     ROM_API_INDEX_PDS_Set_GPIO_Pad_IntClr,
383     ROM_API_INDEX_PDS_Set_GPIO_Pad_IntMask,
384     ROM_API_INDEX_PDS_Set_GPIO_Pad_IntMode,
385     ROM_API_INDEX_PDS_Set_GPIO_Pad_Pn_Pu_Pd_Ie,
386     ROM_API_INDEX_PDS_Set_MCU0_Clock_Disable,
387     ROM_API_INDEX_PDS_Set_MCU0_Clock_Enable,
388     ROM_API_INDEX_PDS_Set_MCU0_Reset_Address,
389     ROM_API_INDEX_PDS_Set_USB_Resume,
390     ROM_API_INDEX_PDS_Set_USB_Suspend,
391     ROM_API_INDEX_PDS_Trim_RC32M,
392     ROM_API_INDEX_PDS_Turn_Off_USB,
393     ROM_API_INDEX_PDS_Turn_On_USB,
394     ROM_API_INDEX_PDS_Get_GPIO_Pad_IntStatus,
395     ROM_API_INDEX_PDS_Get_IntStatus,
396 
397     ROM_API_INDEX_SF_Cfg_Deinit_Ext_Flash_Gpio,
398     ROM_API_INDEX_SF_Cfg_Flash_Init,
399     ROM_API_INDEX_SF_Cfg_Get_Flash_Cfg_Need_Lock,
400     ROM_API_INDEX_SF_Cfg_Init_Ext_Flash_Gpio,
401     ROM_API_INDEX_SF_Cfg_Init_Flash2_Gpio,
402     ROM_API_INDEX_SF_Cfg_Init_Flash_Gpio,
403     ROM_API_INDEX_SF_Cfg_Sbus2_Flash_Init,
404     ROM_API_INDEX_SF_Cfg_Flash_Identify,
405     ROM_API_INDEX_SF_Ctrl_GetBusyState,
406     ROM_API_INDEX_SF_Ctrl_Is_AES_Enable,
407     ROM_API_INDEX_SF_Ctrl_Is_Sbus2_Enable,
408     ROM_API_INDEX_SF_Ctrl_Get_Flash_Image_Offset,
409     ROM_API_INDEX_SF_Ctrl_Get_Clock_Delay,
410     ROM_API_INDEX_SF_Ctrl_Get_Wrap_Queue_Value,
411     ROM_API_INDEX_SF_Ctrl_32bits_Addr_En,
412     ROM_API_INDEX_SF_Ctrl_AES_Disable,
413     ROM_API_INDEX_SF_Ctrl_AES_Enable,
414     ROM_API_INDEX_SF_Ctrl_AES_Enable_BE,
415     ROM_API_INDEX_SF_Ctrl_AES_Enable_LE,
416     ROM_API_INDEX_SF_Ctrl_AES_Set_IV,
417     ROM_API_INDEX_SF_Ctrl_AES_Set_IV_BE,
418     ROM_API_INDEX_SF_Ctrl_AES_Set_Key,
419     ROM_API_INDEX_SF_Ctrl_AES_Set_Key_BE,
420     ROM_API_INDEX_SF_Ctrl_AES_Set_Mode,
421     ROM_API_INDEX_SF_Ctrl_AES_Set_Region,
422     ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_IV,
423     ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_IV_BE,
424     ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_Key,
425     ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_Key_BE,
426     ROM_API_INDEX_SF_Ctrl_Bank2_Enable,
427     ROM_API_INDEX_SF_Ctrl_Cmds_Set,
428     ROM_API_INDEX_SF_Ctrl_Disable,
429     ROM_API_INDEX_SF_Ctrl_Disable_Wrap_Access,
430     ROM_API_INDEX_SF_Ctrl_Enable,
431     ROM_API_INDEX_SF_Ctrl_Flash2_Read_Icache_Set,
432     ROM_API_INDEX_SF_Ctrl_Flash_Read_Icache_Set,
433     ROM_API_INDEX_SF_Ctrl_Lock_Flash_Image_Offset,
434     ROM_API_INDEX_SF_Ctrl_Remap_Set,
435     ROM_API_INDEX_SF_Ctrl_Sbus2_Hold_Sram,
436     ROM_API_INDEX_SF_Ctrl_Sbus2_Release_Sram,
437     ROM_API_INDEX_SF_Ctrl_Sbus2_Replace,
438     ROM_API_INDEX_SF_Ctrl_Sbus2_Revoke_replace,
439     ROM_API_INDEX_SF_Ctrl_Sbus2_Set_Delay,
440     ROM_API_INDEX_SF_Ctrl_Sbus_Select_Bank,
441     ROM_API_INDEX_SF_Ctrl_Select_Pad,
442     ROM_API_INDEX_SF_Ctrl_SendCmd,
443     ROM_API_INDEX_SF_Ctrl_Set_Clock_Delay,
444     ROM_API_INDEX_SF_Ctrl_Set_Flash_Image_Offset,
445     ROM_API_INDEX_SF_Ctrl_Set_IO_Delay,
446     ROM_API_INDEX_SF_Ctrl_Set_Owner,
447 
448     ROM_API_INDEX_SFlash_Blk32_Erase,
449     ROM_API_INDEX_SFlash_Blk64_Erase,
450     ROM_API_INDEX_SFlash_Chip_Erase,
451     ROM_API_INDEX_SFlash_Erase,
452     ROM_API_INDEX_SFlash_Erase_Security_Register,
453     ROM_API_INDEX_SFlash_IDbus_Read_Enable,
454     ROM_API_INDEX_SFlash_Program,
455     ROM_API_INDEX_SFlash_Program_Security_Register,
456     ROM_API_INDEX_SFlash_Qspi_Disable,
457     ROM_API_INDEX_SFlash_Qspi_Enable,
458     ROM_API_INDEX_SFlash_RCV_Enable,
459     ROM_API_INDEX_SFlash_Read,
460     ROM_API_INDEX_SFlash_Read_Reg,
461     ROM_API_INDEX_SFlash_Read_Reg_With_Cmd,
462     ROM_API_INDEX_SFlash_Read_Security_Register,
463     ROM_API_INDEX_SFlash_Restore_From_Powerdown,
464     ROM_API_INDEX_SFlash_Sector_Erase,
465     ROM_API_INDEX_SFlash_Set32BitsAddrMode,
466     ROM_API_INDEX_SFlash_SetSPIMode,
467     ROM_API_INDEX_SFlash_Set_IDbus_Cfg,
468     ROM_API_INDEX_SFlash_Software_Reset,
469     ROM_API_INDEX_SFlash_Write_Enable,
470     ROM_API_INDEX_SFlash_Write_Reg,
471     ROM_API_INDEX_SFlash_Write_Reg_With_Cmd,
472     ROM_API_INDEX_SFlash_Busy,
473     ROM_API_INDEX_SFlash_DisableBurstWrap,
474     ROM_API_INDEX_SFlash_GetDeviceId,
475     ROM_API_INDEX_SFlash_GetJedecId,
476     ROM_API_INDEX_SFlash_GetUniqueId,
477     ROM_API_INDEX_SFlash_IDbus_Read_Disable,
478     ROM_API_INDEX_SFlash_Init,
479     ROM_API_INDEX_SFlash_Powerdown,
480     ROM_API_INDEX_SFlash_Release_Powerdown,
481     ROM_API_INDEX_SFlash_Reset_Continue_Read,
482     ROM_API_INDEX_SFlash_SetBurstWrap,
483     ROM_API_INDEX_SFlash_Volatile_Reg_Write_Enable,
484 
485     ROM_API_INDEX_UART_AutoBaudDetection,
486     ROM_API_INDEX_UART_ClrRtsValue,
487     ROM_API_INDEX_UART_ClrTxValue,
488     ROM_API_INDEX_UART_DeInit,
489     ROM_API_INDEX_UART_Disable,
490     ROM_API_INDEX_UART_Enable,
491     ROM_API_INDEX_UART_FifoConfig,
492     ROM_API_INDEX_UART_GetBitWidth0X55,
493     ROM_API_INDEX_UART_Init,
494     ROM_API_INDEX_UART_IntClear,
495     ROM_API_INDEX_UART_IntMask,
496     ROM_API_INDEX_UART_IrConfig,
497     ROM_API_INDEX_UART_RxFifoClear,
498     ROM_API_INDEX_UART_SendData,
499     ROM_API_INDEX_UART_SendDataBlock,
500     ROM_API_INDEX_UART_SetAllowableError0X55,
501     ROM_API_INDEX_UART_SetBaudrate,
502     ROM_API_INDEX_UART_SetDeglitchCount,
503     ROM_API_INDEX_UART_SetRS485,
504     ROM_API_INDEX_UART_SetRtsValue,
505     ROM_API_INDEX_UART_SetRxByteCount,
506     ROM_API_INDEX_UART_SetRxDataLength,
507     ROM_API_INDEX_UART_SetRxTimeoutValue,
508     ROM_API_INDEX_UART_SetTxDataLength,
509     ROM_API_INDEX_UART_SetTxValue,
510     ROM_API_INDEX_UART_TxFifoClear,
511     ROM_API_INDEX_UART_TxFreeRun,
512     ROM_API_INDEX_UART_GetIntStatus,
513     ROM_API_INDEX_UART_GetOverflowStatus,
514     ROM_API_INDEX_UART_GetRxBusBusyStatus,
515     ROM_API_INDEX_UART_GetTxBusBusyStatus,
516     ROM_API_INDEX_UART_GetAutoBaudCount,
517     ROM_API_INDEX_UART_GetRxByteCount,
518     ROM_API_INDEX_UART_ReceiveData,
519     ROM_API_INDEX_UART_GetRxFifoCount,
520     ROM_API_INDEX_UART_GetTxFifoCount,
521 
522     ROM_API_INDEX_XIP_SFlash_Erase_Need_Lock,
523     ROM_API_INDEX_XIP_SFlash_GetDeviceId_Need_Lock,
524     ROM_API_INDEX_XIP_SFlash_GetJedecId_Need_Lock,
525     ROM_API_INDEX_XIP_SFlash_GetUniqueId_Need_Lock,
526     ROM_API_INDEX_XIP_SFlash_Read_Need_Lock,
527     ROM_API_INDEX_XIP_SFlash_Read_Via_Cache_Need_Lock,
528     ROM_API_INDEX_XIP_SFlash_State_Restore,
529     ROM_API_INDEX_XIP_SFlash_State_Save,
530     ROM_API_INDEX_XIP_SFlash_Write_Need_Lock,
531     ROM_API_INDEX_XIP_SFlash_Opt_Enter,
532     ROM_API_INDEX_XIP_SFlash_Opt_Exit,
533 
534     ROM_API_INDEX_MD_Clr_GPIO_IntStatus,
535     ROM_API_INDEX_MD_Embedded_Flash_Pad_Enable,
536     ROM_API_INDEX_MD_GPIO_Clr,
537     ROM_API_INDEX_MD_GPIO_Init,
538     ROM_API_INDEX_MD_GPIO_Input_Disable,
539     ROM_API_INDEX_MD_GPIO_Input_Enable,
540     ROM_API_INDEX_MD_GPIO_IntMask,
541     ROM_API_INDEX_MD_GPIO_Int_Init,
542     ROM_API_INDEX_MD_GPIO_Output_Disable,
543     ROM_API_INDEX_MD_GPIO_Output_Enable,
544     ROM_API_INDEX_MD_GPIO_Set,
545     ROM_API_INDEX_MD_GPIO_Set_HZ,
546     ROM_API_INDEX_MD_GPIO_Write,
547     ROM_API_INDEX_MD_Get_GPIO_IntStatus,
548     ROM_API_INDEX_MD_GPIO_Read,
549     ROM_API_INDEX_MD_GPIO_Get_Fun,
550 
551     ROM_API_INDEX_FUNC_EMPTY_START,
552 
553     ROM_API_INDEX_FUNC_EMPTY_END = ROMAPI_INDEX_MAX
554 
555 } ROM_API_INDEX_e;
556 
557 /*@} end of group ROMDRIVER_Public_Types */
558 
559 /** @defgroup  ROMDRIVER_Public_Constants
560  *  @{
561  */
562 
563 /*@} end of group ROMDRIVER_Public_Constants */
564 
565 /** @defgroup  ROMDRIVER_Public_Macros
566  *  @{
567  */
568 
569 
570 #define ROM_APITABLE            ((uint32_t *)0x90015800)
571 
572 
573 #define RomDriver_AON_Power_Off_BG                        \
574     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_Off_BG])
575 
576 #define RomDriver_AON_Power_Off_LDO15_RF                  \
577     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_Off_LDO15_RF])
578 
579 #define RomDriver_AON_Power_Off_MBG                       \
580     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_Off_MBG])
581 
582 #define RomDriver_AON_Power_Off_SFReg                     \
583     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_Off_SFReg])
584 
585 #define RomDriver_AON_Power_Off_XTAL                      \
586     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_Off_XTAL])
587 
588 #define RomDriver_AON_Power_On_BG                         \
589     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_On_BG])
590 
591 #define RomDriver_AON_Power_On_LDO15_RF                   \
592     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_On_LDO15_RF])
593 
594 #define RomDriver_AON_Power_On_MBG                        \
595     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_On_MBG])
596 
597 #define RomDriver_AON_Power_On_SFReg                      \
598     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_On_SFReg])
599 
600 #define RomDriver_AON_Power_On_XTAL                       \
601     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Power_On_XTAL])
602 
603 #define RomDriver_AON_Set_Xtal_CapCode                    \
604     ((BL_Err_Type (*) (uint8_t capIn, uint8_t capOut))ROM_APITABLE[ROM_API_INDEX_AON_Set_Xtal_CapCode])
605 
606 #define RomDriver_AON_Trim_DcdcDis                        \
607     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Trim_DcdcDis])
608 
609 #define RomDriver_AON_Trim_DcdcVoutSel                    \
610     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Trim_DcdcVoutSel])
611 
612 #define RomDriver_AON_Trim_DcdcVoutTrim                   \
613     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Trim_DcdcVoutTrim])
614 
615 #define RomDriver_AON_Trim_Ldo11socVoutTrim               \
616     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Trim_Ldo11socVoutTrim])
617 
618 #define RomDriver_AON_Trim_Usb20RcalCode                  \
619     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Trim_Usb20RcalCode])
620 
621 #define RomDriver_AON_Get_Xtal_CapCode                    \
622     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_AON_Get_Xtal_CapCode])
623 
624 #define RomDriver_CPU_MTimer_Delay_MS                     \
625     ((BL_Err_Type (*) (uint32_t cnt))ROM_APITABLE[ROM_API_INDEX_CPU_MTimer_Delay_MS])
626 
627 #define RomDriver_CPU_MTimer_Delay_US                     \
628     ((BL_Err_Type (*) (uint32_t cnt))ROM_APITABLE[ROM_API_INDEX_CPU_MTimer_Delay_US])
629 
630 #define RomDriver_CPU_Reset_MTimer                        \
631     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Reset_MTimer])
632 
633 #define RomDriver_CPU_Set_MTimer_CLK                      \
634     ((BL_Err_Type (*) (uint8_t enable, BL_MTimer_Source_Clock_Type mTimerSourceClockType, uint16_t div))ROM_APITABLE[ROM_API_INDEX_CPU_Set_MTimer_CLK])
635 
636 #define RomDriver_CPU_Set_MTimer_RST                      \
637     ((BL_Err_Type (*) (uint8_t rstEn))ROM_APITABLE[ROM_API_INDEX_CPU_Set_MTimer_RST])
638 
639 #define RomDriver_CPU_Get_MTimer_Clock                    \
640     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Get_MTimer_Clock])
641 
642 #define RomDriver_CPU_Get_MTimer_Source_Clock             \
643     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Get_MTimer_Source_Clock])
644 
645 #define RomDriver_Clock_Audio_ADC_Clock_Get               \
646     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_Clock_Audio_ADC_Clock_Get])
647 
648 #define RomDriver_Clock_Get_ISP_Clk                       \
649     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_Clock_Get_ISP_Clk])
650 
651 #define RomDriver_Clock_Get_PSRAMB_Clk                    \
652     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_Clock_Get_PSRAMB_Clk])
653 
654 #define RomDriver_Clock_Peripheral_Clock_Get              \
655     ((uint32_t (*) (BL_Peripheral_Type type))ROM_APITABLE[ROM_API_INDEX_Clock_Peripheral_Clock_Get])
656 
657 #define RomDriver_Clock_System_Clock_Get                  \
658     ((uint32_t (*) (BL_System_Clock_Type type))ROM_APITABLE[ROM_API_INDEX_Clock_System_Clock_Get])
659 
660 #define RomDriver_SystemCoreClockGet                      \
661     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_SystemCoreClockGet])
662 
663 #define RomDriver_CPU_Get_CPU_Cycle                       \
664     ((uint64_t (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Get_CPU_Cycle])
665 
666 #define RomDriver_CPU_Get_MTimer_Counter                  \
667     ((uint64_t (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Get_MTimer_Counter])
668 
669 #define RomDriver_CPU_Get_MTimer_MS                       \
670     ((uint64_t (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Get_MTimer_MS])
671 
672 #define RomDriver_CPU_Get_MTimer_US                       \
673     ((uint64_t (*) (void))ROM_APITABLE[ROM_API_INDEX_CPU_Get_MTimer_US])
674 
675 #define RomDriver_EF_Ctrl_Crc_Result                      \
676     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Crc_Result])
677 
678 #define RomDriver_EF_Ctrl_Get_Customer_PIDVID             \
679     ((BL_Err_Type (*) (uint16_t pid[1], uint16_t vid[1]))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Get_Customer_PIDVID])
680 
681 #define RomDriver_EF_Ctrl_Read_Chip_ID                    \
682     ((BL_Err_Type (*) (uint8_t chipID[8]))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Chip_ID])
683 
684 #define RomDriver_EF_Ctrl_Read_MAC_Address                \
685     ((BL_Err_Type (*) (uint8_t mac[6]))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_MAC_Address])
686 
687 #define RomDriver_EF_Ctrl_Read_MAC_Address_Raw            \
688     ((BL_Err_Type (*) (uint8_t mac[7]))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_MAC_Address_Raw])
689 
690 #define RomDriver_EF_Ctrl_AutoLoad_Done                   \
691     ((BL_Sts_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_AutoLoad_Done])
692 
693 #define RomDriver_EF_Ctrl_Busy                            \
694     ((BL_Sts_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Busy])
695 
696 #define RomDriver_EF_Ctrl_Crc_Is_Busy                     \
697     ((BL_Sts_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Crc_Is_Busy])
698 
699 #define RomDriver_EF_Ctrl_Get_Trim_Parity                 \
700     ((uint8_t (*) (uint32_t val, uint8_t len))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Get_Trim_Parity])
701 
702 #define RomDriver_EF_Ctrl_Is_All_Bits_Zero                \
703     ((uint8_t (*) (uint32_t val, uint8_t start, uint8_t len))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Is_All_Bits_Zero])
704 
705 #define RomDriver_EF_Ctrl_Read_FlashDlyCoe                \
706     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_FlashDlyCoe])
707 
708 #define RomDriver_EF_Ctrl_Clear                           \
709     ((void (*) (uint32_t index, uint32_t len))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Clear])
710 
711 #define RomDriver_EF_Ctrl_Crc_Enable                      \
712     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Crc_Enable])
713 
714 #define RomDriver_EF_Ctrl_Crc_Set_Golden                  \
715     ((void (*) (uint32_t goldenValue))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Crc_Set_Golden])
716 
717 #define RomDriver_EF_Ctrl_Load_Efuse_R0                   \
718     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Load_Efuse_R0])
719 
720 #define RomDriver_EF_Ctrl_Program_Direct_R0               \
721     ((void (*) (uint32_t index, uint32_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Program_Direct_R0])
722 
723 #define RomDriver_EF_Ctrl_Program_Efuse_0                 \
724     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Program_Efuse_0])
725 
726 #define RomDriver_EF_Ctrl_Read_ADC_Gain_Trim              \
727     ((void (*) (Efuse_ADC_Gain_Coeff_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_ADC_Gain_Trim])
728 
729 #define RomDriver_EF_Ctrl_Read_AES_Key                    \
730     ((void (*) (uint8_t index, uint32_t *keyData, uint32_t len))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_AES_Key])
731 
732 #define RomDriver_EF_Ctrl_Read_Dbg_Pwd                    \
733     ((void (*) (uint8_t slot, uint32_t *passWdLow, uint32_t *passWdHigh))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Dbg_Pwd])
734 
735 #define RomDriver_EF_Ctrl_Read_DcdcDis_Trim               \
736     ((void (*) (Efuse_Ana_DcdcDis_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_DcdcDis_Trim])
737 
738 #define RomDriver_EF_Ctrl_Read_DcdcVoutSel_Trim           \
739     ((void (*) (Efuse_Ana_DcdcVoutSel_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_DcdcVoutSel_Trim])
740 
741 #define RomDriver_EF_Ctrl_Read_DcdcVoutTrim_Trim          \
742     ((void (*) (Efuse_Ana_DcdcVoutTrim_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_DcdcVoutTrim_Trim])
743 
744 #define RomDriver_EF_Ctrl_Read_Device_Info                \
745     ((void (*) (Efuse_Device_Info_Type *deviceInfo))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Device_Info])
746 
747 #define RomDriver_EF_Ctrl_Read_Direct_R0                  \
748     ((void (*) (uint32_t index, uint32_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Direct_R0])
749 
750 #define RomDriver_EF_Ctrl_Read_Ldo11socVoutTrim_Trim      \
751     ((void (*) (Efuse_Ana_Ldo11socVoutTrim_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Ldo11socVoutTrim_Trim])
752 
753 #define RomDriver_EF_Ctrl_Read_Ldo18ioBypass_Trim         \
754     ((void (*) (Efuse_Ana_Ldo18ioBypass_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Ldo18ioBypass_Trim])
755 
756 #define RomDriver_EF_Ctrl_Read_Ldo18ioVoutSel_Trim        \
757     ((void (*) (Efuse_Ana_Ldo18ioVoutSel_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Ldo18ioVoutSel_Trim])
758 
759 #define RomDriver_EF_Ctrl_Read_Ldo18ioVoutTrim_Trim       \
760     ((void (*) (Efuse_Ana_Ldo18ioVoutTrim_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Ldo18ioVoutTrim_Trim])
761 
762 #define RomDriver_EF_Ctrl_Read_Ldo33VoutTrim_Trim         \
763     ((void (*) (Efuse_Ana_Ldo33VoutTrim_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Ldo33VoutTrim_Trim])
764 
765 #define RomDriver_EF_Ctrl_Read_RC32K_Trim                 \
766     ((void (*) (Efuse_Ana_RC32K_Trim_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_RC32K_Trim])
767 
768 #define RomDriver_EF_Ctrl_Read_RC32M_Trim                 \
769     ((void (*) (Efuse_Ana_RC32M_Trim_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_RC32M_Trim])
770 
771 #define RomDriver_EF_Ctrl_Read_Secure_Boot                \
772     ((void (*) (EF_Ctrl_SF_AES_Type aes[2]))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Secure_Boot])
773 
774 #define RomDriver_EF_Ctrl_Read_Secure_Cfg                 \
775     ((void (*) (EF_Ctrl_Sec_Param_Type *cfg))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Secure_Cfg])
776 
777 #define RomDriver_EF_Ctrl_Read_Sw_Usage                   \
778     ((void (*) (uint32_t index, uint32_t *usage))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Sw_Usage])
779 
780 #define RomDriver_EF_Ctrl_Read_TSEN_Trim                  \
781     ((void (*) (Efuse_TSEN_Refcode_Corner_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_TSEN_Trim])
782 
783 #define RomDriver_EF_Ctrl_Read_Usb20RcalCode_Trim         \
784     ((void (*) (Efuse_Ana_Usb20RcalCode_Type *trim))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Read_Usb20RcalCode_Trim])
785 
786 #define RomDriver_EF_Ctrl_Readlock_AES_Key                \
787     ((void (*) (uint8_t index, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Readlock_AES_Key])
788 
789 #define RomDriver_EF_Ctrl_Readlock_Dbg_Pwd                \
790     ((void (*) (uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Readlock_Dbg_Pwd])
791 
792 #define RomDriver_EF_Ctrl_Set_sf_key_re_sel               \
793     ((void (*) (uint8_t ef_sf_key_re_sel))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Set_sf_key_re_sel])
794 
795 #define RomDriver_EF_Ctrl_Sw_AHB_Clk_0                    \
796     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Sw_AHB_Clk_0])
797 
798 #define RomDriver_EF_Ctrl_Write_AES_Key                   \
799     ((void (*) (uint8_t index, uint32_t *keyData, uint32_t len, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Write_AES_Key])
800 
801 #define RomDriver_EF_Ctrl_Write_Dbg_Pwd                   \
802     ((void (*) (uint8_t slot, uint32_t passWdLow, uint32_t passWdHigh, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Write_Dbg_Pwd])
803 
804 #define RomDriver_EF_Ctrl_Write_MAC_Address               \
805     ((void (*) (uint8_t mac[6], uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Write_MAC_Address])
806 
807 #define RomDriver_EF_Ctrl_Write_Secure_Boot               \
808     ((void (*) (EF_Ctrl_Sign_Type sign[1], EF_Ctrl_SF_AES_Type aes[1], uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Write_Secure_Boot])
809 
810 #define RomDriver_EF_Ctrl_Write_Secure_Cfg                \
811     ((void (*) (EF_Ctrl_Sec_Param_Type *cfg, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Write_Secure_Cfg])
812 
813 #define RomDriver_EF_Ctrl_Write_Sw_Usage                  \
814     ((void (*) (uint32_t index, uint32_t usage, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Write_Sw_Usage])
815 
816 #define RomDriver_EF_Ctrl_Writelock_AES_Key               \
817     ((void (*) (uint8_t index, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Writelock_AES_Key])
818 
819 #define RomDriver_EF_Ctrl_Writelock_Dbg_Pwd               \
820     ((void (*) (uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Writelock_Dbg_Pwd])
821 
822 #define RomDriver_EF_Ctrl_Writelock_MAC_Address           \
823     ((void (*) (uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Writelock_MAC_Address])
824 
825 #define RomDriver_EF_Ctrl_Writelock_Sw_Usage              \
826     ((void (*) (uint32_t index, uint8_t program))ROM_APITABLE[ROM_API_INDEX_EF_Ctrl_Writelock_Sw_Usage])
827 
828 #define RomDriver_GLB_AHB_MCU_Software_Reset              \
829     ((BL_Err_Type (*) (GLB_AHB_MCU_SW_Type swrst))ROM_APITABLE[ROM_API_INDEX_GLB_AHB_MCU_Software_Reset])
830 
831 #define RomDriver_GLB_AUPLL_Ref_Clk_Sel                   \
832     ((BL_Err_Type (*) (GLB_PLL_REF_CLK_Type refClk))ROM_APITABLE[ROM_API_INDEX_GLB_AUPLL_Ref_Clk_Sel])
833 
834 #define RomDriver_GLB_BMX_TO_Init                         \
835     ((BL_Err_Type (*) (BMX_TO_Cfg_Type *BmxCfg))ROM_APITABLE[ROM_API_INDEX_GLB_BMX_TO_Init])
836 
837 #define RomDriver_GLB_Clr_BMX_TO_Status                   \
838     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Clr_BMX_TO_Status])
839 
840 #define RomDriver_GLB_Clr_EMI_Reset_Gate                  \
841     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Clr_EMI_Reset_Gate])
842 
843 #define RomDriver_GLB_Clr_Reset_Reason                    \
844     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Clr_Reset_Reason])
845 
846 #define RomDriver_GLB_Config_SDIO_Host_Interrupt_CPU      \
847     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Config_SDIO_Host_Interrupt_CPU])
848 
849 #define RomDriver_GLB_Config_SDIO_Host_Reset_SDU          \
850     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Config_SDIO_Host_Reset_SDU])
851 
852 #define RomDriver_GLB_Config_SDIO_Host_Reset_System       \
853     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Config_SDIO_Host_Reset_System])
854 
855 #define RomDriver_GLB_Get_Auto_Calc_Xtal_Type             \
856     ((BL_Err_Type (*) (GLB_XTAL_Type *calcXtalType))ROM_APITABLE[ROM_API_INDEX_GLB_Get_Auto_Calc_Xtal_Type])
857 
858 #define RomDriver_GLB_Get_MCU_System_CLK_Div              \
859     ((BL_Err_Type (*) (uint8_t *mcuClkDiv, uint8_t *mcuPBclkDiv))ROM_APITABLE[ROM_API_INDEX_GLB_Get_MCU_System_CLK_Div])
860 
861 #define RomDriver_GLB_Get_Reset_Reason                    \
862     ((BL_Err_Type (*) (GLB_RESET_RECORD_Type *reason))ROM_APITABLE[ROM_API_INDEX_GLB_Get_Reset_Reason])
863 
864 #define RomDriver_GLB_IR_RX_GPIO_Sel                      \
865     ((BL_Err_Type (*) (GLB_GPIO_Type gpio))ROM_APITABLE[ROM_API_INDEX_GLB_IR_RX_GPIO_Sel])
866 
867 #define RomDriver_GLB_Invert_ETH_REF_O_CLK                \
868     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Invert_ETH_REF_O_CLK])
869 
870 #define RomDriver_GLB_Invert_ETH_RX_CLK                   \
871     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Invert_ETH_RX_CLK])
872 
873 #define RomDriver_GLB_Invert_ETH_TX_CLK                   \
874     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Invert_ETH_TX_CLK])
875 
876 #define RomDriver_GLB_MCU_SW_System_Reset                 \
877     ((BL_Err_Type (*) (GLB_MCU_SW_SYSTEM_Type sysPart))ROM_APITABLE[ROM_API_INDEX_GLB_MCU_SW_System_Reset])
878 
879 #define RomDriver_GLB_PER_Clock_Gate                      \
880     ((BL_Err_Type (*) (uint64_t ips))ROM_APITABLE[ROM_API_INDEX_GLB_PER_Clock_Gate])
881 
882 #define RomDriver_GLB_PER_Clock_UnGate                    \
883     ((BL_Err_Type (*) (uint64_t ips))ROM_APITABLE[ROM_API_INDEX_GLB_PER_Clock_UnGate])
884 
885 #define RomDriver_GLB_PLL_CGEN_Clock_Gate                 \
886     ((BL_Err_Type (*) (GLB_PLL_CGEN_Type clk))ROM_APITABLE[ROM_API_INDEX_GLB_PLL_CGEN_Clock_Gate])
887 
888 #define RomDriver_GLB_PLL_CGEN_Clock_UnGate               \
889     ((BL_Err_Type (*) (GLB_PLL_CGEN_Type clk))ROM_APITABLE[ROM_API_INDEX_GLB_PLL_CGEN_Clock_UnGate])
890 
891 #define RomDriver_GLB_Platform_Wakeup_PDS_Enable          \
892     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Platform_Wakeup_PDS_Enable])
893 
894 #define RomDriver_GLB_Power_Off_AUPLL                     \
895     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Power_Off_AUPLL])
896 
897 #define RomDriver_GLB_Power_Off_WIFIPLL                   \
898     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Power_Off_WIFIPLL])
899 
900 #define RomDriver_GLB_Power_On_AUPLL                      \
901     ((BL_Err_Type (*) (const GLB_WA_PLL_Cfg_Type *const cfg, uint8_t waitStable))ROM_APITABLE[ROM_API_INDEX_GLB_Power_On_AUPLL])
902 
903 #define RomDriver_GLB_Power_On_WIFIPLL                    \
904     ((BL_Err_Type (*) (const GLB_WA_PLL_Cfg_Type *const cfg, uint8_t waitStable))ROM_APITABLE[ROM_API_INDEX_GLB_Power_On_WIFIPLL])
905 
906 #define RomDriver_GLB_Power_On_XTAL_And_PLL_CLK           \
907     ((BL_Err_Type (*) (GLB_XTAL_Type xtalType, GLB_PLL_Type pllType))ROM_APITABLE[ROM_API_INDEX_GLB_Power_On_XTAL_And_PLL_CLK])
908 
909 #define RomDriver_GLB_SPI_Sig_Swap_Set                    \
910     ((BL_Err_Type (*) (GLB_SPI_SIG_SWAP_GRP_Type group, uint8_t swap))ROM_APITABLE[ROM_API_INDEX_GLB_SPI_Sig_Swap_Set])
911 
912 #define RomDriver_GLB_SW_CPU_Reset                        \
913     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_SW_CPU_Reset])
914 
915 #define RomDriver_GLB_SW_POR_Reset                        \
916     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_SW_POR_Reset])
917 
918 #define RomDriver_GLB_SW_System_Reset                     \
919     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_SW_System_Reset])
920 
921 #define RomDriver_GLB_Sel_MCU_TMR_GPIO_Clock              \
922     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_Sel_MCU_TMR_GPIO_Clock])
923 
924 #define RomDriver_GLB_Set_ADC_CLK                         \
925     ((BL_Err_Type (*) (uint8_t enable, GLB_ADC_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_ADC_CLK])
926 
927 #define RomDriver_GLB_Set_Audio_ADC_CLK                   \
928     ((BL_Err_Type (*) (uint8_t enable, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Audio_ADC_CLK])
929 
930 #define RomDriver_GLB_Set_Audio_AUTO_CLK                  \
931     ((BL_Err_Type (*) (uint8_t divEn))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Audio_AUTO_CLK])
932 
933 #define RomDriver_GLB_Set_Audio_SOLO_CLK                  \
934     ((BL_Err_Type (*) (uint8_t enable, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Audio_SOLO_CLK])
935 
936 #define RomDriver_GLB_Set_Auto_Calc_Xtal_Type             \
937     ((BL_Err_Type (*) (GLB_XTAL_Type calcXtalType))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Auto_Calc_Xtal_Type])
938 
939 #define RomDriver_GLB_Set_CAM_CLK                         \
940     ((BL_Err_Type (*) (uint8_t enable, GLB_CAM_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_CAM_CLK])
941 
942 #define RomDriver_GLB_Set_CPU_Reset_Address               \
943     ((BL_Err_Type (*) (GLB_CORE_ID_Type coreID, uint32_t addr))ROM_APITABLE[ROM_API_INDEX_GLB_Set_CPU_Reset_Address])
944 
945 #define RomDriver_GLB_Set_Chip_Clock_Out_Sel              \
946     ((BL_Err_Type (*) (GLB_CHIP_CLK_OUT_CFG_Type *cfg))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Chip_Clock_Out_Sel])
947 
948 #define RomDriver_GLB_Set_DBI_CLK                         \
949     ((BL_Err_Type (*) (uint8_t enable, GLB_DBI_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_DBI_CLK])
950 
951 #define RomDriver_GLB_Set_DIG_32K_CLK                     \
952     ((BL_Err_Type (*) (uint8_t enable, uint8_t compensationEn, uint16_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_DIG_32K_CLK])
953 
954 #define RomDriver_GLB_Set_DIG_512K_CLK                    \
955     ((BL_Err_Type (*) (uint8_t enable, uint8_t compensationEn, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_DIG_512K_CLK])
956 
957 #define RomDriver_GLB_Set_DIG_CLK_Sel                     \
958     ((BL_Err_Type (*) (GLB_DIG_CLK_Type clkSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_DIG_CLK_Sel])
959 
960 #define RomDriver_GLB_Set_DMA_CLK                         \
961     ((BL_Err_Type (*) (uint8_t enable, GLB_DMA_CLK_ID_Type clk))ROM_APITABLE[ROM_API_INDEX_GLB_Set_DMA_CLK])
962 
963 #define RomDriver_GLB_Set_EM_Sel                          \
964     ((BL_Err_Type (*) (GLB_EM_Type emType))ROM_APITABLE[ROM_API_INDEX_GLB_Set_EM_Sel])
965 
966 #define RomDriver_GLB_Set_ETH_REF_O_CLK_Sel               \
967     ((BL_Err_Type (*) (GLB_ETH_REF_CLK_OUT_Type clkSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_ETH_REF_O_CLK_Sel])
968 
969 #define RomDriver_GLB_Set_I2C_CLK                         \
970     ((BL_Err_Type (*) (uint8_t enable, GLB_I2C_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_I2C_CLK])
971 
972 #define RomDriver_GLB_Set_I2S_CLK                         \
973     ((BL_Err_Type (*) (uint8_t refClkEn, uint8_t refClkDiv, GLB_I2S_DI_REF_CLK_Type inRef, GLB_I2S_DO_REF_CLK_Type outRef))ROM_APITABLE[ROM_API_INDEX_GLB_Set_I2S_CLK])
974 
975 #define RomDriver_GLB_Set_IR_CLK                          \
976     ((BL_Err_Type (*) (uint8_t enable, GLB_IR_CLK_SRC_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_IR_CLK])
977 
978 #define RomDriver_GLB_Set_ISP_Muxpll_80M_Sel              \
979     ((BL_Err_Type (*) (GLB_ISP_MUXPLL_80M_CLK_SEL_Type clkSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_ISP_Muxpll_80M_Sel])
980 
981 #define RomDriver_GLB_Set_MCU_Muxpll_160M_Sel             \
982     ((BL_Err_Type (*) (GLB_MCU_MUXPLL_160M_CLK_SEL_Type clkSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_MCU_Muxpll_160M_Sel])
983 
984 #define RomDriver_GLB_Set_MCU_Muxpll_80M_Sel              \
985     ((BL_Err_Type (*) (GLB_MCU_MUXPLL_80M_CLK_SEL_Type clkSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_MCU_Muxpll_80M_Sel])
986 
987 #define RomDriver_GLB_Set_MCU_SPI_0_ACT_MOD_Sel           \
988     ((BL_Err_Type (*) (GLB_SPI_PAD_ACT_AS_Type mod))ROM_APITABLE[ROM_API_INDEX_GLB_Set_MCU_SPI_0_ACT_MOD_Sel])
989 
990 #define RomDriver_GLB_Set_MCU_System_CLK                  \
991     ((BL_Err_Type (*) (GLB_MCU_SYS_CLK_Type clkFreq))ROM_APITABLE[ROM_API_INDEX_GLB_Set_MCU_System_CLK])
992 
993 #define RomDriver_GLB_Set_MCU_System_CLK_Div              \
994     ((BL_Err_Type (*) (uint8_t mcuClkDiv, uint8_t mcuPBclkDiv))ROM_APITABLE[ROM_API_INDEX_GLB_Set_MCU_System_CLK_Div])
995 
996 #define RomDriver_GLB_Set_PDM_IO_Sel                      \
997     ((BL_Err_Type (*) (GLB_PDM_IO_SEL_Type ioSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_PDM_IO_Sel])
998 
999 #define RomDriver_GLB_Set_PKA_CLK_Sel                     \
1000     ((BL_Err_Type (*) (GLB_PKA_CLK_Type clkSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_PKA_CLK_Sel])
1001 
1002 #define RomDriver_GLB_Set_PSRAMB_CLK_Sel                  \
1003     ((BL_Err_Type (*) (uint8_t enable, GLB_PSRAMB_PLL_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_PSRAMB_CLK_Sel])
1004 
1005 #define RomDriver_GLB_Set_PWM1_IO_Sel                     \
1006     ((BL_Err_Type (*) (GLB_PWM1_IO_SEL_Type ioSel))ROM_APITABLE[ROM_API_INDEX_GLB_Set_PWM1_IO_Sel])
1007 
1008 #define RomDriver_GLB_Set_Peripheral_DMA_CN               \
1009     ((BL_Err_Type (*) (GLB_PERI_DMA_Type peri, GLB_PERI_DMA_CN_SEL_Type cn))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Peripheral_DMA_CN])
1010 
1011 #define RomDriver_GLB_Set_SDH_CLK                         \
1012     ((BL_Err_Type (*) (uint8_t enable, GLB_SDH_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SDH_CLK])
1013 
1014 #define RomDriver_GLB_Set_SF_CLK                          \
1015     ((BL_Err_Type (*) (uint8_t enable, GLB_SFLASH_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SF_CLK])
1016 
1017 #define RomDriver_GLB_Set_SFlash2_IO_PARM                 \
1018     ((BL_Err_Type (*) (uint8_t swapIo3Io0))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SFlash2_IO_PARM])
1019 
1020 #define RomDriver_GLB_Set_SFlash_IO_PARM                  \
1021     ((BL_Err_Type (*) (uint8_t selEmbedded, uint8_t swapIo3Io0, uint8_t swapIo2Cs))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SFlash_IO_PARM])
1022 
1023 #define RomDriver_GLB_Set_SPI_CLK                         \
1024     ((BL_Err_Type (*) (uint8_t enable, GLB_SPI_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SPI_CLK])
1025 
1026 #define RomDriver_GLB_Set_SRAM_PARM                       \
1027     ((BL_Err_Type (*) (uint32_t value))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SRAM_PARM])
1028 
1029 #define RomDriver_GLB_Set_SRAM_RET                        \
1030     ((BL_Err_Type (*) (uint32_t value))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SRAM_RET])
1031 
1032 #define RomDriver_GLB_Set_SRAM_SLP                        \
1033     ((BL_Err_Type (*) (uint32_t value))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SRAM_SLP])
1034 
1035 #define RomDriver_GLB_Set_SSC_CLK_From_WIFIPLL            \
1036     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Set_SSC_CLK_From_WIFIPLL])
1037 
1038 #define RomDriver_GLB_Set_Slave_Grp_0_CLK                 \
1039     ((BL_Err_Type (*) (GLB_SLAVE_GRP_0_Type slave, uint8_t enable, GLB_SLAVE_GRP_0_CLK_SEL_Type clkSel, uint32_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_Slave_Grp_0_CLK])
1040 
1041 #define RomDriver_GLB_Set_UART_CLK                        \
1042     ((BL_Err_Type (*) (uint8_t enable, HBN_UART_CLK_Type clkSel, uint8_t div))ROM_APITABLE[ROM_API_INDEX_GLB_Set_UART_CLK])
1043 
1044 #define RomDriver_GLB_Set_USB_CLK_From_WIFIPLL            \
1045     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_GLB_Set_USB_CLK_From_WIFIPLL])
1046 
1047 #define RomDriver_GLB_Swap_MCU_SPI_0_MOSI_With_MISO       \
1048     ((BL_Err_Type (*) (BL_Fun_Type newState))ROM_APITABLE[ROM_API_INDEX_GLB_Swap_MCU_SPI_0_MOSI_With_MISO])
1049 
1050 #define RomDriver_GLB_Trim_Ldo18ioBypass                  \
1051     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Trim_Ldo18ioBypass])
1052 
1053 #define RomDriver_GLB_Trim_Ldo18ioVoutSel                 \
1054     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Trim_Ldo18ioVoutSel])
1055 
1056 #define RomDriver_GLB_Trim_Ldo18ioVoutTrim                \
1057     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Trim_Ldo18ioVoutTrim])
1058 
1059 #define RomDriver_GLB_UART_Fun_Sel                        \
1060     ((BL_Err_Type (*) (GLB_UART_SIG_Type sig, GLB_UART_SIG_FUN_Type fun))ROM_APITABLE[ROM_API_INDEX_GLB_UART_Fun_Sel])
1061 
1062 #define RomDriver_GLB_UART_Sig_Swap_Set                   \
1063     ((BL_Err_Type (*) (GLB_UART_SIG_SWAP_GRP_Type group, uint8_t swap))ROM_APITABLE[ROM_API_INDEX_GLB_UART_Sig_Swap_Set])
1064 
1065 #define RomDriver_GLB_WIFIPLL_Ref_Clk_Sel                 \
1066     ((BL_Err_Type (*) (GLB_PLL_REF_CLK_Type refClk))ROM_APITABLE[ROM_API_INDEX_GLB_WIFIPLL_Ref_Clk_Sel])
1067 
1068 #define RomDriver_GLB_Get_Core_Type                       \
1069     ((GLB_CORE_ID_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_Core_Type])
1070 
1071 #define RomDriver_GLB_Get_MCU_Muxpll_160M_Sel             \
1072     ((GLB_MCU_MUXPLL_160M_CLK_SEL_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_MCU_Muxpll_160M_Sel])
1073 
1074 #define RomDriver_GLB_Get_MCU_Muxpll_80M_Sel              \
1075     ((GLB_MCU_MUXPLL_80M_CLK_SEL_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_MCU_Muxpll_80M_Sel])
1076 
1077 #define RomDriver_GLB_Get_SRAM_PARM                       \
1078     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_SRAM_PARM])
1079 
1080 #define RomDriver_GLB_Get_SRAM_RET                        \
1081     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_SRAM_RET])
1082 
1083 #define RomDriver_GLB_Get_SRAM_SLP                        \
1084     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_SRAM_SLP])
1085 
1086 #define RomDriver_GLB_Get_BMX_TO_Status                   \
1087     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_Get_BMX_TO_Status])
1088 
1089 #define RomDriver_GLB_Clr_GPIO_IntStatus                  \
1090     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_Clr_GPIO_IntStatus])
1091 
1092 #define RomDriver_GLB_Embedded_Flash_Pad_Enable           \
1093     ((BL_Err_Type (*) (uint8_t swapIo2Cs))ROM_APITABLE[ROM_API_INDEX_GLB_Embedded_Flash_Pad_Enable])
1094 
1095 #define RomDriver_GLB_GPIO_Clr                            \
1096     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Clr])
1097 
1098 #define RomDriver_GLB_GPIO_Fifo_Clear                     \
1099     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_Clear])
1100 
1101 #define RomDriver_GLB_GPIO_Fifo_Init                      \
1102     ((BL_Err_Type (*) (GLB_GPIO_FIFO_CFG_Type *cfg))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_Init])
1103 
1104 #define RomDriver_GLB_GPIO_Fifo_IntClear                  \
1105     ((BL_Err_Type (*) (GLB_GPIO_FIFO_INT_Type intType))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_IntClear])
1106 
1107 #define RomDriver_GLB_GPIO_Fifo_IntMask                   \
1108     ((BL_Err_Type (*) (GLB_GPIO_FIFO_INT_Type intType, BL_Mask_Type intMask))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_IntMask])
1109 
1110 #define RomDriver_GLB_GPIO_Fifo_Push                      \
1111     ((BL_Err_Type (*) (uint16_t *data, uint16_t len))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_Push])
1112 
1113 #define RomDriver_GLB_GPIO_Func_Init                      \
1114     ((BL_Err_Type (*) (GLB_GPIO_FUNC_Type gpioFun, GLB_GPIO_Type *pinList, uint8_t cnt))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Func_Init])
1115 
1116 #define RomDriver_GLB_GPIO_Init                           \
1117     ((BL_Err_Type (*) (GLB_GPIO_Cfg_Type *cfg))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Init])
1118 
1119 #define RomDriver_GLB_GPIO_Input_Disable                  \
1120     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Input_Disable])
1121 
1122 #define RomDriver_GLB_GPIO_Input_Enable                   \
1123     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Input_Enable])
1124 
1125 #define RomDriver_GLB_GPIO_IntMask                        \
1126     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin, BL_Mask_Type intMask))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_IntMask])
1127 
1128 #define RomDriver_GLB_GPIO_Int_Init                       \
1129     ((BL_Err_Type (*) (GLB_GPIO_INT_Cfg_Type *intCfg))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Int_Init])
1130 
1131 #define RomDriver_GLB_GPIO_Output_Disable                 \
1132     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Output_Disable])
1133 
1134 #define RomDriver_GLB_GPIO_Output_Enable                  \
1135     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Output_Enable])
1136 
1137 #define RomDriver_GLB_GPIO_Set                            \
1138     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Set])
1139 
1140 #define RomDriver_GLB_GPIO_Set_HZ                         \
1141     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Set_HZ])
1142 
1143 #define RomDriver_GLB_GPIO_Write                          \
1144     ((BL_Err_Type (*) (GLB_GPIO_Type gpioPin, uint32_t val))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Write])
1145 
1146 #define RomDriver_GLB_GPIO_Fifo_Disable                   \
1147     ((BL_Sts_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_Disable])
1148 
1149 #define RomDriver_GLB_GPIO_Fifo_Enable                    \
1150     ((BL_Sts_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_Enable])
1151 
1152 #define RomDriver_GLB_GPIO_Fifo_GetIntStatus              \
1153     ((BL_Sts_Type (*) (GLB_GPIO_FIFO_INT_Type intType))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_GetIntStatus])
1154 
1155 #define RomDriver_GLB_Get_GPIO_IntStatus                  \
1156     ((BL_Sts_Type (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_Get_GPIO_IntStatus])
1157 
1158 #define RomDriver_GLB_GPIO_Fifo_GetCount                  \
1159     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Fifo_GetCount])
1160 
1161 #define RomDriver_GLB_GPIO_Read                           \
1162     ((uint32_t (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Read])
1163 
1164 #define RomDriver_GLB_GPIO_Get_Fun                        \
1165     ((uint8_t (*) (GLB_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_GLB_GPIO_Get_Fun])
1166 
1167 #define RomDriver_HBN_32K_Sel                             \
1168     ((BL_Err_Type (*) (HBN_32K_CLK_Type clkType))ROM_APITABLE[ROM_API_INDEX_HBN_32K_Sel])
1169 
1170 #define RomDriver_HBN_Aon_Pad_Cfg                         \
1171     ((BL_Err_Type (*) (uint8_t aonPadHwCtrlEn, HBN_AON_PAD_Type aonGpio, HBN_AON_PAD_CFG_Type *aonPadCfg))ROM_APITABLE[ROM_API_INDEX_HBN_Aon_Pad_Cfg])
1172 
1173 #define RomDriver_HBN_Aon_Pad_Cfg_Set                     \
1174     ((BL_Err_Type (*) (uint8_t aonPadHwCtrlEn, HBN_AON_PAD_Type aonGpio))ROM_APITABLE[ROM_API_INDEX_HBN_Aon_Pad_Cfg_Set])
1175 
1176 #define RomDriver_HBN_Aon_Pad_Ctrl                        \
1177     ((BL_Err_Type (*) (uint32_t aonPadCtl1, uint32_t aonPadCtl2))ROM_APITABLE[ROM_API_INDEX_HBN_Aon_Pad_Ctrl])
1178 
1179 #define RomDriver_HBN_Aon_Pad_WakeUpCfg                   \
1180     ((BL_Err_Type (*) (BL_Fun_Type puPdEn, HBN_GPIO_INT_Trigger_Type trigMode, uint32_t maskVal, BL_Fun_Type dlyEn, uint8_t dlySec))ROM_APITABLE[ROM_API_INDEX_HBN_Aon_Pad_WakeUpCfg])
1181 
1182 #define RomDriver_HBN_Clear_Gpio_Keep                     \
1183     ((BL_Err_Type (*) (uint8_t gpioKeep))ROM_APITABLE[ROM_API_INDEX_HBN_Clear_Gpio_Keep])
1184 
1185 #define RomDriver_HBN_Clear_IRQ                           \
1186     ((BL_Err_Type (*) (HBN_INT_Type irqType))ROM_APITABLE[ROM_API_INDEX_HBN_Clear_IRQ])
1187 
1188 #define RomDriver_HBN_Clear_PDS_Gpio_Keep                 \
1189     ((BL_Err_Type (*) (uint8_t gpioKeep))ROM_APITABLE[ROM_API_INDEX_HBN_Clear_PDS_Gpio_Keep])
1190 
1191 #define RomDriver_HBN_Clear_RTC_Counter                   \
1192     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Clear_RTC_Counter])
1193 
1194 #define RomDriver_HBN_Clear_RTC_INT                       \
1195     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Clear_RTC_INT])
1196 
1197 #define RomDriver_HBN_Disable_AComp0_IRQ                  \
1198     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Disable_AComp0_IRQ])
1199 
1200 #define RomDriver_HBN_Disable_AComp1_IRQ                  \
1201     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Disable_AComp1_IRQ])
1202 
1203 #define RomDriver_HBN_Disable_BOD_IRQ                     \
1204     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Disable_BOD_IRQ])
1205 
1206 #define RomDriver_HBN_Enable_AComp0_IRQ                   \
1207     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Enable_AComp0_IRQ])
1208 
1209 #define RomDriver_HBN_Enable_AComp1_IRQ                   \
1210     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Enable_AComp1_IRQ])
1211 
1212 #define RomDriver_HBN_Enable_BOD_IRQ                      \
1213     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Enable_BOD_IRQ])
1214 
1215 #define RomDriver_HBN_Enable_RTC_Counter                  \
1216     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Enable_RTC_Counter])
1217 
1218 #define RomDriver_HBN_GPIO_INT_Disable                    \
1219     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_GPIO_INT_Disable])
1220 
1221 #define RomDriver_HBN_GPIO_INT_Enable                     \
1222     ((BL_Err_Type (*) (HBN_GPIO_INT_Trigger_Type gpioIntTrigType))ROM_APITABLE[ROM_API_INDEX_HBN_GPIO_INT_Enable])
1223 
1224 #define RomDriver_HBN_Get_Flash_Power_Delay               \
1225     ((BL_Err_Type (*) (uint8_t *flashPwrDly))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Flash_Power_Delay])
1226 
1227 #define RomDriver_HBN_Get_Gpio_Keep                       \
1228     ((BL_Err_Type (*) (uint8_t *gpioKeep))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Gpio_Keep])
1229 
1230 #define RomDriver_HBN_Get_Ldo18io_Power_Delay_Config      \
1231     ((BL_Err_Type (*) (uint16_t *pwrOffDly, uint16_t *pwrOnDly))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Ldo18io_Power_Delay_Config])
1232 
1233 #define RomDriver_HBN_Get_PDS_Gpio_Keep                   \
1234     ((BL_Err_Type (*) (uint8_t *gpioKeep))ROM_APITABLE[ROM_API_INDEX_HBN_Get_PDS_Gpio_Keep])
1235 
1236 #define RomDriver_HBN_Get_RTC_Timer_Val                   \
1237     ((BL_Err_Type (*) (uint32_t *valLow, uint32_t *valHigh))ROM_APITABLE[ROM_API_INDEX_HBN_Get_RTC_Timer_Val])
1238 
1239 #define RomDriver_HBN_Get_Xtal_Type                       \
1240     ((BL_Err_Type (*) (uint8_t *xtalType))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Xtal_Type])
1241 
1242 #define RomDriver_HBN_Hw_Pu_Pd_Cfg                        \
1243     ((BL_Err_Type (*) (uint8_t enable))ROM_APITABLE[ROM_API_INDEX_HBN_Hw_Pu_Pd_Cfg])
1244 
1245 #define RomDriver_HBN_Keep_On_RC32K                       \
1246     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Keep_On_RC32K])
1247 
1248 #define RomDriver_HBN_PIR_Disable                         \
1249     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_PIR_Disable])
1250 
1251 #define RomDriver_HBN_PIR_Enable                          \
1252     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_PIR_Enable])
1253 
1254 #define RomDriver_HBN_PIR_HPF_Sel                         \
1255     ((BL_Err_Type (*) (HBN_PIR_HPF_Type hpf))ROM_APITABLE[ROM_API_INDEX_HBN_PIR_HPF_Sel])
1256 
1257 #define RomDriver_HBN_PIR_INT_Config                      \
1258     ((BL_Err_Type (*) (HBN_PIR_INT_CFG_Type *pirIntCfg))ROM_APITABLE[ROM_API_INDEX_HBN_PIR_INT_Config])
1259 
1260 #define RomDriver_HBN_PIR_LPF_Sel                         \
1261     ((BL_Err_Type (*) (HBN_PIR_LPF_Type lpf))ROM_APITABLE[ROM_API_INDEX_HBN_PIR_LPF_Sel])
1262 
1263 #define RomDriver_HBN_Pin_WakeUp_Mask                     \
1264     ((BL_Err_Type (*) (uint8_t maskVal))ROM_APITABLE[ROM_API_INDEX_HBN_Pin_WakeUp_Mask])
1265 
1266 #define RomDriver_HBN_Power_Off_RC32K                     \
1267     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Power_Off_RC32K])
1268 
1269 #define RomDriver_HBN_Power_Off_Xtal_32K                  \
1270     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Power_Off_Xtal_32K])
1271 
1272 #define RomDriver_HBN_Power_On_Xtal_32K                   \
1273     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Power_On_Xtal_32K])
1274 
1275 #define RomDriver_HBN_Reset                               \
1276     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Reset])
1277 
1278 #define RomDriver_HBN_Set_BOD_Cfg                         \
1279     ((BL_Err_Type (*) (HBN_BOD_CFG_Type *cfg))ROM_APITABLE[ROM_API_INDEX_HBN_Set_BOD_Cfg])
1280 
1281 #define RomDriver_HBN_Set_BOD_Config                      \
1282     ((BL_Err_Type (*) (uint8_t enable, HBN_BOD_THRES_Type threshold, HBN_BOD_MODE_Type mode))ROM_APITABLE[ROM_API_INDEX_HBN_Set_BOD_Config])
1283 
1284 #define RomDriver_HBN_Set_Core_Reboot_Config              \
1285     ((BL_Err_Type (*) (uint8_t core, uint8_t hcfg))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Core_Reboot_Config])
1286 
1287 #define RomDriver_HBN_Set_Flash_Power_Delay               \
1288     ((BL_Err_Type (*) (uint8_t flashPwrDly))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Flash_Power_Delay])
1289 
1290 #define RomDriver_HBN_Set_GPADC_CLK_Sel                   \
1291     ((BL_Err_Type (*) (HBN_GPADC_CLK_Type clkSel))ROM_APITABLE[ROM_API_INDEX_HBN_Set_GPADC_CLK_Sel])
1292 
1293 #define RomDriver_HBN_Set_Gpio_Keep                       \
1294     ((BL_Err_Type (*) (uint8_t gpioKeep))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Gpio_Keep])
1295 
1296 #define RomDriver_HBN_Set_HRAM_Ret                        \
1297     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Set_HRAM_Ret])
1298 
1299 #define RomDriver_HBN_Set_HRAM_slp                        \
1300     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Set_HRAM_slp])
1301 
1302 #define RomDriver_HBN_Set_Ldo11_All_Vout                  \
1303     ((BL_Err_Type (*) (HBN_LDO_LEVEL_Type ldoLevel))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Ldo11_All_Vout])
1304 
1305 #define RomDriver_HBN_Set_Ldo11_Aon_Vout                  \
1306     ((BL_Err_Type (*) (HBN_LDO_LEVEL_Type ldoLevel))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Ldo11_Aon_Vout])
1307 
1308 #define RomDriver_HBN_Set_Ldo11_Rt_Vout                   \
1309     ((BL_Err_Type (*) (HBN_LDO_LEVEL_Type ldoLevel))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Ldo11_Rt_Vout])
1310 
1311 #define RomDriver_HBN_Set_Ldo11_Soc_Vout                  \
1312     ((BL_Err_Type (*) (HBN_LDO_LEVEL_Type ldoLevel))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Ldo11_Soc_Vout])
1313 
1314 #define RomDriver_HBN_Set_Ldo18io_Power_Delay_Config      \
1315     ((BL_Err_Type (*) (uint16_t pwrOffDly, uint16_t pwrOnDly))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Ldo18io_Power_Delay_Config])
1316 
1317 #define RomDriver_HBN_Set_MCU_Root_CLK_Sel                \
1318     ((BL_Err_Type (*) (HBN_MCU_ROOT_CLK_Type rootClk))ROM_APITABLE[ROM_API_INDEX_HBN_Set_MCU_Root_CLK_Sel])
1319 
1320 #define RomDriver_HBN_Set_MCU_XCLK_Sel                    \
1321     ((BL_Err_Type (*) (HBN_MCU_XCLK_Type xclk))ROM_APITABLE[ROM_API_INDEX_HBN_Set_MCU_XCLK_Sel])
1322 
1323 #define RomDriver_HBN_Set_PDS_Gpio_Keep                   \
1324     ((BL_Err_Type (*) (uint8_t gpioKeep))ROM_APITABLE[ROM_API_INDEX_HBN_Set_PDS_Gpio_Keep])
1325 
1326 #define RomDriver_HBN_Set_PIR_Interval                    \
1327     ((BL_Err_Type (*) (uint16_t interval))ROM_APITABLE[ROM_API_INDEX_HBN_Set_PIR_Interval])
1328 
1329 #define RomDriver_HBN_Set_PIR_Threshold                   \
1330     ((BL_Err_Type (*) (uint16_t threshold))ROM_APITABLE[ROM_API_INDEX_HBN_Set_PIR_Threshold])
1331 
1332 #define RomDriver_HBN_Set_RTC_Timer                       \
1333     ((BL_Err_Type (*) (HBN_RTC_INT_Delay_Type delay, uint32_t compValLow, uint32_t compValHigh, uint8_t compMode))ROM_APITABLE[ROM_API_INDEX_HBN_Set_RTC_Timer])
1334 
1335 #define RomDriver_HBN_Set_Status_Flag                     \
1336     ((BL_Err_Type (*) (uint32_t flag))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Status_Flag])
1337 
1338 #define RomDriver_HBN_Set_UART_CLK_Sel                    \
1339     ((BL_Err_Type (*) (HBN_UART_CLK_Type clkSel))ROM_APITABLE[ROM_API_INDEX_HBN_Set_UART_CLK_Sel])
1340 
1341 #define RomDriver_HBN_Set_User_Boot_Config                \
1342     ((BL_Err_Type (*) (uint8_t ubCfg))ROM_APITABLE[ROM_API_INDEX_HBN_Set_User_Boot_Config])
1343 
1344 #define RomDriver_HBN_Set_Wakeup_Addr                     \
1345     ((BL_Err_Type (*) (uint32_t addr))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Wakeup_Addr])
1346 
1347 #define RomDriver_HBN_Set_Xtal_Type                       \
1348     ((BL_Err_Type (*) (uint8_t xtalType))ROM_APITABLE[ROM_API_INDEX_HBN_Set_Xtal_Type])
1349 
1350 #define RomDriver_HBN_Trim_Ldo33VoutTrim                  \
1351     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Trim_Ldo33VoutTrim])
1352 
1353 #define RomDriver_HBN_Trim_RC32K                          \
1354     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Trim_RC32K])
1355 
1356 #define RomDriver_HBN_Get_BOD_OUT_State                   \
1357     ((BL_Sts_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_BOD_OUT_State])
1358 
1359 #define RomDriver_HBN_Get_INT_State                       \
1360     ((BL_Sts_Type (*) (HBN_INT_Type irqType))ROM_APITABLE[ROM_API_INDEX_HBN_Get_INT_State])
1361 
1362 #define RomDriver_HBN_Get_MCU_Root_CLK_Sel                \
1363     ((HBN_MCU_ROOT_CLK_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_MCU_Root_CLK_Sel])
1364 
1365 #define RomDriver_HBN_Get_MCU_XCLK_Sel                    \
1366     ((HBN_MCU_XCLK_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_MCU_XCLK_Sel])
1367 
1368 #define RomDriver_HBN_Get_PIR_Interval                    \
1369     ((uint16_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_PIR_Interval])
1370 
1371 #define RomDriver_HBN_Get_PIR_Threshold                   \
1372     ((uint16_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_PIR_Threshold])
1373 
1374 #define RomDriver_HBN_Get_Status_Flag                     \
1375     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Status_Flag])
1376 
1377 #define RomDriver_HBN_Get_Wakeup_Addr                     \
1378     ((uint32_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Wakeup_Addr])
1379 
1380 #define RomDriver_HBN_Get_Core_Unhalt_Config              \
1381     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Core_Unhalt_Config])
1382 
1383 #define RomDriver_HBN_Get_Pin_Wakeup_Mode                 \
1384     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_Pin_Wakeup_Mode])
1385 
1386 #define RomDriver_HBN_Get_User_Boot_Config                \
1387     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_HBN_Get_User_Boot_Config])
1388 
1389 #define RomDriver_HBN_Enable                              \
1390     ((void (*) (uint32_t aGPIOIeCfg, HBN_LDO_LEVEL_Type ldoLevel, HBN_LEVEL_Type hbnLevel, uint8_t dcdcPuSeq))ROM_APITABLE[ROM_API_INDEX_HBN_Enable])
1391 
1392 #define RomDriver_HBN_Mode_Enter                          \
1393     ((void (*) (HBN_APP_CFG_Type *cfg))ROM_APITABLE[ROM_API_INDEX_HBN_Mode_Enter])
1394 
1395 #define RomDriver_HBN_Power_Down_Flash                    \
1396     ((void (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_HBN_Power_Down_Flash])
1397 
1398 #define RomDriver_L1C_DCache_Clean_All                    \
1399     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Clean_All])
1400 
1401 #define RomDriver_L1C_DCache_Clean_By_Addr                \
1402     ((BL_Err_Type (*) (uintptr_t addr, uint32_t len))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Clean_By_Addr])
1403 
1404 #define RomDriver_L1C_DCache_Clean_Invalid_All            \
1405     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Clean_Invalid_All])
1406 
1407 #define RomDriver_L1C_DCache_Clean_Invalid_By_Addr        \
1408     ((BL_Err_Type (*) (uintptr_t addr, uint32_t len))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Clean_Invalid_By_Addr])
1409 
1410 #define RomDriver_L1C_DCache_Disable                      \
1411     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Disable])
1412 
1413 #define RomDriver_L1C_DCache_Enable                       \
1414     ((BL_Err_Type (*) (uint8_t wayDsiable))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Enable])
1415 
1416 #define RomDriver_L1C_DCache_Invalid_All                  \
1417     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Invalid_All])
1418 
1419 #define RomDriver_L1C_DCache_Invalid_By_Addr              \
1420     ((BL_Err_Type (*) (uintptr_t addr, uint32_t len))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Invalid_By_Addr])
1421 
1422 #define RomDriver_L1C_ICache_Disable                      \
1423     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_L1C_ICache_Disable])
1424 
1425 #define RomDriver_L1C_ICache_Enable                       \
1426     ((BL_Err_Type (*) (uint8_t wayDsiable))ROM_APITABLE[ROM_API_INDEX_L1C_ICache_Enable])
1427 
1428 #define RomDriver_L1C_ICache_Invalid_All                  \
1429     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_L1C_ICache_Invalid_All])
1430 
1431 #define RomDriver_L1C_ICache_Invalid_By_Addr              \
1432     ((BL_Err_Type (*) (uintptr_t addr, uint32_t len))ROM_APITABLE[ROM_API_INDEX_L1C_ICache_Invalid_By_Addr])
1433 
1434 #define RomDriver_L1C_Set_Cache_Setting_By_ID             \
1435     ((BL_Err_Type (*) (uint8_t core, L1C_CACHE_Cfg_Type *cacheSetting))ROM_APITABLE[ROM_API_INDEX_L1C_Set_Cache_Setting_By_ID])
1436 
1437 #define RomDriver_L1C_Set_Wrap                            \
1438     ((BL_Err_Type (*) (uint8_t en))ROM_APITABLE[ROM_API_INDEX_L1C_Set_Wrap])
1439 
1440 #define RomDriver_L1C_DCache_Write_Set                    \
1441     ((void (*) (BL_Fun_Type wtEn, BL_Fun_Type wbEn, BL_Fun_Type waEn))ROM_APITABLE[ROM_API_INDEX_L1C_DCache_Write_Set])
1442 
1443 #define RomDriver_PDS_Default_Level_Config                \
1444     ((BL_Err_Type (*) (PDS_DEFAULT_LV_CFG_Type *defaultLvCfg, uint32_t pdsSleepCnt))ROM_APITABLE[ROM_API_INDEX_PDS_Default_Level_Config])
1445 
1446 #define RomDriver_PDS_Disable_GPIO_Keep                   \
1447     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Disable_GPIO_Keep])
1448 
1449 #define RomDriver_PDS_Enable                              \
1450     ((BL_Err_Type (*) (PDS_CTL_Type *cfg, PDS_CTL4_Type *cfg4, uint32_t pdsSleepCnt))ROM_APITABLE[ROM_API_INDEX_PDS_Enable])
1451 
1452 #define RomDriver_PDS_Force_Config                        \
1453     ((BL_Err_Type (*) (PDS_CTL2_Type *cfg2, PDS_CTL3_Type *cfg3, PDS_CTL5_Type *cfg5))ROM_APITABLE[ROM_API_INDEX_PDS_Force_Config])
1454 
1455 #define RomDriver_PDS_IntClear                            \
1456     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_IntClear])
1457 
1458 #define RomDriver_PDS_IntMask                             \
1459     ((BL_Err_Type (*) (PDS_INT_Type intType, BL_Mask_Type intMask))ROM_APITABLE[ROM_API_INDEX_PDS_IntMask])
1460 
1461 #define RomDriver_PDS_RAM_Config                          \
1462     ((BL_Err_Type (*) (PDS_CTRL_RAM1_Type *ram1Cfg, PDS_CTRL_RAM2_Type *ram2Cfg, PDS_CTRL_RAM3_Type *ram3Cfg, PDS_CTRL_RAM4_Type *ram4Cfg))ROM_APITABLE[ROM_API_INDEX_PDS_RAM_Config])
1463 
1464 #define RomDriver_PDS_Set_Flash_Pad_Pull_None             \
1465     ((BL_Err_Type (*) (uint8_t pinCfg))ROM_APITABLE[ROM_API_INDEX_PDS_Set_Flash_Pad_Pull_None])
1466 
1467 #define RomDriver_PDS_Set_Flash_Pad_Pull_None_Fast        \
1468     ((BL_Err_Type (*) (uint8_t pinCfg))ROM_APITABLE[ROM_API_INDEX_PDS_Set_Flash_Pad_Pull_None_Fast])
1469 
1470 #define RomDriver_PDS_Set_GPIO_Pad_IntClr                 \
1471     ((BL_Err_Type (*) (PDS_GPIO_INT_SET_Type set))ROM_APITABLE[ROM_API_INDEX_PDS_Set_GPIO_Pad_IntClr])
1472 
1473 #define RomDriver_PDS_Set_GPIO_Pad_IntMask                \
1474     ((BL_Err_Type (*) (GLB_GPIO_Type pad, BL_Mask_Type intMask))ROM_APITABLE[ROM_API_INDEX_PDS_Set_GPIO_Pad_IntMask])
1475 
1476 #define RomDriver_PDS_Set_GPIO_Pad_IntMode                \
1477     ((BL_Err_Type (*) (PDS_GPIO_INT_SET_Type set, PDS_GPIO_INT_TRIG_Type trig))ROM_APITABLE[ROM_API_INDEX_PDS_Set_GPIO_Pad_IntMode])
1478 
1479 #define RomDriver_PDS_Set_GPIO_Pad_Pn_Pu_Pd_Ie            \
1480     ((BL_Err_Type (*) (PDS_GPIO_GROUP_SET_Type grp, uint8_t pu, uint8_t pd, uint8_t ie))ROM_APITABLE[ROM_API_INDEX_PDS_Set_GPIO_Pad_Pn_Pu_Pd_Ie])
1481 
1482 #define RomDriver_PDS_Set_MCU0_Clock_Disable              \
1483     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Set_MCU0_Clock_Disable])
1484 
1485 #define RomDriver_PDS_Set_MCU0_Clock_Enable               \
1486     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Set_MCU0_Clock_Enable])
1487 
1488 #define RomDriver_PDS_Set_MCU0_Reset_Address              \
1489     ((BL_Err_Type (*) (uint32_t addr))ROM_APITABLE[ROM_API_INDEX_PDS_Set_MCU0_Reset_Address])
1490 
1491 #define RomDriver_PDS_Set_USB_Resume                      \
1492     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Set_USB_Resume])
1493 
1494 #define RomDriver_PDS_Set_USB_Suspend                     \
1495     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Set_USB_Suspend])
1496 
1497 #define RomDriver_PDS_Trim_RC32M                          \
1498     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Trim_RC32M])
1499 
1500 #define RomDriver_PDS_Turn_Off_USB                        \
1501     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_PDS_Turn_Off_USB])
1502 
1503 #define RomDriver_PDS_Turn_On_USB                         \
1504     ((BL_Err_Type (*) (uint8_t waitReady))ROM_APITABLE[ROM_API_INDEX_PDS_Turn_On_USB])
1505 
1506 #define RomDriver_PDS_Get_GPIO_Pad_IntStatus              \
1507     ((BL_Sts_Type (*) (GLB_GPIO_Type pad))ROM_APITABLE[ROM_API_INDEX_PDS_Get_GPIO_Pad_IntStatus])
1508 
1509 #define RomDriver_PDS_Get_IntStatus                       \
1510     ((BL_Sts_Type (*) (PDS_INT_Type intType))ROM_APITABLE[ROM_API_INDEX_PDS_Get_IntStatus])
1511 
1512 #define RomDriver_SF_Cfg_Deinit_Ext_Flash_Gpio            \
1513     ((int (*) (uint8_t extFlashPin))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Deinit_Ext_Flash_Gpio])
1514 
1515 #define RomDriver_SF_Cfg_Flash_Init                       \
1516     ((int (*) (uint8_t sel, const struct sf_ctrl_cfg_type *pSfCtrlCfg, const struct sf_ctrl_bank2_cfg *pBank2Cfg))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Flash_Init])
1517 
1518 #define RomDriver_SF_Cfg_Get_Flash_Cfg_Need_Lock          \
1519     ((int (*) (uint32_t flashID, spi_flash_cfg_type *pFlashCfg))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Get_Flash_Cfg_Need_Lock])
1520 
1521 #define RomDriver_SF_Cfg_Init_Ext_Flash_Gpio              \
1522     ((int (*) (uint8_t extFlashPin))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Init_Ext_Flash_Gpio])
1523 
1524 #define RomDriver_SF_Cfg_Init_Flash2_Gpio                 \
1525     ((int (*) (uint8_t swap))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Init_Flash2_Gpio])
1526 
1527 #define RomDriver_SF_Cfg_Init_Flash_Gpio                  \
1528     ((int (*) (uint8_t flashPinCfg, uint8_t restoreDefault))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Init_Flash_Gpio])
1529 
1530 #define RomDriver_SF_Cfg_Sbus2_Flash_Init                 \
1531     ((int (*) (uint8_t sel, const struct sf_ctrl_bank2_cfg *pBank2Cfg))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Sbus2_Flash_Init])
1532 
1533 #define RomDriver_SF_Cfg_Flash_Identify                   \
1534     ((uint32_t (*) (uint8_t callFromFlash, uint8_t flashPinCfg, uint8_t restoreDefault, spi_flash_cfg_type *pFlashCfg, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SF_Cfg_Flash_Identify])
1535 
1536 #define RomDriver_SF_Ctrl_GetBusyState                    \
1537     ((int (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_GetBusyState])
1538 
1539 #define RomDriver_SF_Ctrl_Is_AES_Enable                   \
1540     ((int (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Is_AES_Enable])
1541 
1542 #define RomDriver_SF_Ctrl_Is_Sbus2_Enable                 \
1543     ((int (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Is_Sbus2_Enable])
1544 
1545 #define RomDriver_SF_Ctrl_Get_Flash_Image_Offset          \
1546     ((uint32_t (*) (uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Get_Flash_Image_Offset])
1547 
1548 #define RomDriver_SF_Ctrl_Get_Clock_Delay                 \
1549     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Get_Clock_Delay])
1550 
1551 #define RomDriver_SF_Ctrl_Get_Wrap_Queue_Value            \
1552     ((uint8_t (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Get_Wrap_Queue_Value])
1553 
1554 #define RomDriver_SF_Ctrl_32bits_Addr_En                  \
1555     ((void (*) (BL_Fun_Type en32BitsAddr))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_32bits_Addr_En])
1556 
1557 #define RomDriver_SF_Ctrl_AES_Disable                     \
1558     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Disable])
1559 
1560 #define RomDriver_SF_Ctrl_AES_Enable                      \
1561     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Enable])
1562 
1563 #define RomDriver_SF_Ctrl_AES_Enable_BE                   \
1564     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Enable_BE])
1565 
1566 #define RomDriver_SF_Ctrl_AES_Enable_LE                   \
1567     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Enable_LE])
1568 
1569 #define RomDriver_SF_Ctrl_AES_Set_IV                      \
1570     ((void (*) (uint8_t region, uint8_t *iv, uint32_t addrOffset))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Set_IV])
1571 
1572 #define RomDriver_SF_Ctrl_AES_Set_IV_BE                   \
1573     ((void (*) (uint8_t region, uint8_t *iv, uint32_t addrOffset))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Set_IV_BE])
1574 
1575 #define RomDriver_SF_Ctrl_AES_Set_Key                     \
1576     ((void (*) (uint8_t region, uint8_t *key, uint8_t keyType))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Set_Key])
1577 
1578 #define RomDriver_SF_Ctrl_AES_Set_Key_BE                  \
1579     ((void (*) (uint8_t region, uint8_t *key, uint8_t keyType))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Set_Key_BE])
1580 
1581 #define RomDriver_SF_Ctrl_AES_Set_Mode                    \
1582     ((void (*) (uint8_t mode))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Set_Mode])
1583 
1584 #define RomDriver_SF_Ctrl_AES_Set_Region                  \
1585     ((void (*) (uint8_t region, uint8_t enable, uint8_t hwKey, uint32_t startAddr, uint32_t endAddr, uint8_t locked))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_Set_Region])
1586 
1587 #define RomDriver_SF_Ctrl_AES_XTS_Set_IV                  \
1588     ((void (*) (uint8_t region, uint8_t *iv, uint32_t addrOffset))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_IV])
1589 
1590 #define RomDriver_SF_Ctrl_AES_XTS_Set_IV_BE               \
1591     ((void (*) (uint8_t region, uint8_t *iv, uint32_t addrOffset))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_IV_BE])
1592 
1593 #define RomDriver_SF_Ctrl_AES_XTS_Set_Key                 \
1594     ((void (*) (uint8_t region, uint8_t *key, uint8_t keyType))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_Key])
1595 
1596 #define RomDriver_SF_Ctrl_AES_XTS_Set_Key_BE              \
1597     ((void (*) (uint8_t region, uint8_t *key, uint8_t keyType))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_AES_XTS_Set_Key_BE])
1598 
1599 #define RomDriver_SF_Ctrl_Bank2_Enable                    \
1600     ((void (*) (const struct sf_ctrl_bank2_cfg *bank2Cfg))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Bank2_Enable])
1601 
1602 #define RomDriver_SF_Ctrl_Cmds_Set                        \
1603     ((void (*) (struct sf_ctrl_cmds_cfg *cmdsCfg, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Cmds_Set])
1604 
1605 #define RomDriver_SF_Ctrl_Disable                         \
1606     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Disable])
1607 
1608 #define RomDriver_SF_Ctrl_Disable_Wrap_Access             \
1609     ((void (*) (uint8_t disable))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Disable_Wrap_Access])
1610 
1611 #define RomDriver_SF_Ctrl_Enable                          \
1612     ((void (*) (const struct sf_ctrl_cfg_type *cfg))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Enable])
1613 
1614 #define RomDriver_SF_Ctrl_Flash2_Read_Icache_Set          \
1615     ((void (*) (struct sf_ctrl_cmd_cfg_type *cfg, uint8_t cmdValid))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Flash2_Read_Icache_Set])
1616 
1617 #define RomDriver_SF_Ctrl_Flash_Read_Icache_Set           \
1618     ((void (*) (struct sf_ctrl_cmd_cfg_type *cfg, uint8_t cmdValid))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Flash_Read_Icache_Set])
1619 
1620 #define RomDriver_SF_Ctrl_Lock_Flash_Image_Offset         \
1621     ((void (*) (uint8_t lock))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Lock_Flash_Image_Offset])
1622 
1623 #define RomDriver_SF_Ctrl_Remap_Set                       \
1624     ((void (*) (uint8_t remap, uint8_t lock))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Remap_Set])
1625 
1626 #define RomDriver_SF_Ctrl_Sbus2_Hold_Sram                 \
1627     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Sbus2_Hold_Sram])
1628 
1629 #define RomDriver_SF_Ctrl_Sbus2_Release_Sram              \
1630     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Sbus2_Release_Sram])
1631 
1632 #define RomDriver_SF_Ctrl_Sbus2_Replace                   \
1633     ((void (*) (uint8_t pad))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Sbus2_Replace])
1634 
1635 #define RomDriver_SF_Ctrl_Sbus2_Revoke_replace            \
1636     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Sbus2_Revoke_replace])
1637 
1638 #define RomDriver_SF_Ctrl_Sbus2_Set_Delay                 \
1639     ((void (*) (uint8_t clkDelay, uint8_t rxClkInvert))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Sbus2_Set_Delay])
1640 
1641 #define RomDriver_SF_Ctrl_Sbus_Select_Bank                \
1642     ((void (*) (uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Sbus_Select_Bank])
1643 
1644 #define RomDriver_SF_Ctrl_Select_Pad                      \
1645     ((void (*) (uint8_t sel))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Select_Pad])
1646 
1647 #define RomDriver_SF_Ctrl_SendCmd                         \
1648     ((void (*) (struct sf_ctrl_cmd_cfg_type *cfg))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_SendCmd])
1649 
1650 #define RomDriver_SF_Ctrl_Set_Clock_Delay                 \
1651     ((void (*) (uint8_t delay))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Set_Clock_Delay])
1652 
1653 #define RomDriver_SF_Ctrl_Set_Flash_Image_Offset          \
1654     ((void (*) (uint32_t addrOffset, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Set_Flash_Image_Offset])
1655 
1656 #define RomDriver_SF_Ctrl_Set_IO_Delay                    \
1657     ((void (*) (uint8_t pad, uint8_t doDelay, uint8_t diDelay, uint8_t oeDelay))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Set_IO_Delay])
1658 
1659 #define RomDriver_SF_Ctrl_Set_Owner                       \
1660     ((void (*) (uint8_t owner))ROM_APITABLE[ROM_API_INDEX_SF_Ctrl_Set_Owner])
1661 
1662 #define RomDriver_SFlash_Blk32_Erase                      \
1663     ((int (*) (spi_flash_cfg_type *flashCfg, uint32_t blkNum))ROM_APITABLE[ROM_API_INDEX_SFlash_Blk32_Erase])
1664 
1665 #define RomDriver_SFlash_Blk64_Erase                      \
1666     ((int (*) (spi_flash_cfg_type *flashCfg, uint32_t blkNum))ROM_APITABLE[ROM_API_INDEX_SFlash_Blk64_Erase])
1667 
1668 #define RomDriver_SFlash_Chip_Erase                       \
1669     ((int (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Chip_Erase])
1670 
1671 #define RomDriver_SFlash_Erase                            \
1672     ((int (*) (spi_flash_cfg_type *flashCfg, uint32_t startaddr, uint32_t endaddr))ROM_APITABLE[ROM_API_INDEX_SFlash_Erase])
1673 
1674 #define RomDriver_SFlash_Erase_Security_Register          \
1675     ((int (*) (spi_flash_cfg_type *pFlashCfg, struct sflash_sec_reg_cfg *pSecRegCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Erase_Security_Register])
1676 
1677 #define RomDriver_SFlash_IDbus_Read_Enable                \
1678     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t ioMode, uint8_t contRead, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SFlash_IDbus_Read_Enable])
1679 
1680 #define RomDriver_SFlash_Program                          \
1681     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t ioMode, uint32_t addr, uint8_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_SFlash_Program])
1682 
1683 #define RomDriver_SFlash_Program_Security_Register        \
1684     ((int (*) (spi_flash_cfg_type *pFlashCfg, struct sflash_sec_reg_cfg *pSecRegCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Program_Security_Register])
1685 
1686 #define RomDriver_SFlash_Qspi_Disable                     \
1687     ((int (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Qspi_Disable])
1688 
1689 #define RomDriver_SFlash_Qspi_Enable                      \
1690     ((int (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Qspi_Enable])
1691 
1692 #define RomDriver_SFlash_RCV_Enable                       \
1693     ((int (*) (spi_flash_cfg_type *pFlashCfg, uint8_t rCmd, uint8_t wCmd, uint8_t bitPos))ROM_APITABLE[ROM_API_INDEX_SFlash_RCV_Enable])
1694 
1695 #define RomDriver_SFlash_Read                             \
1696     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t ioMode, uint8_t contRead, uint32_t addr, uint8_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_SFlash_Read])
1697 
1698 #define RomDriver_SFlash_Read_Reg                         \
1699     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t regIndex, uint8_t *regValue, uint8_t regLen))ROM_APITABLE[ROM_API_INDEX_SFlash_Read_Reg])
1700 
1701 #define RomDriver_SFlash_Read_Reg_With_Cmd                \
1702     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t readRegCmd, uint8_t *regValue, uint8_t regLen))ROM_APITABLE[ROM_API_INDEX_SFlash_Read_Reg_With_Cmd])
1703 
1704 #define RomDriver_SFlash_Read_Security_Register           \
1705     ((int (*) (struct sflash_sec_reg_cfg *pSecRegCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Read_Security_Register])
1706 
1707 #define RomDriver_SFlash_Restore_From_Powerdown           \
1708     ((int (*) (spi_flash_cfg_type *pFlashCfg, uint8_t flashContRead, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SFlash_Restore_From_Powerdown])
1709 
1710 #define RomDriver_SFlash_Sector_Erase                     \
1711     ((int (*) (spi_flash_cfg_type *flashCfg, uint32_t secNum))ROM_APITABLE[ROM_API_INDEX_SFlash_Sector_Erase])
1712 
1713 #define RomDriver_SFlash_Set32BitsAddrMode                \
1714     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t en32BitsAddr))ROM_APITABLE[ROM_API_INDEX_SFlash_Set32BitsAddrMode])
1715 
1716 #define RomDriver_SFlash_SetSPIMode                       \
1717     ((int (*) (uint8_t mode))ROM_APITABLE[ROM_API_INDEX_SFlash_SetSPIMode])
1718 
1719 #define RomDriver_SFlash_Set_IDbus_Cfg                    \
1720     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t ioMode, uint8_t contRead, uint32_t addr, uint32_t len, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_SFlash_Set_IDbus_Cfg])
1721 
1722 #define RomDriver_SFlash_Software_Reset                   \
1723     ((int (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Software_Reset])
1724 
1725 #define RomDriver_SFlash_Write_Enable                     \
1726     ((int (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Write_Enable])
1727 
1728 #define RomDriver_SFlash_Write_Reg                        \
1729     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t regIndex, uint8_t *regValue, uint8_t regLen))ROM_APITABLE[ROM_API_INDEX_SFlash_Write_Reg])
1730 
1731 #define RomDriver_SFlash_Write_Reg_With_Cmd               \
1732     ((int (*) (spi_flash_cfg_type *flashCfg, uint8_t writeRegCmd, uint8_t *regValue, uint8_t regLen))ROM_APITABLE[ROM_API_INDEX_SFlash_Write_Reg_With_Cmd])
1733 
1734 #define RomDriver_SFlash_Busy                             \
1735     ((int (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Busy])
1736 
1737 #define RomDriver_SFlash_DisableBurstWrap                 \
1738     ((void (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_DisableBurstWrap])
1739 
1740 #define RomDriver_SFlash_GetDeviceId                      \
1741     ((void (*) (uint8_t *data, uint8_t is32BitsAddr))ROM_APITABLE[ROM_API_INDEX_SFlash_GetDeviceId])
1742 
1743 #define RomDriver_SFlash_GetJedecId                       \
1744     ((void (*) (spi_flash_cfg_type *flashCfg, uint8_t *data))ROM_APITABLE[ROM_API_INDEX_SFlash_GetJedecId])
1745 
1746 #define RomDriver_SFlash_GetUniqueId                      \
1747     ((void (*) (uint8_t *data, uint8_t idLen))ROM_APITABLE[ROM_API_INDEX_SFlash_GetUniqueId])
1748 
1749 #define RomDriver_SFlash_IDbus_Read_Disable               \
1750     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SFlash_IDbus_Read_Disable])
1751 
1752 #define RomDriver_SFlash_Init                             \
1753     ((void (*) (const struct sf_ctrl_cfg_type *pSfCtrlCfg, const struct sf_ctrl_bank2_cfg *pBank2Cfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Init])
1754 
1755 #define RomDriver_SFlash_Powerdown                        \
1756     ((void (*) (void))ROM_APITABLE[ROM_API_INDEX_SFlash_Powerdown])
1757 
1758 #define RomDriver_SFlash_Release_Powerdown                \
1759     ((void (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Release_Powerdown])
1760 
1761 #define RomDriver_SFlash_Reset_Continue_Read              \
1762     ((void (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Reset_Continue_Read])
1763 
1764 #define RomDriver_SFlash_SetBurstWrap                     \
1765     ((void (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_SetBurstWrap])
1766 
1767 #define RomDriver_SFlash_Volatile_Reg_Write_Enable        \
1768     ((void (*) (spi_flash_cfg_type *flashCfg))ROM_APITABLE[ROM_API_INDEX_SFlash_Volatile_Reg_Write_Enable])
1769 
1770 #define RomDriver_UART_AutoBaudDetection                  \
1771     ((BL_Err_Type (*) (UART_ID_Type uartId, BL_Fun_Type autoBaud))ROM_APITABLE[ROM_API_INDEX_UART_AutoBaudDetection])
1772 
1773 #define RomDriver_UART_ClrRtsValue                        \
1774     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_ClrRtsValue])
1775 
1776 #define RomDriver_UART_ClrTxValue                         \
1777     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_ClrTxValue])
1778 
1779 #define RomDriver_UART_DeInit                             \
1780     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_DeInit])
1781 
1782 #define RomDriver_UART_Disable                            \
1783     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_Direction_Type direct))ROM_APITABLE[ROM_API_INDEX_UART_Disable])
1784 
1785 #define RomDriver_UART_Enable                             \
1786     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_Direction_Type direct))ROM_APITABLE[ROM_API_INDEX_UART_Enable])
1787 
1788 #define RomDriver_UART_FifoConfig                         \
1789     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_FifoCfg_Type *fifoCfg))ROM_APITABLE[ROM_API_INDEX_UART_FifoConfig])
1790 
1791 #define RomDriver_UART_GetBitWidth0X55                    \
1792     ((BL_Err_Type (*) (UART_ID_Type uartId, uint16_t *width))ROM_APITABLE[ROM_API_INDEX_UART_GetBitWidth0X55])
1793 
1794 #define RomDriver_UART_Init                               \
1795     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_CFG_Type *uartCfg))ROM_APITABLE[ROM_API_INDEX_UART_Init])
1796 
1797 #define RomDriver_UART_IntClear                           \
1798     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_INT_Type intType))ROM_APITABLE[ROM_API_INDEX_UART_IntClear])
1799 
1800 #define RomDriver_UART_IntMask                            \
1801     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_INT_Type intType, BL_Mask_Type intMask))ROM_APITABLE[ROM_API_INDEX_UART_IntMask])
1802 
1803 #define RomDriver_UART_IrConfig                           \
1804     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_IrCfg_Type *irCfg))ROM_APITABLE[ROM_API_INDEX_UART_IrConfig])
1805 
1806 #define RomDriver_UART_RxFifoClear                        \
1807     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_RxFifoClear])
1808 
1809 #define RomDriver_UART_SendData                           \
1810     ((BL_Err_Type (*) (UART_ID_Type uartId, uint8_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_UART_SendData])
1811 
1812 #define RomDriver_UART_SendDataBlock                      \
1813     ((BL_Err_Type (*) (UART_ID_Type uartId, uint8_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_UART_SendDataBlock])
1814 
1815 #define RomDriver_UART_SetAllowableError0X55              \
1816     ((BL_Err_Type (*) (UART_ID_Type uartId, uint8_t allowableError))ROM_APITABLE[ROM_API_INDEX_UART_SetAllowableError0X55])
1817 
1818 #define RomDriver_UART_SetBaudrate                        \
1819     ((BL_Err_Type (*) (UART_ID_Type uartId, UART_AutoBaudDetection_Type autoBaudDet))ROM_APITABLE[ROM_API_INDEX_UART_SetBaudrate])
1820 
1821 #define RomDriver_UART_SetDeglitchCount                   \
1822     ((BL_Err_Type (*) (UART_ID_Type uartId, uint8_t deglitchCnt))ROM_APITABLE[ROM_API_INDEX_UART_SetDeglitchCount])
1823 
1824 #define RomDriver_UART_SetRS485                           \
1825     ((BL_Err_Type (*) (UART_ID_Type uartId, BL_Fun_Type enable, UART_RS485Polarity_Type polarity))ROM_APITABLE[ROM_API_INDEX_UART_SetRS485])
1826 
1827 #define RomDriver_UART_SetRtsValue                        \
1828     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_SetRtsValue])
1829 
1830 #define RomDriver_UART_SetRxByteCount                     \
1831     ((BL_Err_Type (*) (UART_ID_Type uartId, uint16_t count))ROM_APITABLE[ROM_API_INDEX_UART_SetRxByteCount])
1832 
1833 #define RomDriver_UART_SetRxDataLength                    \
1834     ((BL_Err_Type (*) (UART_ID_Type uartId, uint16_t length))ROM_APITABLE[ROM_API_INDEX_UART_SetRxDataLength])
1835 
1836 #define RomDriver_UART_SetRxTimeoutValue                  \
1837     ((BL_Err_Type (*) (UART_ID_Type uartId, uint8_t time))ROM_APITABLE[ROM_API_INDEX_UART_SetRxTimeoutValue])
1838 
1839 #define RomDriver_UART_SetTxDataLength                    \
1840     ((BL_Err_Type (*) (UART_ID_Type uartId, uint16_t length))ROM_APITABLE[ROM_API_INDEX_UART_SetTxDataLength])
1841 
1842 #define RomDriver_UART_SetTxValue                         \
1843     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_SetTxValue])
1844 
1845 #define RomDriver_UART_TxFifoClear                        \
1846     ((BL_Err_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_TxFifoClear])
1847 
1848 #define RomDriver_UART_TxFreeRun                          \
1849     ((BL_Err_Type (*) (UART_ID_Type uartId, BL_Fun_Type txFreeRun))ROM_APITABLE[ROM_API_INDEX_UART_TxFreeRun])
1850 
1851 #define RomDriver_UART_GetIntStatus                       \
1852     ((BL_Sts_Type (*) (UART_ID_Type uartId, UART_INT_Type intType))ROM_APITABLE[ROM_API_INDEX_UART_GetIntStatus])
1853 
1854 #define RomDriver_UART_GetOverflowStatus                  \
1855     ((BL_Sts_Type (*) (UART_ID_Type uartId, UART_Overflow_Type overflow))ROM_APITABLE[ROM_API_INDEX_UART_GetOverflowStatus])
1856 
1857 #define RomDriver_UART_GetRxBusBusyStatus                 \
1858     ((BL_Sts_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_GetRxBusBusyStatus])
1859 
1860 #define RomDriver_UART_GetTxBusBusyStatus                 \
1861     ((BL_Sts_Type (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_GetTxBusBusyStatus])
1862 
1863 #define RomDriver_UART_GetAutoBaudCount                   \
1864     ((uint16_t (*) (UART_ID_Type uartId, UART_AutoBaudDetection_Type autoBaudDet))ROM_APITABLE[ROM_API_INDEX_UART_GetAutoBaudCount])
1865 
1866 #define RomDriver_UART_GetRxByteCount                     \
1867     ((uint16_t (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_GetRxByteCount])
1868 
1869 #define RomDriver_UART_ReceiveData                        \
1870     ((uint32_t (*) (UART_ID_Type uartId, uint8_t *data, uint32_t maxLen))ROM_APITABLE[ROM_API_INDEX_UART_ReceiveData])
1871 
1872 #define RomDriver_UART_GetRxFifoCount                     \
1873     ((uint8_t (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_GetRxFifoCount])
1874 
1875 #define RomDriver_UART_GetTxFifoCount                     \
1876     ((uint8_t (*) (UART_ID_Type uartId))ROM_APITABLE[ROM_API_INDEX_UART_GetTxFifoCount])
1877 
1878 #define RomDriver_XIP_SFlash_Erase_Need_Lock              \
1879     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint32_t startaddr, int len, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_Erase_Need_Lock])
1880 
1881 #define RomDriver_XIP_SFlash_GetDeviceId_Need_Lock        \
1882     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, BL_Fun_Type is32BitsAddr, uint8_t *data, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_GetDeviceId_Need_Lock])
1883 
1884 #define RomDriver_XIP_SFlash_GetJedecId_Need_Lock         \
1885     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint8_t *data, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_GetJedecId_Need_Lock])
1886 
1887 #define RomDriver_XIP_SFlash_GetUniqueId_Need_Lock        \
1888     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint8_t *data, uint8_t idLen, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_GetUniqueId_Need_Lock])
1889 
1890 #define RomDriver_XIP_SFlash_Read_Need_Lock               \
1891     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint32_t addr, uint8_t *data, uint32_t len, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_Read_Need_Lock])
1892 
1893 #define RomDriver_XIP_SFlash_Read_Via_Cache_Need_Lock     \
1894     ((BL_Err_Type (*) (uint32_t addr, uint8_t *data, uint32_t len))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_Read_Via_Cache_Need_Lock])
1895 
1896 #define RomDriver_XIP_SFlash_State_Restore                \
1897     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint32_t offset, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_State_Restore])
1898 
1899 #define RomDriver_XIP_SFlash_State_Save                   \
1900     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint32_t *offset, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_State_Save])
1901 
1902 #define RomDriver_XIP_SFlash_Write_Need_Lock              \
1903     ((BL_Err_Type (*) (spi_flash_cfg_type *pFlashCfg, uint32_t addr, uint8_t *data, uint32_t len, uint8_t group, uint8_t bank))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_Write_Need_Lock])
1904 
1905 #define RomDriver_XIP_SFlash_Opt_Enter                    \
1906     ((void (*) (uint8_t *aesEnable))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_Opt_Enter])
1907 
1908 #define RomDriver_XIP_SFlash_Opt_Exit                     \
1909     ((void (*) (uint8_t aesEnable))ROM_APITABLE[ROM_API_INDEX_XIP_SFlash_Opt_Exit])
1910 
1911 #define RomDriver_MD_Clr_GPIO_IntStatus                   \
1912     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_Clr_GPIO_IntStatus])
1913 
1914 #define RomDriver_MD_Embedded_Flash_Pad_Enable            \
1915     ((BL_Err_Type (*) (void))ROM_APITABLE[ROM_API_INDEX_MD_Embedded_Flash_Pad_Enable])
1916 
1917 #define RomDriver_MD_GPIO_Clr                             \
1918     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Clr])
1919 
1920 #define RomDriver_MD_GPIO_Init                            \
1921     ((BL_Err_Type (*) (MD_GPIO_Cfg_Type *cfg))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Init])
1922 
1923 #define RomDriver_MD_GPIO_Input_Disable                   \
1924     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Input_Disable])
1925 
1926 #define RomDriver_MD_GPIO_Input_Enable                    \
1927     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Input_Enable])
1928 
1929 #define RomDriver_MD_GPIO_IntMask                         \
1930     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin, BL_Mask_Type intMask))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_IntMask])
1931 
1932 #define RomDriver_MD_GPIO_Int_Init                        \
1933     ((BL_Err_Type (*) (MD_GPIO_INT_Cfg_Type *intCfg))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Int_Init])
1934 
1935 #define RomDriver_MD_GPIO_Output_Disable                  \
1936     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Output_Disable])
1937 
1938 #define RomDriver_MD_GPIO_Output_Enable                   \
1939     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Output_Enable])
1940 
1941 #define RomDriver_MD_GPIO_Set                             \
1942     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Set])
1943 
1944 #define RomDriver_MD_GPIO_Set_HZ                          \
1945     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Set_HZ])
1946 
1947 #define RomDriver_MD_GPIO_Write                           \
1948     ((BL_Err_Type (*) (MD_GPIO_Type gpioPin, uint32_t val))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Write])
1949 
1950 #define RomDriver_MD_Get_GPIO_IntStatus                   \
1951     ((BL_Sts_Type (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_Get_GPIO_IntStatus])
1952 
1953 #define RomDriver_MD_GPIO_Read                            \
1954     ((uint32_t (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Read])
1955 
1956 #define RomDriver_MD_GPIO_Get_Fun                         \
1957     ((uint8_t (*) (MD_GPIO_Type gpioPin))ROM_APITABLE[ROM_API_INDEX_MD_GPIO_Get_Fun])
1958 
1959 /*@} end of group ROMDRIVER_Public_Macros */
1960 
1961 /** @defgroup  ROMDRIVER_Public_Functions
1962  *  @{
1963  */
1964 
1965 /*@} end of group ROMDRIVER_Public_Functions */
1966 
1967 /*@} end of group ROMDRIVER */
1968 
1969 /*@} end of group bl616_Peripheral_Driver */
1970 
1971 #endif /* __bl616_ROMDRIVER_H__ */
1972