1 /* 2 * Copyright (c) 2022 FuZhou Lockzhiner Electronic Co., Ltd. All rights reserved. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef _HAL_BSP_H_ 17 #define _HAL_BSP_H_ 18 19 #include "hal_base.h" 20 21 /***************************** MACRO Definition ******************************/ 22 23 /***************************** Structure Definition **************************/ 24 #ifdef HAL_ACDCDIG_MODULE_ENABLED 25 extern struct HAL_ACDCDIG_DEV g_acdcDigDev; 26 #endif 27 28 #ifdef HAL_AUDIOPWM_MODULE_ENABLED 29 extern struct HAL_AUDIOPWM_DEV g_audioPwmDev; 30 #endif 31 32 #ifdef HAL_DWDMA_MODULE_ENABLED 33 extern struct HAL_DWDMA_DEV g_dwDmaDev; 34 #endif 35 36 #ifdef HAL_HYPERPSRAM_MODULE_ENABLED 37 extern struct HAL_HYPERPSRAM_DEV g_hyperpsramDev; 38 #endif 39 40 #ifdef HAL_I2C_MODULE_ENABLED 41 extern const struct HAL_I2C_DEV g_i2c0Dev; 42 extern const struct HAL_I2C_DEV g_i2c1Dev; 43 extern const struct HAL_I2C_DEV g_i2c2Dev; 44 #endif 45 46 #ifdef HAL_PDM_MODULE_ENABLED 47 extern struct HAL_PDM_DEV g_pdm0Dev; 48 #endif 49 50 #if defined(HAL_PINCTRL_MODULE_ENABLED) 51 extern const struct HAL_PINCTRL_DEV g_pinDev; 52 #endif 53 54 #ifdef HAL_PWM_MODULE_ENABLED 55 extern const struct HAL_PWM_DEV g_pwm0Dev; 56 extern const struct HAL_PWM_DEV g_pwm1Dev; 57 extern const struct HAL_PWM_DEV g_pwm2Dev; 58 #endif 59 60 #ifdef HAL_UART_MODULE_ENABLED 61 extern const struct HAL_UART_DEV g_uart0Dev; 62 extern const struct HAL_UART_DEV g_uart1Dev; 63 extern const struct HAL_UART_DEV g_uart2Dev; 64 #endif 65 66 #ifdef HAL_I2STDM_MODULE_ENABLED 67 extern struct HAL_I2STDM_DEV g_i2sTdm0Dev; 68 extern struct HAL_I2STDM_DEV g_i2sTdm1Dev; 69 #endif 70 71 #ifdef HAL_TSADC_MODULE_ENABLED 72 extern const struct HAL_TSADC_DEV g_tsadcDev; 73 #endif 74 75 #ifdef HAL_FSPI_MODULE_ENABLED 76 extern struct HAL_FSPI_HOST g_fspi0Dev; 77 extern struct HAL_FSPI_HOST g_fspi1Dev; 78 #endif 79 80 #ifdef HAL_PVTM_MODULE_ENABLED 81 extern const struct HAL_PVTM_DEV g_pvtmDev; 82 #endif 83 84 #if defined(HAL_PCD_MODULE_ENABLED) || defined(HAL_HCD_MODULE_ENABLED) 85 extern const struct HAL_USB_DEV g_usbdDev; 86 #endif 87 88 #ifdef HAL_VAD_MODULE_ENABLED 89 extern struct HAL_VAD_DEV g_vadDev; 90 #endif 91 92 #ifdef HAL_SPI_MODULE_ENABLED 93 extern const struct HAL_SPI_DEV g_spiDev0; 94 extern const struct HAL_SPI_DEV g_spiDev1; 95 #endif 96 97 /***************************** Function Declare ******************************/ 98 99 void BSP_Init(void); 100 void BSP_DeInit(void); 101 102 #endif /* _HAL_BSP_H_ */