qmk

QMK Firmware
git clone git://git.z3bra.org/qmk.git
Log | Files | Refs | Submodules | LICENSE

halconf.h (10663B)


      1 /*
      2     ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
      3 
      4     Licensed under the Apache License, Version 2.0 (the "License");
      5     you may not use this file except in compliance with the License.
      6     You may obtain a copy of the License at
      7 
      8         http://www.apache.org/licenses/LICENSE-2.0
      9 
     10     Unless required by applicable law or agreed to in writing, software
     11     distributed under the License is distributed on an "AS IS" BASIS,
     12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13     See the License for the specific language governing permissions and
     14     limitations under the License.
     15 */
     16 
     17 /**
     18  * @file    templates/halconf.h
     19  * @brief   HAL configuration header.
     20  * @details HAL configuration file, this file allows to enable or disable the
     21  *          various device drivers from your application. You may also use
     22  *          this file in order to override the device drivers default settings.
     23  *
     24  * @addtogroup HAL_CONF
     25  * @{
     26  */
     27 
     28 #ifndef _HALCONF_H_
     29 #define _HALCONF_H_
     30 
     31 #include "mcuconf.h"
     32 
     33 /**
     34  * @brief   Enables the PAL subsystem.
     35  */
     36 #if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
     37 #define HAL_USE_PAL                 TRUE
     38 #endif
     39 
     40 /**
     41  * @brief   Enables the ADC subsystem.
     42  */
     43 #if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
     44 #define HAL_USE_ADC                 FALSE
     45 #endif
     46 
     47 /**
     48  * @brief   Enables the CAN subsystem.
     49  */
     50 #if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
     51 #define HAL_USE_CAN                 FALSE
     52 #endif
     53 
     54 /**
     55  * @brief   Enables the DAC subsystem.
     56  */
     57 #if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
     58 #define HAL_USE_DAC                 FALSE
     59 #endif
     60 
     61 /**
     62  * @brief   Enables the EXT subsystem.
     63  */
     64 #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
     65 #define HAL_USE_EXT                 FALSE
     66 #endif
     67 
     68 /**
     69  * @brief   Enables the GPT subsystem.
     70  */
     71 #if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
     72 #define HAL_USE_GPT                 FALSE
     73 #endif
     74 
     75 /**
     76  * @brief   Enables the I2C subsystem.
     77  */
     78 #if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
     79 #define HAL_USE_I2C                 FALSE
     80 #endif
     81 
     82 /**
     83  * @brief   Enables the I2S subsystem.
     84  */
     85 #if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
     86 #define HAL_USE_I2S                 FALSE
     87 #endif
     88 
     89 /**
     90  * @brief   Enables the ICU subsystem.
     91  */
     92 #if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
     93 #define HAL_USE_ICU                 FALSE
     94 #endif
     95 
     96 /**
     97  * @brief   Enables the MAC subsystem.
     98  */
     99 #if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
    100 #define HAL_USE_MAC                 FALSE
    101 #endif
    102 
    103 /**
    104  * @brief   Enables the MMC_SPI subsystem.
    105  */
    106 #if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
    107 #define HAL_USE_MMC_SPI             FALSE
    108 #endif
    109 
    110 /**
    111  * @brief   Enables the PWM subsystem.
    112  */
    113 #if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
    114 #define HAL_USE_PWM                 TRUE
    115 #endif
    116 
    117 /**
    118  * @brief   Enables the RTC subsystem.
    119  */
    120 #if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
    121 #define HAL_USE_RTC                 FALSE
    122 #endif
    123 
    124 /**
    125  * @brief   Enables the SDC subsystem.
    126  */
    127 #if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
    128 #define HAL_USE_SDC                 FALSE
    129 #endif
    130 
    131 /**
    132  * @brief   Enables the SERIAL subsystem.
    133  */
    134 #if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
    135 #define HAL_USE_SERIAL              FALSE
    136 #endif
    137 
    138 /**
    139  * @brief   Enables the SERIAL over USB subsystem.
    140  */
    141 #if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
    142 #define HAL_USE_SERIAL_USB          FALSE
    143 #endif
    144 
    145 /**
    146  * @brief   Enables the SPI subsystem.
    147  */
    148 #if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
    149 #define HAL_USE_SPI                 TRUE
    150 #endif
    151 
    152 /**
    153  * @brief   Enables the UART subsystem.
    154  */
    155 #if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
    156 #define HAL_USE_UART                FALSE
    157 #endif
    158 
    159 /**
    160  * @brief   Enables the USB subsystem.
    161  */
    162 #if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
    163 #define HAL_USE_USB                 TRUE
    164 #endif
    165 
    166 /**
    167  * @brief   Enables the WDG subsystem.
    168  */
    169 #if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
    170 #define HAL_USE_WDG                 FALSE
    171 #endif
    172 
    173 /*===========================================================================*/
    174 /* ADC driver related settings.                                              */
    175 /*===========================================================================*/
    176 
    177 /**
    178  * @brief   Enables synchronous APIs.
    179  * @note    Disabling this option saves both code and data space.
    180  */
    181 #if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
    182 #define ADC_USE_WAIT                TRUE
    183 #endif
    184 
    185 /**
    186  * @brief   Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
    187  * @note    Disabling this option saves both code and data space.
    188  */
    189 #if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
    190 #define ADC_USE_MUTUAL_EXCLUSION    TRUE
    191 #endif
    192 
    193 /*===========================================================================*/
    194 /* CAN driver related settings.                                              */
    195 /*===========================================================================*/
    196 
    197 /**
    198  * @brief   Sleep mode related APIs inclusion switch.
    199  */
    200 #if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
    201 #define CAN_USE_SLEEP_MODE          TRUE
    202 #endif
    203 
    204 /*===========================================================================*/
    205 /* I2C driver related settings.                                              */
    206 /*===========================================================================*/
    207 
    208 /**
    209  * @brief   Enables the mutual exclusion APIs on the I2C bus.
    210  */
    211 #if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
    212 #define I2C_USE_MUTUAL_EXCLUSION    TRUE
    213 #endif
    214 
    215 /*===========================================================================*/
    216 /* MAC driver related settings.                                              */
    217 /*===========================================================================*/
    218 
    219 /**
    220  * @brief   Enables an event sources for incoming packets.
    221  */
    222 #if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
    223 #define MAC_USE_ZERO_COPY           FALSE
    224 #endif
    225 
    226 /**
    227  * @brief   Enables an event sources for incoming packets.
    228  */
    229 #if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
    230 #define MAC_USE_EVENTS              TRUE
    231 #endif
    232 
    233 /*===========================================================================*/
    234 /* MMC_SPI driver related settings.                                          */
    235 /*===========================================================================*/
    236 
    237 /**
    238  * @brief   Delays insertions.
    239  * @details If enabled this options inserts delays into the MMC waiting
    240  *          routines releasing some extra CPU time for the threads with
    241  *          lower priority, this may slow down the driver a bit however.
    242  *          This option is recommended also if the SPI driver does not
    243  *          use a DMA channel and heavily loads the CPU.
    244  */
    245 #if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
    246 #define MMC_NICE_WAITING            TRUE
    247 #endif
    248 
    249 /*===========================================================================*/
    250 /* SDC driver related settings.                                              */
    251 /*===========================================================================*/
    252 
    253 /**
    254  * @brief   Number of initialization attempts before rejecting the card.
    255  * @note    Attempts are performed at 10mS intervals.
    256  */
    257 #if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
    258 #define SDC_INIT_RETRY              100
    259 #endif
    260 
    261 /**
    262  * @brief   Include support for MMC cards.
    263  * @note    MMC support is not yet implemented so this option must be kept
    264  *          at @p FALSE.
    265  */
    266 #if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
    267 #define SDC_MMC_SUPPORT             FALSE
    268 #endif
    269 
    270 /**
    271  * @brief   Delays insertions.
    272  * @details If enabled this options inserts delays into the MMC waiting
    273  *          routines releasing some extra CPU time for the threads with
    274  *          lower priority, this may slow down the driver a bit however.
    275  */
    276 #if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
    277 #define SDC_NICE_WAITING            TRUE
    278 #endif
    279 
    280 /*===========================================================================*/
    281 /* SERIAL driver related settings.                                           */
    282 /*===========================================================================*/
    283 
    284 /**
    285  * @brief   Default bit rate.
    286  * @details Configuration parameter, this is the baud rate selected for the
    287  *          default configuration.
    288  */
    289 #if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
    290 #define SERIAL_DEFAULT_BITRATE      38400
    291 #endif
    292 
    293 /**
    294  * @brief   Serial buffers size.
    295  * @details Configuration parameter, you can change the depth of the queue
    296  *          buffers depending on the requirements of your application.
    297  * @note    The default is 64 bytes for both the transmission and receive
    298  *          buffers.
    299  */
    300 #if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
    301 #define SERIAL_BUFFERS_SIZE         16
    302 #endif
    303 
    304 /*===========================================================================*/
    305 /* SERIAL_USB driver related setting.                                        */
    306 /*===========================================================================*/
    307 
    308 /**
    309  * @brief   Serial over USB buffers size.
    310  * @details Configuration parameter, the buffer size must be a multiple of
    311  *          the USB data endpoint maximum packet size.
    312  * @note    The default is 64 bytes for both the transmission and receive
    313  *          buffers.
    314  */
    315 #if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
    316 #define SERIAL_USB_BUFFERS_SIZE     1
    317 #endif
    318 
    319 /*===========================================================================*/
    320 /* SPI driver related settings.                                              */
    321 /*===========================================================================*/
    322 
    323 /**
    324  * @brief   Enables synchronous APIs.
    325  * @note    Disabling this option saves both code and data space.
    326  */
    327 #if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
    328 #define SPI_USE_WAIT                TRUE
    329 #endif
    330 
    331 /**
    332  * @brief   Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
    333  * @note    Disabling this option saves both code and data space.
    334  */
    335 #if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
    336 #define SPI_USE_MUTUAL_EXCLUSION    TRUE
    337 #endif
    338 
    339 /*===========================================================================*/
    340 /* USB driver related settings.                                              */
    341 /*===========================================================================*/
    342 
    343 /**
    344  * @brief   Enables synchronous APIs.
    345  * @note    Disabling this option saves both code and data space.
    346  */
    347 #if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
    348 #define USB_USE_WAIT                TRUE
    349 #endif
    350 
    351 #endif /* _HALCONF_H_ */
    352 
    353 /** @} */