app_drv_config.h
Go to the documentation of this file.
1 /**
2  ****************************************************************************************
3  *
4  * @file app_drv_config.h
5  * @author BLE Driver Team
6  * @brief Header file of app driver config code.
7  *
8  ****************************************************************************************
9  * @attention
10  #####Copyright (c) 2019 GOODIX
11  All rights reserved.
12 
13  Redistribution and use in source and binary forms, with or without
14  modification, are permitted provided that the following conditions are met:
15  * Redistributions of source code must retain the above copyright
16  notice, this list of conditions and the following disclaimer.
17  * Redistributions in binary form must reproduce the above copyright
18  notice, this list of conditions and the following disclaimer in the
19  documentation and/or other materials provided with the distribution.
20  * Neither the name of GOODIX nor the names of its contributors may be used
21  to endorse or promote products derived from this software without
22  specific prior written permission.
23 
24  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
25  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27  ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
28  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34  POSSIBILITY OF SUCH DAMAGE.
35  ****************************************************************************************
36  */
37 
38 /** @addtogroup PERIPHERAL Peripheral Driver
39  * @{
40  */
41 
42 /** @addtogroup APP_DRIVER APP DRIVER
43  * @{
44  */
45 
46 /** @defgroup APP_DRIVER_CONFIG DRIVER CONFIG
47  * @brief APP DRIVER CONFIG
48  * @{
49  */
50 
51 
52 #ifndef _APP_DRV_CONFIG_H_
53 #define _APP_DRV_CONFIG_H_
54 
55 #include "custom_config.h"
56 
57 #ifdef __cplusplus
58 extern "C" {
59 #endif
60 
61 #define APP_DRIVER_GR551X 0x0 /**< APP_DRIVER for GR551X */
62 #define APP_DRIVER_GR5525X 0x1 /**< APP_DRIVER for GR5525X */
63 #define APP_DRIVER_GR5526X 0x2 /**< APP_DRIVER for GR5526X */
64 #define APP_DRIVER_GR5332X 0x3 /**< APP_DRIVER for GR5332X */
65 
66 #ifdef SOC_GR5515
67 #define APP_DRIVER_CHIP_TYPE APP_DRIVER_GR551X /**< GR5515 chip type*/
68 #define SOC_GPIO_PINS_MAX (32) /**< GR5515 max gpio pins */
69 #define SOC_AON_PINS_MAX (8) /**< GR5515 max aon pins */
70 #elif defined(SOC_GR5525)
71 #define APP_DRIVER_CHIP_TYPE APP_DRIVER_GR5525X /**< GR5525 chip type*/
72 #define SOC_GPIO_PINS_MAX (32) /**< GR5525 max gpio pins */
73 #define SOC_AON_PINS_MAX (8) /**< GR5525 max aon pins */
74 #elif defined(SOC_GR5526)
75 #define APP_DRIVER_CHIP_TYPE APP_DRIVER_GR5526X /**< GR5526 chip type*/
76 #define SOC_GPIO_PINS_MAX (34) /**< GR5526 max gpio pins */
77 #define SOC_AON_PINS_MAX (8) /**< GR5526 max aon pins */
78 #elif defined(SOC_GR5332)
79 #define APP_DRIVER_CHIP_TYPE APP_DRIVER_GR5332X /**< GR5332 chip type*/
80 #define SOC_GPIO_PINS_MAX (14) /**< GR5332 max gpio pins */
81 #define SOC_AON_PINS_MAX (8) /**< GR5332 max aon pins */
82 #endif
83 
84 /**
85  * @defgroup APP_DRV_PERIPHERAL_PRIORITY_DEFINE Defines
86  * @{
87  */
88 /**@brief APP driver peripheral priority define. */
89 #ifndef APP_DRIVER_ADC_WAPEUP_PRIORITY
90 #define APP_DRIVER_ADC_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< ADC Wakeup priority High */
91 #endif
92 
93 #ifndef APP_DRIVER_AES_WAPEUP_PRIORITY
94 #define APP_DRIVER_AES_WAPEUP_PRIORITY WAPEUP_PRIORITY_MID /**< AES Wakeup priority Mid */
95 #endif
96 
97 #ifndef APP_DRIVER_COMP_WAPEUP_PRIORITY
98 #define APP_DRIVER_COMP_WAPEUP_PRIORITY WAPEUP_PRIORITY_LOW /**< COMP Wakeup priority Low */
99 #endif
100 
101 #ifndef APP_DRIVER_DUAL_TIM_WAPEUP_PRIORITY
102 #define APP_DRIVER_DUAL_TIM_WAPEUP_PRIORITY WAPEUP_PRIORITY_MID /**< DUAL TIM Wakeup priority Mid */
103 #endif
104 
105 #ifndef APP_DRIVER_DMA_WAPEUP_PRIORITY
106 #define APP_DRIVER_DMA_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< DMA Wakeup priority High */
107 #endif
108 
109 #ifndef APP_DRIVER_GPIOTE_WAPEUP_PRIORITY
110 #define APP_DRIVER_GPIOTE_WAPEUP_PRIORITY WAPEUP_PRIORITY_LOW /**< GPIOTE Wakeup priority Low */
111 #endif
112 
113 #ifndef APP_DRIVER_SYSTICK_WAPEUP_PRIORITY
114 #define APP_DRIVER_SYSTICK_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< SysTick Wakeup priority High */
115 #endif
116 
117 #ifndef APP_DRIVER_UART_WAPEUP_PRIORITY
118 #define APP_DRIVER_UART_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< Uart Wakeup priority High */
119 #endif
120 
121 #ifndef APP_DRIVER_HMAC_WAPEUP_PRIORITY
122 #define APP_DRIVER_HMAC_WAPEUP_PRIORITY WAPEUP_PRIORITY_MID /**< Hmac Wakeup priority Mid */
123 #endif
124 
125 #ifndef APP_DRIVER_I2C_WAPEUP_PRIORITY
126 #define APP_DRIVER_I2C_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< I2C Wakeup priority High */
127 #endif
128 
129 #ifndef APP_DRIVER_I2S_WAPEUP_PRIORITY
130 #define APP_DRIVER_I2S_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< I2S Wakeup priority High */
131 #endif
132 
133 #ifndef APP_DRIVER_QSPI_WAPEUP_PRIORITY
134 #define APP_DRIVER_QSPI_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< QSPI Wakeup priority High */
135 #endif
136 
137 #ifndef APP_DRIVER_RNG_WAPEUP_PRIORITY
138 #define APP_DRIVER_RNG_WAPEUP_PRIORITY WAPEUP_PRIORITY_MID /**< RNG Wakeup priority Mid */
139 #endif
140 
141 #ifndef APP_DRIVER_SPI_WAPEUP_PRIORITY
142 #define APP_DRIVER_SPI_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< SPI Wakeup priority High */
143 #endif
144 
145 #ifndef APP_DRIVER_TIM_WAPEUP_PRIORITY
146 #define APP_DRIVER_TIM_WAPEUP_PRIORITY WAPEUP_PRIORITY_MID /**< TIM Wakeup priority Mid */
147 #endif
148 
149 #ifndef APP_DRIVER_PWM_WAPEUP_PRIORITY
150 #define APP_DRIVER_PWM_WAPEUP_PRIORITY WAPEUP_PRIORITY_MID /**< PWM Wakeup priority Mid */
151 #endif
152 
153 #ifndef APP_DRIVER_ISO7816_WAPEUP_PRIORITY
154 #define APP_DRIVER_ISO7816_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< ISO7816 Wakeup priority High */
155 #endif
156 
157 #ifndef APP_DRIVER_PKC_WAPEUP_PRIORITY
158 #define APP_DRIVER_PKC_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< PKC Wakeup priority High */
159 #endif
160 
161 #if (APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5526X || APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5525X)
162 #ifndef APP_DRIVER_DSPI_WAPEUP_PRIORITY
163 #define APP_DRIVER_DSPI_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< DSPI Wakeup priority High */
164 #endif
165 
166 #ifndef APP_DRIVER_PDM_WAPEUP_PRIORITY
167 #define APP_DRIVER_PDM_WAPEUP_PRIORITY WAPEUP_PRIORITY_HIGH /**< PDM Wakeup priority High */
168 #endif
169 #endif
170 
171 /**@} */
172 
173 
174 /**@addtogroup APP_DRV_WAPEUP_PRIORITY_ENUM Enumerations
175  * @{
176  */
177 /**@brief APP driver peripheral wakeup priority define. */
178 typedef enum
179 {
180  WAPEUP_PRIORITY_LOW = 1, /**< Wakeup priority low */
181  WAPEUP_PRIORITY_MID, /**< Wakeup priority mid */
182  WAPEUP_PRIORITY_HIGH /**< Wakeup priority high */
184 /** @} */
185 
186 #ifndef APP_DRIVER_WAKEUP_CALL_FUN
187 //#define APP_DRIVER_WAKEUP_CALL_FUN
188 #endif
189 
190 #ifdef __cplusplus
191 }
192 #endif
193 
194 #endif
195 
196 /** @} */
197 /** @} */
198 /** @} */
199 
WAPEUP_PRIORITY_LOW
@ WAPEUP_PRIORITY_LOW
Wakeup priority low.
Definition: app_drv_config.h:180
wakeup_priority_t
wakeup_priority_t
APP driver peripheral wakeup priority define.
Definition: app_drv_config.h:179
WAPEUP_PRIORITY_MID
@ WAPEUP_PRIORITY_MID
Wakeup priority mid.
Definition: app_drv_config.h:181
WAPEUP_PRIORITY_HIGH
@ WAPEUP_PRIORITY_HIGH
Wakeup priority high.
Definition: app_drv_config.h:182