aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2018-03-17 09:03:27 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2018-03-17 09:03:27 +0000
commit5806f29b87e6d94957c907de200e6cdbe49aea78 (patch)
treea5916c512460bf0fa9bb1293870d7ef1d5146637
parent946ea7eb8ee1d136933321a84e96d23324342c73 (diff)
downloadChibiOS-5806f29b87e6d94957c907de200e6cdbe49aea78.tar.gz
ChibiOS-5806f29b87e6d94957c907de200e6cdbe49aea78.tar.bz2
ChibiOS-5806f29b87e6d94957c907de200e6cdbe49aea78.zip
New halconf.h template.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11788 110e8d01-0319-4d1e-a829-52ad28d1bb01
-rw-r--r--demos/ATSAMA5D2/RT-SAMA-LWIP-WOLFSSL/cfg/halconf.h7
-rw-r--r--demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP-HTTP-CLIENT/cfg/halconf.h169
-rw-r--r--demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP/cfg/halconf.h7
-rw-r--r--demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC-LWIP/cfg/halconf.h7
-rw-r--r--demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/halconf.h169
-rw-r--r--demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-SEC/halconf.h7
-rw-r--r--demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED/halconf.h7
-rw-r--r--demos/AVR/NIL-ARDUINO-MEGA/halconf.h7
-rw-r--r--demos/AVR/NIL-ARDUINO-MINI/halconf.h7
-rw-r--r--demos/AVR/NIL-ARDUINO-NANO/halconf.h7
-rw-r--r--demos/AVR/NIL-ARDUINO-UNO/halconf.h7
-rw-r--r--demos/AVR/NIL-DIGISPARK-ATTINY-167/halconf.h7
-rw-r--r--demos/AVR/NIL-MT-DB-X4/halconf.h7
-rw-r--r--demos/AVR/RT-ARDUINO-LEONARDO/halconf.h7
-rw-r--r--demos/AVR/RT-ARDUINO-MEGA/halconf.h7
-rw-r--r--demos/AVR/RT-ARDUINO-MINI/halconf.h7
-rw-r--r--demos/AVR/RT-ARDUINO-NANO/halconf.h7
-rw-r--r--demos/AVR/RT-ARDUINO-UNO/halconf.h7
-rw-r--r--demos/AVR/RT-DIGISPARK-ATTINY-167/halconf.h7
-rw-r--r--demos/AVR/RT-MT-DB-X4/halconf.h7
-rw-r--r--demos/AVR/RT-PRO-MICRO/halconf.h7
-rw-r--r--demos/AVR/RT-TEENSY2-USB/halconf.h7
-rw-r--r--demos/AVR/TEST-SUITE-NIL/halconf.h7
-rw-r--r--demos/AVR/TEST-SUITE-OSLIB/halconf.h7
-rw-r--r--demos/AVR/TEST-SUITE-RT/halconf.h7
-rw-r--r--demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h7
-rw-r--r--demos/SPC5/NIL-SPC560D-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC560B-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC560D-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC560P-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC563M-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC564A-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC56EC-EVB/halconf.h7
-rw-r--r--demos/SPC5/RT-SPC56EL-EVB/halconf.h7
-rw-r--r--demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NASA-OSAL-STM32F407-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NASA-OSAL-STM32F746G-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32F746G-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32L011K4-NUCLEO32/halconf.h7
-rw-r--r--demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32-LWIP-FATFS-USB-HTTPS/cfg-stm32f746_discovery/halconf.h7
-rw-r--r--demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f107_goldbull/halconf.h7
-rw-r--r--demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f407_olimex/halconf.h7
-rw-r--r--demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f746_discovery/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F030R8-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F051-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F070RB-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F072-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F072RB-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F091RC-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F100-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h7
-rwxr-xr-xdemos/STM32/RT-STM32F103-OLIMEX_STM32_P103-FATFS/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F103-STM3210E_EVAL-FATFS-USB/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F103RB-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F107-OLIMEX_P107-LWIP/cfg/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F207-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F207ZG-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F302R8-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F303-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F303RE-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F303ZE-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F334-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F334R8-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F401RE-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F407-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F410RB-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F411RE-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F412ZG-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F429-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F429ZI-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F446RE-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F446ZE-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F469I-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F722ZE-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F746ZG-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F767ZI-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32F769I-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32H743I-NUCLEO144/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L031K6-NUCLEO32/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L053-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L053R8-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L073RZ-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L152-DISCOVERY/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L152RE-NUCLEO64/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L432KC-NUCLEO32/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L476-DISCOVERY/cfg/halconf.h7
-rw-r--r--demos/STM32/RT-STM32L476RG-NUCLEO64/halconf.h7
-rwxr-xr-xdemos/various/RT-Posix-Simulator/halconf.h7
-rw-r--r--demos/various/RT-Win32-Simulator/halconf.h7
-rw-r--r--os/hal/include/hal_can.h13
-rw-r--r--os/hal/templates/halconf.h7
-rw-r--r--test/rt/testbuild/halconf.h7
-rw-r--r--testex/STM32/STM32F3xx/I2C-LSM303DLHC/halconf.h7
-rw-r--r--testex/STM32/STM32F3xx/SPI-L3GD20/halconf.h7
-rw-r--r--testex/STM32/STM32F3xx/SPI-N25Q128/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-BMP085/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-HTS221/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-LIS3MLD/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-LPS22HB/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-LPS25H/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-LSM303AGR/halconf.h185
-rw-r--r--testex/STM32/STM32F4xx/I2C-LSM303DLHC/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-LSM6DS0/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/I2C-LSM6DSL/halconf.h185
-rw-r--r--testex/STM32/STM32F4xx/SPI-L3GD20/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/SPI-LIS302DL/halconf.h7
-rw-r--r--testex/STM32/STM32F4xx/SPI-LIS3DSH/halconf.h7
-rw-r--r--testex/STM32/STM32L4xx/QSPI-N25Q128/halconf.h7
-rw-r--r--testex/STM32/STM32L4xx/SPI-L3GD20/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/FLEX-SPI/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/MATRIX/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/RTC/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/SDMMC/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/SECUMOD/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/SERIAL/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/SPI/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/TC/halconf.h7
-rw-r--r--testhal/ATSAMA5D2/UART/halconf.h7
-rw-r--r--testhal/AVR/MEGA/ADC/halconf.h7
-rw-r--r--testhal/AVR/MEGA/EXT/halconf.h7
-rw-r--r--testhal/AVR/MEGA/GPT/halconf.h7
-rw-r--r--testhal/AVR/MEGA/I2C/halconf.h7
-rw-r--r--testhal/AVR/MEGA/ICU/halconf.h7
-rw-r--r--testhal/AVR/MEGA/PWM/halconf.h7
-rw-r--r--testhal/AVR/MEGA/SPI/halconf.h7
-rw-r--r--testhal/AVR/XMEGA/SERIAL/halconf.h7
-rw-r--r--testhal/AVR/XMEGA/TEST-SUITE-OSLIB/halconf.h7
-rw-r--r--testhal/AVR/XMEGA/USART/halconf.h7
-rw-r--r--testhal/AVR/XMEGA/WDT/halconf.h7
-rw-r--r--testhal/AVR/multi/PAL/cfg/arduino_mega/halconf.h7
-rw-r--r--testhal/AVR/multi/PAL/cfg/arduino_mini/halconf.h7
-rw-r--r--testhal/AVR/multi/PAL/cfg/arduino_nano/halconf.h7
-rw-r--r--testhal/AVR/multi/PAL/cfg/arduino_uno/halconf.h7
-rw-r--r--testhal/STM32/STM32F0xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F0xx/CAN/halconf.h7
-rw-r--r--testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F0xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F0xx/USB_CDC/halconf.h7
-rw-r--r--testhal/STM32/STM32F0xx/WDG/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/CAN/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/I2C/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/RTC/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/SPI/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/UART/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/USB_CDC/halconf.h7
-rw-r--r--testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h7
-rw-r--r--testhal/STM32/STM32F2xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F2xx/USB_CDC/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/CAN/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/I2C/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/SDADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/SPI/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/UART/halconf.h7
-rw-r--r--testhal/STM32/STM32F37x/USB_CDC/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/ADC_DUAL/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/CAN/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/DAC/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/USB_CDC_IAD/halconf.h7
-rw-r--r--testhal/STM32/STM32F3xx/WDG/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/CAN/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/DAC/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/DMA_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/GPT/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/I2S/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/RTC/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/SDC/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h7
-rw-r--r--testhal/STM32/STM32F4xx/WDG/halconf.h7
-rw-r--r--testhal/STM32/STM32F7xx/GPT-ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32F7xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32F7xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32F7xx/SPI/halconf.h7
-rw-r--r--testhal/STM32/STM32F7xx/USB_RAW/halconf.h7
-rw-r--r--testhal/STM32/STM32L0xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32L0xx/SPI/halconf.h7
-rw-r--r--testhal/STM32/STM32L0xx/USB_CDC/halconf.h7
-rw-r--r--testhal/STM32/STM32L1xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32L1xx/DAC/halconf.h7
-rw-r--r--testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/STM32L1xx/PWM-ICU/halconf.h7
-rw-r--r--testhal/STM32/STM32L1xx/SPI/halconf.h7
-rw-r--r--testhal/STM32/STM32L1xx/UART/halconf.h7
-rw-r--r--testhal/STM32/STM32L4xx/ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32L4xx/CAN/halconf.h7
-rw-r--r--testhal/STM32/STM32L4xx/GPT-ADC/halconf.h7
-rw-r--r--testhal/STM32/STM32L4xx/IRQ_STORM/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f051_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f103_olimex/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f303_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f373_eval/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f407_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f429_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32f746_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32l053_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32l151_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/PAL/cfg/stm32l476_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/QSPI-MFS/cfg/stm32l476_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/SPI/cfg/stm32f091_nucleo64/halconf.h7
-rw-r--r--testhal/STM32/multi/SPI/cfg/stm32f303_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/SPI/cfg/stm32f407_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/SPI/cfg/stm32h743_nucleo144/halconf.h7
-rw-r--r--testhal/STM32/multi/UART/cfg/stm32f091_nucleo64/halconf.h7
-rw-r--r--testhal/STM32/multi/UART/cfg/stm32f303_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/UART/cfg/stm32f407_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/UART/cfg/stm32f746_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/USB_CDC/cfg/stm32f303_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/USB_CDC/cfg/stm32f407_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/USB_CDC/cfg/stm32f746_discovery/halconf.h7
-rw-r--r--testhal/STM32/multi/USB_CDC/cfg/stm32l476_discovery/halconf.h7
-rw-r--r--tools/ftl/processors/conf/halconf/halconf.h.ftl7
239 files changed, 2184 insertions, 175 deletions
diff --git a/demos/ATSAMA5D2/RT-SAMA-LWIP-WOLFSSL/cfg/halconf.h b/demos/ATSAMA5D2/RT-SAMA-LWIP-WOLFSSL/cfg/halconf.h
index b3656a502..155b10f51 100644
--- a/demos/ATSAMA5D2/RT-SAMA-LWIP-WOLFSSL/cfg/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA-LWIP-WOLFSSL/cfg/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP-HTTP-CLIENT/cfg/halconf.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP-HTTP-CLIENT/cfg/halconf.h
index 195a5198b..77678c070 100644
--- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP-HTTP-CLIENT/cfg/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP-HTTP-CLIENT/cfg/halconf.h
@@ -28,160 +28,163 @@
#ifndef HALCONF_H
#define HALCONF_H
+#define _CHIBIOS_HAL_CONF_
+#define _CHIBIOS_HAL_CONF_VER_6_0_
+
#include "mcuconf.h"
/**
* @brief Enables the PAL subsystem.
*/
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-#define HAL_USE_PAL TRUE
+#define HAL_USE_PAL TRUE
#endif
/**
* @brief Enables the ADC subsystem.
*/
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-#define HAL_USE_ADC FALSE
+#define HAL_USE_ADC FALSE
#endif
/**
* @brief Enables the CAN subsystem.
*/
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-#define HAL_USE_CAN FALSE
+#define HAL_USE_CAN FALSE
#endif
/**
* @brief Enables the cryptographic subsystem.
*/
#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-#define HAL_USE_CRY FALSE
+#define HAL_USE_CRY FALSE
#endif
/**
* @brief Enables the DAC subsystem.
*/
#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-#define HAL_USE_DAC FALSE
+#define HAL_USE_DAC FALSE
#endif
/**
* @brief Enables the EXT subsystem.
*/
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
-#define HAL_USE_EXT FALSE
+#define HAL_USE_EXT FALSE
#endif
/**
* @brief Enables the GPT subsystem.
*/
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-#define HAL_USE_GPT FALSE
+#define HAL_USE_GPT FALSE
#endif
/**
* @brief Enables the I2C subsystem.
*/
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-#define HAL_USE_I2C FALSE
+#define HAL_USE_I2C FALSE
#endif
/**
* @brief Enables the I2S subsystem.
*/
#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-#define HAL_USE_I2S FALSE
+#define HAL_USE_I2S FALSE
#endif
/**
* @brief Enables the ICU subsystem.
*/
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-#define HAL_USE_ICU FALSE
+#define HAL_USE_ICU FALSE
#endif
/**
* @brief Enables the MAC subsystem.
*/
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-#define HAL_USE_MAC TRUE
+#define HAL_USE_MAC TRUE
#endif
/**
* @brief Enables the MMC_SPI subsystem.
*/
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_MMC_SPI FALSE
+#define HAL_USE_MMC_SPI FALSE
#endif
/**
* @brief Enables the PWM subsystem.
*/
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-#define HAL_USE_PWM FALSE
+#define HAL_USE_PWM FALSE
#endif
/**
* @brief Enables the QSPI subsystem.
*/
#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
-#define HAL_USE_QSPI FALSE
+#define HAL_USE_QSPI FALSE
#endif
/**
* @brief Enables the RTC subsystem.
*/
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-#define HAL_USE_RTC FALSE
+#define HAL_USE_RTC FALSE
#endif
/**
* @brief Enables the SDC subsystem.
*/
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-#define HAL_USE_SDC FALSE
+#define HAL_USE_SDC FALSE
#endif
/**
* @brief Enables the SERIAL subsystem.
*/
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL TRUE
+#define HAL_USE_SERIAL TRUE
#endif
/**
* @brief Enables the SERIAL over USB subsystem.
*/
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL_USB FALSE
+#define HAL_USE_SERIAL_USB FALSE
#endif
/**
* @brief Enables the SPI subsystem.
*/
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_SPI FALSE
+#define HAL_USE_SPI FALSE
#endif
/**
* @brief Enables the UART subsystem.
*/
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-#define HAL_USE_UART FALSE
+#define HAL_USE_UART FALSE
#endif
/**
* @brief Enables the USB subsystem.
*/
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-#define HAL_USE_USB FALSE
+#define HAL_USE_USB FALSE
#endif
/**
* @brief Enables the WDG subsystem.
*/
#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-#define HAL_USE_WDG FALSE
+#define HAL_USE_WDG FALSE
#endif
/*===========================================================================*/
@@ -193,7 +196,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-#define PAL_USE_CALLBACKS FALSE
+#define PAL_USE_CALLBACKS FALSE
#endif
/**
@@ -201,7 +204,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-#define PAL_USE_WAIT FALSE
+#define PAL_USE_WAIT FALSE
#endif
/*===========================================================================*/
@@ -213,7 +216,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-#define ADC_USE_WAIT TRUE
+#define ADC_USE_WAIT TRUE
#endif
/**
@@ -221,7 +224,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define ADC_USE_MUTUAL_EXCLUSION TRUE
+#define ADC_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -232,7 +235,14 @@
* @brief Sleep mode related APIs inclusion switch.
*/
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-#define CAN_USE_SLEEP_MODE TRUE
+#define CAN_USE_SLEEP_MODE TRUE
+#endif
+
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
#endif
/*===========================================================================*/
@@ -258,6 +268,26 @@
#endif
/*===========================================================================*/
+/* DAC driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
+#define DAC_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define DAC_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/*===========================================================================*/
/* I2C driver related settings. */
/*===========================================================================*/
@@ -265,7 +295,7 @@
* @brief Enables the mutual exclusion APIs on the I2C bus.
*/
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define I2C_USE_MUTUAL_EXCLUSION TRUE
+#define I2C_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -273,17 +303,17 @@
/*===========================================================================*/
/**
- * @brief Enables an event sources for incoming packets.
+ * @brief Enables the zero-copy API.
*/
#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-#define MAC_USE_ZERO_COPY FALSE
+#define MAC_USE_ZERO_COPY FALSE
#endif
/**
* @brief Enables an event sources for incoming packets.
*/
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-#define MAC_USE_EVENTS TRUE
+#define MAC_USE_EVENTS TRUE
#endif
/*===========================================================================*/
@@ -299,7 +329,27 @@
* use a DMA channel and heavily loads the CPU.
*/
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-#define MMC_NICE_WAITING TRUE
+#define MMC_NICE_WAITING TRUE
+#endif
+
+/*===========================================================================*/
+/* QSPI driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__)
+#define QSPI_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define QSPI_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -311,7 +361,7 @@
* @note Attempts are performed at 10mS intervals.
*/
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-#define SDC_INIT_RETRY 100
+#define SDC_INIT_RETRY 100
#endif
/**
@@ -320,7 +370,7 @@
* at @p FALSE.
*/
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-#define SDC_MMC_SUPPORT FALSE
+#define SDC_MMC_SUPPORT FALSE
#endif
/**
@@ -330,7 +380,21 @@
* lower priority, this may slow down the driver a bit however.
*/
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-#define SDC_NICE_WAITING TRUE
+#define SDC_NICE_WAITING TRUE
+#endif
+
+/**
+ * @brief OCR initialization constant for V20 cards.
+ */
+#if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR_V20 0x50FF8000U
+#endif
+
+/**
+ * @brief OCR initialization constant for non-V20 cards.
+ */
+#if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR 0x80100000U
#endif
/*===========================================================================*/
@@ -343,7 +407,7 @@
* default configuration.
*/
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-#define SERIAL_DEFAULT_BITRATE 38400
+#define SERIAL_DEFAULT_BITRATE 38400
#endif
/**
@@ -354,7 +418,7 @@
* buffers.
*/
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_BUFFERS_SIZE 16
+#define SERIAL_BUFFERS_SIZE 16
#endif
/*===========================================================================*/
@@ -369,7 +433,7 @@
* buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_SIZE 256
+#define SERIAL_USB_BUFFERS_SIZE 256
#endif
/**
@@ -377,7 +441,7 @@
* @note The default is 2 buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_NUMBER 2
+#define SERIAL_USB_BUFFERS_NUMBER 2
#endif
/*===========================================================================*/
@@ -389,15 +453,32 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-#define SPI_USE_WAIT TRUE
+#define SPI_USE_WAIT TRUE
#endif
/**
+ * @brief Enables circular transfers APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
+#define SPI_USE_CIRCULAR FALSE
+#endif
+
+
+/**
* @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/**
+ * @brief Handling method for SPI CS line.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
+#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
#endif
/*===========================================================================*/
@@ -409,7 +490,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-#define UART_USE_WAIT FALSE
+#define UART_USE_WAIT FALSE
#endif
/**
@@ -417,7 +498,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define UART_USE_MUTUAL_EXCLUSION FALSE
+#define UART_USE_MUTUAL_EXCLUSION FALSE
#endif
/*===========================================================================*/
@@ -429,7 +510,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-#define USB_USE_WAIT FALSE
+#define USB_USE_WAIT FALSE
#endif
#endif /* HALCONF_H */
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP/cfg/halconf.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP/cfg/halconf.h
index b3656a502..155b10f51 100644
--- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP/cfg/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-LWIP/cfg/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC-LWIP/cfg/halconf.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC-LWIP/cfg/halconf.h
index bbd8348b7..77678c070 100644
--- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC-LWIP/cfg/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC-LWIP/cfg/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/halconf.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/halconf.h
index 195a5198b..77678c070 100644
--- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/halconf.h
@@ -28,160 +28,163 @@
#ifndef HALCONF_H
#define HALCONF_H
+#define _CHIBIOS_HAL_CONF_
+#define _CHIBIOS_HAL_CONF_VER_6_0_
+
#include "mcuconf.h"
/**
* @brief Enables the PAL subsystem.
*/
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-#define HAL_USE_PAL TRUE
+#define HAL_USE_PAL TRUE
#endif
/**
* @brief Enables the ADC subsystem.
*/
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-#define HAL_USE_ADC FALSE
+#define HAL_USE_ADC FALSE
#endif
/**
* @brief Enables the CAN subsystem.
*/
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-#define HAL_USE_CAN FALSE
+#define HAL_USE_CAN FALSE
#endif
/**
* @brief Enables the cryptographic subsystem.
*/
#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-#define HAL_USE_CRY FALSE
+#define HAL_USE_CRY FALSE
#endif
/**
* @brief Enables the DAC subsystem.
*/
#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-#define HAL_USE_DAC FALSE
+#define HAL_USE_DAC FALSE
#endif
/**
* @brief Enables the EXT subsystem.
*/
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
-#define HAL_USE_EXT FALSE
+#define HAL_USE_EXT FALSE
#endif
/**
* @brief Enables the GPT subsystem.
*/
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-#define HAL_USE_GPT FALSE
+#define HAL_USE_GPT FALSE
#endif
/**
* @brief Enables the I2C subsystem.
*/
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-#define HAL_USE_I2C FALSE
+#define HAL_USE_I2C FALSE
#endif
/**
* @brief Enables the I2S subsystem.
*/
#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-#define HAL_USE_I2S FALSE
+#define HAL_USE_I2S FALSE
#endif
/**
* @brief Enables the ICU subsystem.
*/
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-#define HAL_USE_ICU FALSE
+#define HAL_USE_ICU FALSE
#endif
/**
* @brief Enables the MAC subsystem.
*/
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-#define HAL_USE_MAC TRUE
+#define HAL_USE_MAC TRUE
#endif
/**
* @brief Enables the MMC_SPI subsystem.
*/
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_MMC_SPI FALSE
+#define HAL_USE_MMC_SPI FALSE
#endif
/**
* @brief Enables the PWM subsystem.
*/
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-#define HAL_USE_PWM FALSE
+#define HAL_USE_PWM FALSE
#endif
/**
* @brief Enables the QSPI subsystem.
*/
#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
-#define HAL_USE_QSPI FALSE
+#define HAL_USE_QSPI FALSE
#endif
/**
* @brief Enables the RTC subsystem.
*/
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-#define HAL_USE_RTC FALSE
+#define HAL_USE_RTC FALSE
#endif
/**
* @brief Enables the SDC subsystem.
*/
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-#define HAL_USE_SDC FALSE
+#define HAL_USE_SDC FALSE
#endif
/**
* @brief Enables the SERIAL subsystem.
*/
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL TRUE
+#define HAL_USE_SERIAL TRUE
#endif
/**
* @brief Enables the SERIAL over USB subsystem.
*/
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL_USB FALSE
+#define HAL_USE_SERIAL_USB FALSE
#endif
/**
* @brief Enables the SPI subsystem.
*/
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_SPI FALSE
+#define HAL_USE_SPI FALSE
#endif
/**
* @brief Enables the UART subsystem.
*/
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-#define HAL_USE_UART FALSE
+#define HAL_USE_UART FALSE
#endif
/**
* @brief Enables the USB subsystem.
*/
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-#define HAL_USE_USB FALSE
+#define HAL_USE_USB FALSE
#endif
/**
* @brief Enables the WDG subsystem.
*/
#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-#define HAL_USE_WDG FALSE
+#define HAL_USE_WDG FALSE
#endif
/*===========================================================================*/
@@ -193,7 +196,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
-#define PAL_USE_CALLBACKS FALSE
+#define PAL_USE_CALLBACKS FALSE
#endif
/**
@@ -201,7 +204,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
-#define PAL_USE_WAIT FALSE
+#define PAL_USE_WAIT FALSE
#endif
/*===========================================================================*/
@@ -213,7 +216,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-#define ADC_USE_WAIT TRUE
+#define ADC_USE_WAIT TRUE
#endif
/**
@@ -221,7 +224,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define ADC_USE_MUTUAL_EXCLUSION TRUE
+#define ADC_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -232,7 +235,14 @@
* @brief Sleep mode related APIs inclusion switch.
*/
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-#define CAN_USE_SLEEP_MODE TRUE
+#define CAN_USE_SLEEP_MODE TRUE
+#endif
+
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
#endif
/*===========================================================================*/
@@ -258,6 +268,26 @@
#endif
/*===========================================================================*/
+/* DAC driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
+#define DAC_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define DAC_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/*===========================================================================*/
/* I2C driver related settings. */
/*===========================================================================*/
@@ -265,7 +295,7 @@
* @brief Enables the mutual exclusion APIs on the I2C bus.
*/
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define I2C_USE_MUTUAL_EXCLUSION TRUE
+#define I2C_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -273,17 +303,17 @@
/*===========================================================================*/
/**
- * @brief Enables an event sources for incoming packets.
+ * @brief Enables the zero-copy API.
*/
#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-#define MAC_USE_ZERO_COPY FALSE
+#define MAC_USE_ZERO_COPY FALSE
#endif
/**
* @brief Enables an event sources for incoming packets.
*/
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-#define MAC_USE_EVENTS TRUE
+#define MAC_USE_EVENTS TRUE
#endif
/*===========================================================================*/
@@ -299,7 +329,27 @@
* use a DMA channel and heavily loads the CPU.
*/
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-#define MMC_NICE_WAITING TRUE
+#define MMC_NICE_WAITING TRUE
+#endif
+
+/*===========================================================================*/
+/* QSPI driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__)
+#define QSPI_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define QSPI_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -311,7 +361,7 @@
* @note Attempts are performed at 10mS intervals.
*/
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-#define SDC_INIT_RETRY 100
+#define SDC_INIT_RETRY 100
#endif
/**
@@ -320,7 +370,7 @@
* at @p FALSE.
*/
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-#define SDC_MMC_SUPPORT FALSE
+#define SDC_MMC_SUPPORT FALSE
#endif
/**
@@ -330,7 +380,21 @@
* lower priority, this may slow down the driver a bit however.
*/
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-#define SDC_NICE_WAITING TRUE
+#define SDC_NICE_WAITING TRUE
+#endif
+
+/**
+ * @brief OCR initialization constant for V20 cards.
+ */
+#if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR_V20 0x50FF8000U
+#endif
+
+/**
+ * @brief OCR initialization constant for non-V20 cards.
+ */
+#if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR 0x80100000U
#endif
/*===========================================================================*/
@@ -343,7 +407,7 @@
* default configuration.
*/
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-#define SERIAL_DEFAULT_BITRATE 38400
+#define SERIAL_DEFAULT_BITRATE 38400
#endif
/**
@@ -354,7 +418,7 @@
* buffers.
*/
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_BUFFERS_SIZE 16
+#define SERIAL_BUFFERS_SIZE 16
#endif
/*===========================================================================*/
@@ -369,7 +433,7 @@
* buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_SIZE 256
+#define SERIAL_USB_BUFFERS_SIZE 256
#endif
/**
@@ -377,7 +441,7 @@
* @note The default is 2 buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_NUMBER 2
+#define SERIAL_USB_BUFFERS_NUMBER 2
#endif
/*===========================================================================*/
@@ -389,15 +453,32 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-#define SPI_USE_WAIT TRUE
+#define SPI_USE_WAIT TRUE
#endif
/**
+ * @brief Enables circular transfers APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
+#define SPI_USE_CIRCULAR FALSE
+#endif
+
+
+/**
* @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/**
+ * @brief Handling method for SPI CS line.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
+#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
#endif
/*===========================================================================*/
@@ -409,7 +490,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-#define UART_USE_WAIT FALSE
+#define UART_USE_WAIT FALSE
#endif
/**
@@ -417,7 +498,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define UART_USE_MUTUAL_EXCLUSION FALSE
+#define UART_USE_MUTUAL_EXCLUSION FALSE
#endif
/*===========================================================================*/
@@ -429,7 +510,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-#define USB_USE_WAIT FALSE
+#define USB_USE_WAIT FALSE
#endif
#endif /* HALCONF_H */
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-SEC/halconf.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-SEC/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-SEC/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-SEC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED/halconf.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED/halconf.h
+++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/NIL-ARDUINO-MEGA/halconf.h b/demos/AVR/NIL-ARDUINO-MEGA/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/NIL-ARDUINO-MEGA/halconf.h
+++ b/demos/AVR/NIL-ARDUINO-MEGA/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/NIL-ARDUINO-MINI/halconf.h b/demos/AVR/NIL-ARDUINO-MINI/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/NIL-ARDUINO-MINI/halconf.h
+++ b/demos/AVR/NIL-ARDUINO-MINI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/NIL-ARDUINO-NANO/halconf.h b/demos/AVR/NIL-ARDUINO-NANO/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/NIL-ARDUINO-NANO/halconf.h
+++ b/demos/AVR/NIL-ARDUINO-NANO/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/NIL-ARDUINO-UNO/halconf.h b/demos/AVR/NIL-ARDUINO-UNO/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/NIL-ARDUINO-UNO/halconf.h
+++ b/demos/AVR/NIL-ARDUINO-UNO/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/NIL-DIGISPARK-ATTINY-167/halconf.h b/demos/AVR/NIL-DIGISPARK-ATTINY-167/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/demos/AVR/NIL-DIGISPARK-ATTINY-167/halconf.h
+++ b/demos/AVR/NIL-DIGISPARK-ATTINY-167/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/NIL-MT-DB-X4/halconf.h b/demos/AVR/NIL-MT-DB-X4/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/demos/AVR/NIL-MT-DB-X4/halconf.h
+++ b/demos/AVR/NIL-MT-DB-X4/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-ARDUINO-LEONARDO/halconf.h b/demos/AVR/RT-ARDUINO-LEONARDO/halconf.h
index bbe98ad5c..ae8a2c0ac 100644
--- a/demos/AVR/RT-ARDUINO-LEONARDO/halconf.h
+++ b/demos/AVR/RT-ARDUINO-LEONARDO/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-ARDUINO-MEGA/halconf.h b/demos/AVR/RT-ARDUINO-MEGA/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/RT-ARDUINO-MEGA/halconf.h
+++ b/demos/AVR/RT-ARDUINO-MEGA/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-ARDUINO-MINI/halconf.h b/demos/AVR/RT-ARDUINO-MINI/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/RT-ARDUINO-MINI/halconf.h
+++ b/demos/AVR/RT-ARDUINO-MINI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-ARDUINO-NANO/halconf.h b/demos/AVR/RT-ARDUINO-NANO/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/RT-ARDUINO-NANO/halconf.h
+++ b/demos/AVR/RT-ARDUINO-NANO/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-ARDUINO-UNO/halconf.h b/demos/AVR/RT-ARDUINO-UNO/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/RT-ARDUINO-UNO/halconf.h
+++ b/demos/AVR/RT-ARDUINO-UNO/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-DIGISPARK-ATTINY-167/halconf.h b/demos/AVR/RT-DIGISPARK-ATTINY-167/halconf.h
index f251d703e..6d234d11f 100644
--- a/demos/AVR/RT-DIGISPARK-ATTINY-167/halconf.h
+++ b/demos/AVR/RT-DIGISPARK-ATTINY-167/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-MT-DB-X4/halconf.h b/demos/AVR/RT-MT-DB-X4/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/demos/AVR/RT-MT-DB-X4/halconf.h
+++ b/demos/AVR/RT-MT-DB-X4/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-PRO-MICRO/halconf.h b/demos/AVR/RT-PRO-MICRO/halconf.h
index bbe98ad5c..ae8a2c0ac 100644
--- a/demos/AVR/RT-PRO-MICRO/halconf.h
+++ b/demos/AVR/RT-PRO-MICRO/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/RT-TEENSY2-USB/halconf.h b/demos/AVR/RT-TEENSY2-USB/halconf.h
index c5f513571..9593b8ec2 100644
--- a/demos/AVR/RT-TEENSY2-USB/halconf.h
+++ b/demos/AVR/RT-TEENSY2-USB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/TEST-SUITE-NIL/halconf.h b/demos/AVR/TEST-SUITE-NIL/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/TEST-SUITE-NIL/halconf.h
+++ b/demos/AVR/TEST-SUITE-NIL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/TEST-SUITE-OSLIB/halconf.h b/demos/AVR/TEST-SUITE-OSLIB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/TEST-SUITE-OSLIB/halconf.h
+++ b/demos/AVR/TEST-SUITE-OSLIB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/AVR/TEST-SUITE-RT/halconf.h b/demos/AVR/TEST-SUITE-RT/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/AVR/TEST-SUITE-RT/halconf.h
+++ b/demos/AVR/TEST-SUITE-RT/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h b/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h
+++ b/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/NIL-SPC560D-EVB/halconf.h b/demos/SPC5/NIL-SPC560D-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/NIL-SPC560D-EVB/halconf.h
+++ b/demos/SPC5/NIL-SPC560D-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC560B-EVB/halconf.h b/demos/SPC5/RT-SPC560B-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC560B-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC560B-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC560D-EVB/halconf.h b/demos/SPC5/RT-SPC560D-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC560D-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC560D-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC560P-EVB/halconf.h b/demos/SPC5/RT-SPC560P-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC560P-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC560P-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC563M-EVB/halconf.h b/demos/SPC5/RT-SPC563M-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC563M-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC563M-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC564A-EVB/halconf.h b/demos/SPC5/RT-SPC564A-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC564A-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC564A-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC56EC-EVB/halconf.h b/demos/SPC5/RT-SPC56EC-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC56EC-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC56EC-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/SPC5/RT-SPC56EL-EVB/halconf.h b/demos/SPC5/RT-SPC56EL-EVB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/SPC5/RT-SPC56EL-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC56EL-EVB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h b/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h b/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NASA-OSAL-STM32F407-DISCOVERY/halconf.h b/demos/STM32/NASA-OSAL-STM32F407-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NASA-OSAL-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/NASA-OSAL-STM32F407-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NASA-OSAL-STM32F746G-DISCOVERY/halconf.h b/demos/STM32/NASA-OSAL-STM32F746G-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NASA-OSAL-STM32F746G-DISCOVERY/halconf.h
+++ b/demos/STM32/NASA-OSAL-STM32F746G-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h b/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h
+++ b/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32F746G-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F746G-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32F746G-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F746G-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32L011K4-NUCLEO32/halconf.h b/demos/STM32/NIL-STM32L011K4-NUCLEO32/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32L011K4-NUCLEO32/halconf.h
+++ b/demos/STM32/NIL-STM32L011K4-NUCLEO32/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32-LWIP-FATFS-USB-HTTPS/cfg-stm32f746_discovery/halconf.h b/demos/STM32/RT-STM32-LWIP-FATFS-USB-HTTPS/cfg-stm32f746_discovery/halconf.h
index 852e8a79e..c0dae0b32 100644
--- a/demos/STM32/RT-STM32-LWIP-FATFS-USB-HTTPS/cfg-stm32f746_discovery/halconf.h
+++ b/demos/STM32/RT-STM32-LWIP-FATFS-USB-HTTPS/cfg-stm32f746_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f107_goldbull/halconf.h b/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f107_goldbull/halconf.h
index 30e687249..9636fed44 100644
--- a/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f107_goldbull/halconf.h
+++ b/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f107_goldbull/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f407_olimex/halconf.h b/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f407_olimex/halconf.h
index 852e8a79e..c0dae0b32 100644
--- a/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f407_olimex/halconf.h
+++ b/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f407_olimex/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f746_discovery/halconf.h b/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f746_discovery/halconf.h
index 852e8a79e..c0dae0b32 100644
--- a/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f746_discovery/halconf.h
+++ b/demos/STM32/RT-STM32-LWIP-FATFS-USB/cfg-stm32f746_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F030R8-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F030R8-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F030R8-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F030R8-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h b/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h b/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F070RB-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F070RB-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F070RB-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F070RB-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F072RB-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F072RB-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F072RB-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F072RB-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F091RC-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F091RC-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F091RC-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F091RC-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h b/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h
+++ b/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103-FATFS/halconf.h b/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103-FATFS/halconf.h
index 06825bf44..20a738ebe 100755
--- a/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103-FATFS/halconf.h
+++ b/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103-FATFS/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h b/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h
+++ b/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F103-STM3210E_EVAL-FATFS-USB/halconf.h b/demos/STM32/RT-STM32F103-STM3210E_EVAL-FATFS-USB/halconf.h
index 435cb5a7c..41cb13ebe 100644
--- a/demos/STM32/RT-STM32F103-STM3210E_EVAL-FATFS-USB/halconf.h
+++ b/demos/STM32/RT-STM32F103-STM3210E_EVAL-FATFS-USB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F103RB-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F103RB-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F103RB-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F103RB-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h b/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F107-OLIMEX_P107-LWIP/cfg/halconf.h b/demos/STM32/RT-STM32F107-OLIMEX_P107-LWIP/cfg/halconf.h
index bbd8348b7..77678c070 100644
--- a/demos/STM32/RT-STM32F107-OLIMEX_P107-LWIP/cfg/halconf.h
+++ b/demos/STM32/RT-STM32F107-OLIMEX_P107-LWIP/cfg/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F207-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F207-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F207-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F207-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F207ZG-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F207ZG-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F207ZG-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F207ZG-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F302R8-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F302R8-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F302R8-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F302R8-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h b/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F303RE-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F303RE-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F303RE-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F303RE-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F303ZE-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F303ZE-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F303ZE-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F303ZE-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F334-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F334-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F334-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F334-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F334R8-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F334R8-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F334R8-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F334R8-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h b/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h
+++ b/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F401RE-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F401RE-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F401RE-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F401RE-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h b/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h
index a1656b24a..7534913c1 100644
--- a/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h
+++ b/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F410RB-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F410RB-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F410RB-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F410RB-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F411RE-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F411RE-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F411RE-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F411RE-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F412ZG-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F412ZG-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F412ZG-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F412ZG-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F429ZI-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F429ZI-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F429ZI-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F429ZI-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F446RE-NUCLEO64/halconf.h b/demos/STM32/RT-STM32F446RE-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F446RE-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32F446RE-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F446ZE-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F446ZE-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F446ZE-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F446ZE-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F469I-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F469I-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F469I-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F469I-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F722ZE-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F722ZE-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F722ZE-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F722ZE-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F746ZG-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F746ZG-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F746ZG-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F746ZG-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F767ZI-NUCLEO144/halconf.h b/demos/STM32/RT-STM32F767ZI-NUCLEO144/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F767ZI-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32F767ZI-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32F769I-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F769I-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32F769I-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F769I-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32H743I-NUCLEO144/halconf.h b/demos/STM32/RT-STM32H743I-NUCLEO144/halconf.h
index d316d48df..3ba396470 100644
--- a/demos/STM32/RT-STM32H743I-NUCLEO144/halconf.h
+++ b/demos/STM32/RT-STM32H743I-NUCLEO144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L031K6-NUCLEO32/halconf.h b/demos/STM32/RT-STM32L031K6-NUCLEO32/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L031K6-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32L031K6-NUCLEO32/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L053-DISCOVERY/halconf.h b/demos/STM32/RT-STM32L053-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L053-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32L053-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L053R8-NUCLEO64/halconf.h b/demos/STM32/RT-STM32L053R8-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L053R8-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32L053R8-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L073RZ-NUCLEO64/halconf.h b/demos/STM32/RT-STM32L073RZ-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L073RZ-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32L073RZ-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h b/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L152RE-NUCLEO64/halconf.h b/demos/STM32/RT-STM32L152RE-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L152RE-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32L152RE-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L432KC-NUCLEO32/halconf.h b/demos/STM32/RT-STM32L432KC-NUCLEO32/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L432KC-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32L432KC-NUCLEO32/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L476-DISCOVERY/cfg/halconf.h b/demos/STM32/RT-STM32L476-DISCOVERY/cfg/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L476-DISCOVERY/cfg/halconf.h
+++ b/demos/STM32/RT-STM32L476-DISCOVERY/cfg/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/STM32/RT-STM32L476RG-NUCLEO64/halconf.h b/demos/STM32/RT-STM32L476RG-NUCLEO64/halconf.h
index 8d1b79823..6e5569097 100644
--- a/demos/STM32/RT-STM32L476RG-NUCLEO64/halconf.h
+++ b/demos/STM32/RT-STM32L476RG-NUCLEO64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/various/RT-Posix-Simulator/halconf.h b/demos/various/RT-Posix-Simulator/halconf.h
index 701d6f14f..6f1bd82ff 100755
--- a/demos/various/RT-Posix-Simulator/halconf.h
+++ b/demos/various/RT-Posix-Simulator/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/demos/various/RT-Win32-Simulator/halconf.h b/demos/various/RT-Win32-Simulator/halconf.h
index 701d6f14f..6f1bd82ff 100644
--- a/demos/various/RT-Win32-Simulator/halconf.h
+++ b/demos/various/RT-Win32-Simulator/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/os/hal/include/hal_can.h b/os/hal/include/hal_can.h
index 3a12c09d1..61bd8b1be 100644
--- a/os/hal/include/hal_can.h
+++ b/os/hal/include/hal_can.h
@@ -79,6 +79,13 @@
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
#define CAN_USE_SLEEP_MODE TRUE
#endif
+
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
/** @} */
/*===========================================================================*/
@@ -136,7 +143,7 @@ typedef enum {
* @name Low level driver helper macros
* @{
*/
-#if !defined(CAN_ENFORCE_USE_CALLBACKS)
+#if CAN_ENFORCE_USE_CALLBACKS == FALSE
/**
* @brief TX mailbox empty event.
*/
@@ -174,7 +181,7 @@ typedef enum {
osalEventBroadcastFlagsI(&(canp)->error_event, flags); \
osalSysUnlockFromISR(); \
}
-#else /* defined(CAN_ENFORCE_USE_CALLBACKS) */
+#else /* CAN_ENFORCE_USE_CALLBACKS == TRUE */
#define _can_tx_empty_isr(canp, flags) { \
if ((canp)->txempty_cb != NULL) { \
(canp)->txempty_cb(canp, flags); \
@@ -204,7 +211,7 @@ typedef enum {
(canp)->error_cb(canp, flags); \
} \
}
-#endif /* defined(CAN_ENFORCE_USE_CALLBACKS) */
+#endif /* CAN_ENFORCE_USE_CALLBACKS == TRUE */
/** @} */
/*===========================================================================*/
diff --git a/os/hal/templates/halconf.h b/os/hal/templates/halconf.h
index 2eac78b5e..f27169ae4 100644
--- a/os/hal/templates/halconf.h
+++ b/os/hal/templates/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/test/rt/testbuild/halconf.h b/test/rt/testbuild/halconf.h
index 6af37a4fc..eb5155f58 100644
--- a/test/rt/testbuild/halconf.h
+++ b/test/rt/testbuild/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F3xx/I2C-LSM303DLHC/halconf.h b/testex/STM32/STM32F3xx/I2C-LSM303DLHC/halconf.h
index f8b72e11e..27816d917 100644
--- a/testex/STM32/STM32F3xx/I2C-LSM303DLHC/halconf.h
+++ b/testex/STM32/STM32F3xx/I2C-LSM303DLHC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F3xx/SPI-L3GD20/halconf.h b/testex/STM32/STM32F3xx/SPI-L3GD20/halconf.h
index 02dd0b6ea..360aa6965 100644
--- a/testex/STM32/STM32F3xx/SPI-L3GD20/halconf.h
+++ b/testex/STM32/STM32F3xx/SPI-L3GD20/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F3xx/SPI-N25Q128/halconf.h b/testex/STM32/STM32F3xx/SPI-N25Q128/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testex/STM32/STM32F3xx/SPI-N25Q128/halconf.h
+++ b/testex/STM32/STM32F3xx/SPI-N25Q128/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-BMP085/halconf.h b/testex/STM32/STM32F4xx/I2C-BMP085/halconf.h
index aa086eef9..3950ea48e 100644
--- a/testex/STM32/STM32F4xx/I2C-BMP085/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-BMP085/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-HTS221/halconf.h b/testex/STM32/STM32F4xx/I2C-HTS221/halconf.h
index f8b72e11e..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-HTS221/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-HTS221/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-LIS3MLD/halconf.h b/testex/STM32/STM32F4xx/I2C-LIS3MLD/halconf.h
index f8b72e11e..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-LIS3MLD/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LIS3MLD/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-LPS22HB/halconf.h b/testex/STM32/STM32F4xx/I2C-LPS22HB/halconf.h
index f8b72e11e..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-LPS22HB/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LPS22HB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-LPS25H/halconf.h b/testex/STM32/STM32F4xx/I2C-LPS25H/halconf.h
index f8b72e11e..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-LPS25H/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LPS25H/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-LSM303AGR/halconf.h b/testex/STM32/STM32F4xx/I2C-LSM303AGR/halconf.h
index 5547d5b5f..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-LSM303AGR/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LSM303AGR/halconf.h
@@ -28,160 +28,183 @@
#ifndef HALCONF_H
#define HALCONF_H
+#define _CHIBIOS_HAL_CONF_
+#define _CHIBIOS_HAL_CONF_VER_6_0_
+
#include "mcuconf.h"
/**
* @brief Enables the PAL subsystem.
*/
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-#define HAL_USE_PAL TRUE
+#define HAL_USE_PAL TRUE
#endif
/**
* @brief Enables the ADC subsystem.
*/
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-#define HAL_USE_ADC FALSE
+#define HAL_USE_ADC FALSE
#endif
/**
* @brief Enables the CAN subsystem.
*/
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-#define HAL_USE_CAN FALSE
+#define HAL_USE_CAN FALSE
#endif
/**
* @brief Enables the cryptographic subsystem.
*/
#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-#define HAL_USE_CRY FALSE
+#define HAL_USE_CRY FALSE
#endif
/**
* @brief Enables the DAC subsystem.
*/
#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-#define HAL_USE_DAC FALSE
+#define HAL_USE_DAC FALSE
#endif
/**
* @brief Enables the EXT subsystem.
*/
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
-#define HAL_USE_EXT FALSE
+#define HAL_USE_EXT FALSE
#endif
/**
* @brief Enables the GPT subsystem.
*/
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-#define HAL_USE_GPT FALSE
+#define HAL_USE_GPT FALSE
#endif
/**
* @brief Enables the I2C subsystem.
*/
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-#define HAL_USE_I2C TRUE
+#define HAL_USE_I2C TRUE
#endif
/**
* @brief Enables the I2S subsystem.
*/
#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-#define HAL_USE_I2S FALSE
+#define HAL_USE_I2S FALSE
#endif
/**
* @brief Enables the ICU subsystem.
*/
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-#define HAL_USE_ICU FALSE
+#define HAL_USE_ICU FALSE
#endif
/**
* @brief Enables the MAC subsystem.
*/
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-#define HAL_USE_MAC FALSE
+#define HAL_USE_MAC FALSE
#endif
/**
* @brief Enables the MMC_SPI subsystem.
*/
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_MMC_SPI FALSE
+#define HAL_USE_MMC_SPI FALSE
#endif
/**
* @brief Enables the PWM subsystem.
*/
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-#define HAL_USE_PWM FALSE
+#define HAL_USE_PWM FALSE
#endif
/**
* @brief Enables the QSPI subsystem.
*/
#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
-#define HAL_USE_QSPI FALSE
+#define HAL_USE_QSPI FALSE
#endif
/**
* @brief Enables the RTC subsystem.
*/
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-#define HAL_USE_RTC FALSE
+#define HAL_USE_RTC FALSE
#endif
/**
* @brief Enables the SDC subsystem.
*/
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-#define HAL_USE_SDC FALSE
+#define HAL_USE_SDC FALSE
#endif
/**
* @brief Enables the SERIAL subsystem.
*/
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL TRUE
+#define HAL_USE_SERIAL TRUE
#endif
/**
* @brief Enables the SERIAL over USB subsystem.
*/
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL_USB FALSE
+#define HAL_USE_SERIAL_USB FALSE
#endif
/**
* @brief Enables the SPI subsystem.
*/
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_SPI FALSE
+#define HAL_USE_SPI FALSE
#endif
/**
* @brief Enables the UART subsystem.
*/
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-#define HAL_USE_UART FALSE
+#define HAL_USE_UART FALSE
#endif
/**
* @brief Enables the USB subsystem.
*/
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-#define HAL_USE_USB FALSE
+#define HAL_USE_USB FALSE
#endif
/**
* @brief Enables the WDG subsystem.
*/
#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-#define HAL_USE_WDG FALSE
+#define HAL_USE_WDG FALSE
+#endif
+
+/*===========================================================================*/
+/* PAL driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define PAL_USE_CALLBACKS FALSE
+#endif
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
+#define PAL_USE_WAIT FALSE
#endif
/*===========================================================================*/
@@ -193,7 +216,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-#define ADC_USE_WAIT TRUE
+#define ADC_USE_WAIT TRUE
#endif
/**
@@ -201,7 +224,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define ADC_USE_MUTUAL_EXCLUSION TRUE
+#define ADC_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -212,7 +235,14 @@
* @brief Sleep mode related APIs inclusion switch.
*/
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-#define CAN_USE_SLEEP_MODE TRUE
+#define CAN_USE_SLEEP_MODE TRUE
+#endif
+
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
#endif
/*===========================================================================*/
@@ -238,6 +268,26 @@
#endif
/*===========================================================================*/
+/* DAC driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
+#define DAC_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define DAC_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/*===========================================================================*/
/* I2C driver related settings. */
/*===========================================================================*/
@@ -245,7 +295,7 @@
* @brief Enables the mutual exclusion APIs on the I2C bus.
*/
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define I2C_USE_MUTUAL_EXCLUSION TRUE
+#define I2C_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -253,17 +303,17 @@
/*===========================================================================*/
/**
- * @brief Enables an event sources for incoming packets.
+ * @brief Enables the zero-copy API.
*/
#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-#define MAC_USE_ZERO_COPY FALSE
+#define MAC_USE_ZERO_COPY FALSE
#endif
/**
* @brief Enables an event sources for incoming packets.
*/
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-#define MAC_USE_EVENTS TRUE
+#define MAC_USE_EVENTS TRUE
#endif
/*===========================================================================*/
@@ -279,7 +329,27 @@
* use a DMA channel and heavily loads the CPU.
*/
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-#define MMC_NICE_WAITING TRUE
+#define MMC_NICE_WAITING TRUE
+#endif
+
+/*===========================================================================*/
+/* QSPI driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__)
+#define QSPI_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define QSPI_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -291,7 +361,7 @@
* @note Attempts are performed at 10mS intervals.
*/
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-#define SDC_INIT_RETRY 100
+#define SDC_INIT_RETRY 100
#endif
/**
@@ -300,7 +370,7 @@
* at @p FALSE.
*/
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-#define SDC_MMC_SUPPORT FALSE
+#define SDC_MMC_SUPPORT FALSE
#endif
/**
@@ -310,7 +380,21 @@
* lower priority, this may slow down the driver a bit however.
*/
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-#define SDC_NICE_WAITING TRUE
+#define SDC_NICE_WAITING TRUE
+#endif
+
+/**
+ * @brief OCR initialization constant for V20 cards.
+ */
+#if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR_V20 0x50FF8000U
+#endif
+
+/**
+ * @brief OCR initialization constant for non-V20 cards.
+ */
+#if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR 0x80100000U
#endif
/*===========================================================================*/
@@ -323,7 +407,7 @@
* default configuration.
*/
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-#define SERIAL_DEFAULT_BITRATE 38400
+#define SERIAL_DEFAULT_BITRATE 38400
#endif
/**
@@ -334,7 +418,7 @@
* buffers.
*/
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_BUFFERS_SIZE 16
+#define SERIAL_BUFFERS_SIZE 16
#endif
/*===========================================================================*/
@@ -349,7 +433,7 @@
* buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_SIZE 256
+#define SERIAL_USB_BUFFERS_SIZE 256
#endif
/**
@@ -357,7 +441,7 @@
* @note The default is 2 buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_NUMBER 2
+#define SERIAL_USB_BUFFERS_NUMBER 2
#endif
/*===========================================================================*/
@@ -369,15 +453,32 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-#define SPI_USE_WAIT TRUE
+#define SPI_USE_WAIT TRUE
#endif
/**
+ * @brief Enables circular transfers APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
+#define SPI_USE_CIRCULAR FALSE
+#endif
+
+
+/**
* @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/**
+ * @brief Handling method for SPI CS line.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
+#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
#endif
/*===========================================================================*/
@@ -389,7 +490,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-#define UART_USE_WAIT FALSE
+#define UART_USE_WAIT FALSE
#endif
/**
@@ -397,7 +498,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define UART_USE_MUTUAL_EXCLUSION FALSE
+#define UART_USE_MUTUAL_EXCLUSION FALSE
#endif
/*===========================================================================*/
@@ -409,7 +510,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-#define USB_USE_WAIT FALSE
+#define USB_USE_WAIT FALSE
#endif
#endif /* HALCONF_H */
diff --git a/testex/STM32/STM32F4xx/I2C-LSM303DLHC/halconf.h b/testex/STM32/STM32F4xx/I2C-LSM303DLHC/halconf.h
index a0997e337..4bc4383ec 100644
--- a/testex/STM32/STM32F4xx/I2C-LSM303DLHC/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LSM303DLHC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-LSM6DS0/halconf.h b/testex/STM32/STM32F4xx/I2C-LSM6DS0/halconf.h
index f8b72e11e..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-LSM6DS0/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LSM6DS0/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/I2C-LSM6DSL/halconf.h b/testex/STM32/STM32F4xx/I2C-LSM6DSL/halconf.h
index 5547d5b5f..27816d917 100644
--- a/testex/STM32/STM32F4xx/I2C-LSM6DSL/halconf.h
+++ b/testex/STM32/STM32F4xx/I2C-LSM6DSL/halconf.h
@@ -28,160 +28,183 @@
#ifndef HALCONF_H
#define HALCONF_H
+#define _CHIBIOS_HAL_CONF_
+#define _CHIBIOS_HAL_CONF_VER_6_0_
+
#include "mcuconf.h"
/**
* @brief Enables the PAL subsystem.
*/
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
-#define HAL_USE_PAL TRUE
+#define HAL_USE_PAL TRUE
#endif
/**
* @brief Enables the ADC subsystem.
*/
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
-#define HAL_USE_ADC FALSE
+#define HAL_USE_ADC FALSE
#endif
/**
* @brief Enables the CAN subsystem.
*/
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
-#define HAL_USE_CAN FALSE
+#define HAL_USE_CAN FALSE
#endif
/**
* @brief Enables the cryptographic subsystem.
*/
#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
-#define HAL_USE_CRY FALSE
+#define HAL_USE_CRY FALSE
#endif
/**
* @brief Enables the DAC subsystem.
*/
#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
-#define HAL_USE_DAC FALSE
+#define HAL_USE_DAC FALSE
#endif
/**
* @brief Enables the EXT subsystem.
*/
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
-#define HAL_USE_EXT FALSE
+#define HAL_USE_EXT FALSE
#endif
/**
* @brief Enables the GPT subsystem.
*/
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
-#define HAL_USE_GPT FALSE
+#define HAL_USE_GPT FALSE
#endif
/**
* @brief Enables the I2C subsystem.
*/
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
-#define HAL_USE_I2C TRUE
+#define HAL_USE_I2C TRUE
#endif
/**
* @brief Enables the I2S subsystem.
*/
#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
-#define HAL_USE_I2S FALSE
+#define HAL_USE_I2S FALSE
#endif
/**
* @brief Enables the ICU subsystem.
*/
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
-#define HAL_USE_ICU FALSE
+#define HAL_USE_ICU FALSE
#endif
/**
* @brief Enables the MAC subsystem.
*/
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
-#define HAL_USE_MAC FALSE
+#define HAL_USE_MAC FALSE
#endif
/**
* @brief Enables the MMC_SPI subsystem.
*/
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_MMC_SPI FALSE
+#define HAL_USE_MMC_SPI FALSE
#endif
/**
* @brief Enables the PWM subsystem.
*/
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-#define HAL_USE_PWM FALSE
+#define HAL_USE_PWM FALSE
#endif
/**
* @brief Enables the QSPI subsystem.
*/
#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
-#define HAL_USE_QSPI FALSE
+#define HAL_USE_QSPI FALSE
#endif
/**
* @brief Enables the RTC subsystem.
*/
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
-#define HAL_USE_RTC FALSE
+#define HAL_USE_RTC FALSE
#endif
/**
* @brief Enables the SDC subsystem.
*/
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
-#define HAL_USE_SDC FALSE
+#define HAL_USE_SDC FALSE
#endif
/**
* @brief Enables the SERIAL subsystem.
*/
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL TRUE
+#define HAL_USE_SERIAL TRUE
#endif
/**
* @brief Enables the SERIAL over USB subsystem.
*/
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
-#define HAL_USE_SERIAL_USB FALSE
+#define HAL_USE_SERIAL_USB FALSE
#endif
/**
* @brief Enables the SPI subsystem.
*/
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
-#define HAL_USE_SPI FALSE
+#define HAL_USE_SPI FALSE
#endif
/**
* @brief Enables the UART subsystem.
*/
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
-#define HAL_USE_UART FALSE
+#define HAL_USE_UART FALSE
#endif
/**
* @brief Enables the USB subsystem.
*/
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
-#define HAL_USE_USB FALSE
+#define HAL_USE_USB FALSE
#endif
/**
* @brief Enables the WDG subsystem.
*/
#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
-#define HAL_USE_WDG FALSE
+#define HAL_USE_WDG FALSE
+#endif
+
+/*===========================================================================*/
+/* PAL driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define PAL_USE_CALLBACKS FALSE
+#endif
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
+#define PAL_USE_WAIT FALSE
#endif
/*===========================================================================*/
@@ -193,7 +216,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
-#define ADC_USE_WAIT TRUE
+#define ADC_USE_WAIT TRUE
#endif
/**
@@ -201,7 +224,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define ADC_USE_MUTUAL_EXCLUSION TRUE
+#define ADC_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -212,7 +235,14 @@
* @brief Sleep mode related APIs inclusion switch.
*/
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
-#define CAN_USE_SLEEP_MODE TRUE
+#define CAN_USE_SLEEP_MODE TRUE
+#endif
+
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
#endif
/*===========================================================================*/
@@ -238,6 +268,26 @@
#endif
/*===========================================================================*/
+/* DAC driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
+#define DAC_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define DAC_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/*===========================================================================*/
/* I2C driver related settings. */
/*===========================================================================*/
@@ -245,7 +295,7 @@
* @brief Enables the mutual exclusion APIs on the I2C bus.
*/
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define I2C_USE_MUTUAL_EXCLUSION TRUE
+#define I2C_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -253,17 +303,17 @@
/*===========================================================================*/
/**
- * @brief Enables an event sources for incoming packets.
+ * @brief Enables the zero-copy API.
*/
#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
-#define MAC_USE_ZERO_COPY FALSE
+#define MAC_USE_ZERO_COPY FALSE
#endif
/**
* @brief Enables an event sources for incoming packets.
*/
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-#define MAC_USE_EVENTS TRUE
+#define MAC_USE_EVENTS TRUE
#endif
/*===========================================================================*/
@@ -279,7 +329,27 @@
* use a DMA channel and heavily loads the CPU.
*/
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
-#define MMC_NICE_WAITING TRUE
+#define MMC_NICE_WAITING TRUE
+#endif
+
+/*===========================================================================*/
+/* QSPI driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__)
+#define QSPI_USE_WAIT TRUE
+#endif
+
+/**
+ * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define QSPI_USE_MUTUAL_EXCLUSION TRUE
#endif
/*===========================================================================*/
@@ -291,7 +361,7 @@
* @note Attempts are performed at 10mS intervals.
*/
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
-#define SDC_INIT_RETRY 100
+#define SDC_INIT_RETRY 100
#endif
/**
@@ -300,7 +370,7 @@
* at @p FALSE.
*/
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
-#define SDC_MMC_SUPPORT FALSE
+#define SDC_MMC_SUPPORT FALSE
#endif
/**
@@ -310,7 +380,21 @@
* lower priority, this may slow down the driver a bit however.
*/
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
-#define SDC_NICE_WAITING TRUE
+#define SDC_NICE_WAITING TRUE
+#endif
+
+/**
+ * @brief OCR initialization constant for V20 cards.
+ */
+#if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR_V20 0x50FF8000U
+#endif
+
+/**
+ * @brief OCR initialization constant for non-V20 cards.
+ */
+#if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
+#define SDC_INIT_OCR 0x80100000U
#endif
/*===========================================================================*/
@@ -323,7 +407,7 @@
* default configuration.
*/
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
-#define SERIAL_DEFAULT_BITRATE 38400
+#define SERIAL_DEFAULT_BITRATE 38400
#endif
/**
@@ -334,7 +418,7 @@
* buffers.
*/
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_BUFFERS_SIZE 16
+#define SERIAL_BUFFERS_SIZE 16
#endif
/*===========================================================================*/
@@ -349,7 +433,7 @@
* buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_SIZE 256
+#define SERIAL_USB_BUFFERS_SIZE 256
#endif
/**
@@ -357,7 +441,7 @@
* @note The default is 2 buffers.
*/
#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
-#define SERIAL_USB_BUFFERS_NUMBER 2
+#define SERIAL_USB_BUFFERS_NUMBER 2
#endif
/*===========================================================================*/
@@ -369,15 +453,32 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
-#define SPI_USE_WAIT TRUE
+#define SPI_USE_WAIT TRUE
#endif
/**
+ * @brief Enables circular transfers APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
+#define SPI_USE_CIRCULAR FALSE
+#endif
+
+
+/**
* @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
* @note Disabling this option saves both code and data space.
*/
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#define SPI_USE_MUTUAL_EXCLUSION TRUE
+#endif
+
+/**
+ * @brief Handling method for SPI CS line.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
+#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
#endif
/*===========================================================================*/
@@ -389,7 +490,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-#define UART_USE_WAIT FALSE
+#define UART_USE_WAIT FALSE
#endif
/**
@@ -397,7 +498,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define UART_USE_MUTUAL_EXCLUSION FALSE
+#define UART_USE_MUTUAL_EXCLUSION FALSE
#endif
/*===========================================================================*/
@@ -409,7 +510,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
-#define USB_USE_WAIT FALSE
+#define USB_USE_WAIT FALSE
#endif
#endif /* HALCONF_H */
diff --git a/testex/STM32/STM32F4xx/SPI-L3GD20/halconf.h b/testex/STM32/STM32F4xx/SPI-L3GD20/halconf.h
index 5425b231b..03bdc0331 100644
--- a/testex/STM32/STM32F4xx/SPI-L3GD20/halconf.h
+++ b/testex/STM32/STM32F4xx/SPI-L3GD20/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/SPI-LIS302DL/halconf.h b/testex/STM32/STM32F4xx/SPI-LIS302DL/halconf.h
index cdc8b557c..81332c348 100644
--- a/testex/STM32/STM32F4xx/SPI-LIS302DL/halconf.h
+++ b/testex/STM32/STM32F4xx/SPI-LIS302DL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32F4xx/SPI-LIS3DSH/halconf.h b/testex/STM32/STM32F4xx/SPI-LIS3DSH/halconf.h
index cdc8b557c..81332c348 100644
--- a/testex/STM32/STM32F4xx/SPI-LIS3DSH/halconf.h
+++ b/testex/STM32/STM32F4xx/SPI-LIS3DSH/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32L4xx/QSPI-N25Q128/halconf.h b/testex/STM32/STM32L4xx/QSPI-N25Q128/halconf.h
index cfeaf5921..61af27195 100644
--- a/testex/STM32/STM32L4xx/QSPI-N25Q128/halconf.h
+++ b/testex/STM32/STM32L4xx/QSPI-N25Q128/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testex/STM32/STM32L4xx/SPI-L3GD20/halconf.h b/testex/STM32/STM32L4xx/SPI-L3GD20/halconf.h
index 02dd0b6ea..360aa6965 100644
--- a/testex/STM32/STM32L4xx/SPI-L3GD20/halconf.h
+++ b/testex/STM32/STM32L4xx/SPI-L3GD20/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/FLEX-SPI/halconf.h b/testhal/ATSAMA5D2/FLEX-SPI/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/ATSAMA5D2/FLEX-SPI/halconf.h
+++ b/testhal/ATSAMA5D2/FLEX-SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/MATRIX/halconf.h b/testhal/ATSAMA5D2/MATRIX/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/ATSAMA5D2/MATRIX/halconf.h
+++ b/testhal/ATSAMA5D2/MATRIX/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/RTC/halconf.h b/testhal/ATSAMA5D2/RTC/halconf.h
index fcd415907..b4d277047 100644
--- a/testhal/ATSAMA5D2/RTC/halconf.h
+++ b/testhal/ATSAMA5D2/RTC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/SDMMC/halconf.h b/testhal/ATSAMA5D2/SDMMC/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/ATSAMA5D2/SDMMC/halconf.h
+++ b/testhal/ATSAMA5D2/SDMMC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/SECUMOD/halconf.h b/testhal/ATSAMA5D2/SECUMOD/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/ATSAMA5D2/SECUMOD/halconf.h
+++ b/testhal/ATSAMA5D2/SECUMOD/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/SERIAL/halconf.h b/testhal/ATSAMA5D2/SERIAL/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/ATSAMA5D2/SERIAL/halconf.h
+++ b/testhal/ATSAMA5D2/SERIAL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/SPI/halconf.h b/testhal/ATSAMA5D2/SPI/halconf.h
index 02dd0b6ea..360aa6965 100644
--- a/testhal/ATSAMA5D2/SPI/halconf.h
+++ b/testhal/ATSAMA5D2/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/TC/halconf.h b/testhal/ATSAMA5D2/TC/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/ATSAMA5D2/TC/halconf.h
+++ b/testhal/ATSAMA5D2/TC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/ATSAMA5D2/UART/halconf.h b/testhal/ATSAMA5D2/UART/halconf.h
index f251d703e..6d234d11f 100644
--- a/testhal/ATSAMA5D2/UART/halconf.h
+++ b/testhal/ATSAMA5D2/UART/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/ADC/halconf.h b/testhal/AVR/MEGA/ADC/halconf.h
index d316d48df..3ba396470 100644
--- a/testhal/AVR/MEGA/ADC/halconf.h
+++ b/testhal/AVR/MEGA/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/EXT/halconf.h b/testhal/AVR/MEGA/EXT/halconf.h
index a2b257d00..5e28c6680 100644
--- a/testhal/AVR/MEGA/EXT/halconf.h
+++ b/testhal/AVR/MEGA/EXT/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/GPT/halconf.h b/testhal/AVR/MEGA/GPT/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/AVR/MEGA/GPT/halconf.h
+++ b/testhal/AVR/MEGA/GPT/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/I2C/halconf.h b/testhal/AVR/MEGA/I2C/halconf.h
index f8b72e11e..27816d917 100644
--- a/testhal/AVR/MEGA/I2C/halconf.h
+++ b/testhal/AVR/MEGA/I2C/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/ICU/halconf.h b/testhal/AVR/MEGA/ICU/halconf.h
index 04e289ffc..b3cac4bf3 100644
--- a/testhal/AVR/MEGA/ICU/halconf.h
+++ b/testhal/AVR/MEGA/ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/PWM/halconf.h b/testhal/AVR/MEGA/PWM/halconf.h
index ec81c4da3..0612a21ac 100644
--- a/testhal/AVR/MEGA/PWM/halconf.h
+++ b/testhal/AVR/MEGA/PWM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/MEGA/SPI/halconf.h b/testhal/AVR/MEGA/SPI/halconf.h
index 02dd0b6ea..360aa6965 100644
--- a/testhal/AVR/MEGA/SPI/halconf.h
+++ b/testhal/AVR/MEGA/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/XMEGA/SERIAL/halconf.h b/testhal/AVR/XMEGA/SERIAL/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/AVR/XMEGA/SERIAL/halconf.h
+++ b/testhal/AVR/XMEGA/SERIAL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/XMEGA/TEST-SUITE-OSLIB/halconf.h b/testhal/AVR/XMEGA/TEST-SUITE-OSLIB/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/AVR/XMEGA/TEST-SUITE-OSLIB/halconf.h
+++ b/testhal/AVR/XMEGA/TEST-SUITE-OSLIB/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/XMEGA/USART/halconf.h b/testhal/AVR/XMEGA/USART/halconf.h
index f251d703e..6d234d11f 100644
--- a/testhal/AVR/XMEGA/USART/halconf.h
+++ b/testhal/AVR/XMEGA/USART/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/XMEGA/WDT/halconf.h b/testhal/AVR/XMEGA/WDT/halconf.h
index 9fa7881e9..0928035e4 100644
--- a/testhal/AVR/XMEGA/WDT/halconf.h
+++ b/testhal/AVR/XMEGA/WDT/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/multi/PAL/cfg/arduino_mega/halconf.h b/testhal/AVR/multi/PAL/cfg/arduino_mega/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/AVR/multi/PAL/cfg/arduino_mega/halconf.h
+++ b/testhal/AVR/multi/PAL/cfg/arduino_mega/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/multi/PAL/cfg/arduino_mini/halconf.h b/testhal/AVR/multi/PAL/cfg/arduino_mini/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/AVR/multi/PAL/cfg/arduino_mini/halconf.h
+++ b/testhal/AVR/multi/PAL/cfg/arduino_mini/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/multi/PAL/cfg/arduino_nano/halconf.h b/testhal/AVR/multi/PAL/cfg/arduino_nano/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/AVR/multi/PAL/cfg/arduino_nano/halconf.h
+++ b/testhal/AVR/multi/PAL/cfg/arduino_nano/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/AVR/multi/PAL/cfg/arduino_uno/halconf.h b/testhal/AVR/multi/PAL/cfg/arduino_uno/halconf.h
index 8d1b79823..6e5569097 100644
--- a/testhal/AVR/multi/PAL/cfg/arduino_uno/halconf.h
+++ b/testhal/AVR/multi/PAL/cfg/arduino_uno/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F0xx/ADC/halconf.h b/testhal/STM32/STM32F0xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F0xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F0xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F0xx/CAN/halconf.h b/testhal/STM32/STM32F0xx/CAN/halconf.h
index 575986bf6..8a7b59dab 100644
--- a/testhal/STM32/STM32F0xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F0xx/CAN/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F0xx/USB_CDC/halconf.h b/testhal/STM32/STM32F0xx/USB_CDC/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/STM32F0xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F0xx/USB_CDC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F0xx/WDG/halconf.h b/testhal/STM32/STM32F0xx/WDG/halconf.h
index dde582671..7250a908d 100644
--- a/testhal/STM32/STM32F0xx/WDG/halconf.h
+++ b/testhal/STM32/STM32F0xx/WDG/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/ADC/halconf.h b/testhal/STM32/STM32F1xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F1xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F1xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/CAN/halconf.h b/testhal/STM32/STM32F1xx/CAN/halconf.h
index 575986bf6..8a7b59dab 100644
--- a/testhal/STM32/STM32F1xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F1xx/CAN/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/I2C/halconf.h b/testhal/STM32/STM32F1xx/I2C/halconf.h
index ba972f4af..0d5ffea1f 100644
--- a/testhal/STM32/STM32F1xx/I2C/halconf.h
+++ b/testhal/STM32/STM32F1xx/I2C/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/RTC/halconf.h b/testhal/STM32/STM32F1xx/RTC/halconf.h
index 83ad05800..d949008c9 100644
--- a/testhal/STM32/STM32F1xx/RTC/halconf.h
+++ b/testhal/STM32/STM32F1xx/RTC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/SPI/halconf.h b/testhal/STM32/STM32F1xx/SPI/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/STM32F1xx/SPI/halconf.h
+++ b/testhal/STM32/STM32F1xx/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/UART/halconf.h b/testhal/STM32/STM32F1xx/UART/halconf.h
index f251d703e..6d234d11f 100644
--- a/testhal/STM32/STM32F1xx/UART/halconf.h
+++ b/testhal/STM32/STM32F1xx/UART/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/USB_CDC/halconf.h b/testhal/STM32/STM32F1xx/USB_CDC/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/STM32F1xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F1xx/USB_CDC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h b/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h
index a7c9e2f2c..f357509d4 100644
--- a/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h
+++ b/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F2xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F2xx/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32F2xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F2xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F2xx/USB_CDC/halconf.h b/testhal/STM32/STM32F2xx/USB_CDC/halconf.h
index fca803def..cbe4d333c 100644
--- a/testhal/STM32/STM32F2xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F2xx/USB_CDC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/ADC/halconf.h b/testhal/STM32/STM32F37x/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F37x/ADC/halconf.h
+++ b/testhal/STM32/STM32F37x/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/CAN/halconf.h b/testhal/STM32/STM32F37x/CAN/halconf.h
index 575986bf6..8a7b59dab 100644
--- a/testhal/STM32/STM32F37x/CAN/halconf.h
+++ b/testhal/STM32/STM32F37x/CAN/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/I2C/halconf.h b/testhal/STM32/STM32F37x/I2C/halconf.h
index ba972f4af..0d5ffea1f 100644
--- a/testhal/STM32/STM32F37x/I2C/halconf.h
+++ b/testhal/STM32/STM32F37x/I2C/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h b/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/PWM-ICU/halconf.h b/testhal/STM32/STM32F37x/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32F37x/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F37x/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/SDADC/halconf.h b/testhal/STM32/STM32F37x/SDADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F37x/SDADC/halconf.h
+++ b/testhal/STM32/STM32F37x/SDADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/SPI/halconf.h b/testhal/STM32/STM32F37x/SPI/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/STM32F37x/SPI/halconf.h
+++ b/testhal/STM32/STM32F37x/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/UART/halconf.h b/testhal/STM32/STM32F37x/UART/halconf.h
index f251d703e..6d234d11f 100644
--- a/testhal/STM32/STM32F37x/UART/halconf.h
+++ b/testhal/STM32/STM32F37x/UART/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F37x/USB_CDC/halconf.h b/testhal/STM32/STM32F37x/USB_CDC/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/STM32F37x/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F37x/USB_CDC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/ADC/halconf.h b/testhal/STM32/STM32F3xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F3xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F3xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/ADC_DUAL/halconf.h b/testhal/STM32/STM32F3xx/ADC_DUAL/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F3xx/ADC_DUAL/halconf.h
+++ b/testhal/STM32/STM32F3xx/ADC_DUAL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/CAN/halconf.h b/testhal/STM32/STM32F3xx/CAN/halconf.h
index 575986bf6..8a7b59dab 100644
--- a/testhal/STM32/STM32F3xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F3xx/CAN/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/DAC/halconf.h b/testhal/STM32/STM32F3xx/DAC/halconf.h
index 6190ea4c3..d8ed88065 100644
--- a/testhal/STM32/STM32F3xx/DAC/halconf.h
+++ b/testhal/STM32/STM32F3xx/DAC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F3xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F3xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F3xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F3xx/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32F3xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F3xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/USB_CDC_IAD/halconf.h b/testhal/STM32/STM32F3xx/USB_CDC_IAD/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/STM32F3xx/USB_CDC_IAD/halconf.h
+++ b/testhal/STM32/STM32F3xx/USB_CDC_IAD/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F3xx/WDG/halconf.h b/testhal/STM32/STM32F3xx/WDG/halconf.h
index dde582671..7250a908d 100644
--- a/testhal/STM32/STM32F3xx/WDG/halconf.h
+++ b/testhal/STM32/STM32F3xx/WDG/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/ADC/halconf.h b/testhal/STM32/STM32F4xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32F4xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F4xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/CAN/halconf.h b/testhal/STM32/STM32F4xx/CAN/halconf.h
index 575986bf6..8a7b59dab 100644
--- a/testhal/STM32/STM32F4xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F4xx/CAN/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/DAC/halconf.h b/testhal/STM32/STM32F4xx/DAC/halconf.h
index 6190ea4c3..d8ed88065 100644
--- a/testhal/STM32/STM32F4xx/DAC/halconf.h
+++ b/testhal/STM32/STM32F4xx/DAC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h b/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h
index 6190ea4c3..d8ed88065 100644
--- a/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h
+++ b/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h b/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h
index 7bbed29eb..5a3118193 100644
--- a/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h
+++ b/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/GPT/halconf.h b/testhal/STM32/STM32F4xx/GPT/halconf.h
index ef661772b..dc45b160b 100644
--- a/testhal/STM32/STM32F4xx/GPT/halconf.h
+++ b/testhal/STM32/STM32F4xx/GPT/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/I2S/halconf.h b/testhal/STM32/STM32F4xx/I2S/halconf.h
index 09c2d9add..abc48cdcf 100644
--- a/testhal/STM32/STM32F4xx/I2S/halconf.h
+++ b/testhal/STM32/STM32F4xx/I2S/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h b/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h
+++ b/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/RTC/halconf.h b/testhal/STM32/STM32F4xx/RTC/halconf.h
index fcd415907..b4d277047 100644
--- a/testhal/STM32/STM32F4xx/RTC/halconf.h
+++ b/testhal/STM32/STM32F4xx/RTC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/SDC/halconf.h b/testhal/STM32/STM32F4xx/SDC/halconf.h
index 80a23ae3d..55a5bdaea 100644
--- a/testhal/STM32/STM32F4xx/SDC/halconf.h
+++ b/testhal/STM32/STM32F4xx/SDC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h b/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h
+++ b/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F4xx/WDG/halconf.h b/testhal/STM32/STM32F4xx/WDG/halconf.h
index dde582671..7250a908d 100644
--- a/testhal/STM32/STM32F4xx/WDG/halconf.h
+++ b/testhal/STM32/STM32F4xx/WDG/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h b/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h
index a0ee75cad..46b5faaf8 100644
--- a/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h
+++ b/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F7xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F7xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32F7xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F7xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h
index 1f15e37dd..9a62711c9 100644
--- a/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F7xx/SPI/halconf.h b/testhal/STM32/STM32F7xx/SPI/halconf.h
index 02dd0b6ea..360aa6965 100644
--- a/testhal/STM32/STM32F7xx/SPI/halconf.h
+++ b/testhal/STM32/STM32F7xx/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32F7xx/USB_RAW/halconf.h b/testhal/STM32/STM32F7xx/USB_RAW/halconf.h
index 12044bfb0..4ef0f1d05 100644
--- a/testhal/STM32/STM32F7xx/USB_RAW/halconf.h
+++ b/testhal/STM32/STM32F7xx/USB_RAW/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L0xx/ADC/halconf.h b/testhal/STM32/STM32L0xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32L0xx/ADC/halconf.h
+++ b/testhal/STM32/STM32L0xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L0xx/SPI/halconf.h b/testhal/STM32/STM32L0xx/SPI/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/STM32L0xx/SPI/halconf.h
+++ b/testhal/STM32/STM32L0xx/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L0xx/USB_CDC/halconf.h b/testhal/STM32/STM32L0xx/USB_CDC/halconf.h
index 37f4a6a72..9a628dc50 100644
--- a/testhal/STM32/STM32L0xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32L0xx/USB_CDC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L1xx/ADC/halconf.h b/testhal/STM32/STM32L1xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32L1xx/ADC/halconf.h
+++ b/testhal/STM32/STM32L1xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L1xx/DAC/halconf.h b/testhal/STM32/STM32L1xx/DAC/halconf.h
index 6190ea4c3..d8ed88065 100644
--- a/testhal/STM32/STM32L1xx/DAC/halconf.h
+++ b/testhal/STM32/STM32L1xx/DAC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h b/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h
index ec4f4f080..5bb876270 100644
--- a/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L1xx/SPI/halconf.h b/testhal/STM32/STM32L1xx/SPI/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/STM32L1xx/SPI/halconf.h
+++ b/testhal/STM32/STM32L1xx/SPI/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L1xx/UART/halconf.h b/testhal/STM32/STM32L1xx/UART/halconf.h
index f251d703e..6d234d11f 100644
--- a/testhal/STM32/STM32L1xx/UART/halconf.h
+++ b/testhal/STM32/STM32L1xx/UART/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L4xx/ADC/halconf.h b/testhal/STM32/STM32L4xx/ADC/halconf.h
index 77704848b..59357003d 100644
--- a/testhal/STM32/STM32L4xx/ADC/halconf.h
+++ b/testhal/STM32/STM32L4xx/ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L4xx/CAN/halconf.h b/testhal/STM32/STM32L4xx/CAN/halconf.h
index 575986bf6..8a7b59dab 100644
--- a/testhal/STM32/STM32L4xx/CAN/halconf.h
+++ b/testhal/STM32/STM32L4xx/CAN/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L4xx/GPT-ADC/halconf.h b/testhal/STM32/STM32L4xx/GPT-ADC/halconf.h
index a0ee75cad..46b5faaf8 100644
--- a/testhal/STM32/STM32L4xx/GPT-ADC/halconf.h
+++ b/testhal/STM32/STM32L4xx/GPT-ADC/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/STM32L4xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32L4xx/IRQ_STORM/halconf.h
index 35fecac12..9956e76a6 100644
--- a/testhal/STM32/STM32L4xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32L4xx/IRQ_STORM/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f051_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f051_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f051_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f051_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f103_olimex/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f103_olimex/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f103_olimex/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f103_olimex/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f303_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f303_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f303_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f303_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f373_eval/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f373_eval/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f373_eval/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f373_eval/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f407_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f407_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f407_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f407_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f429_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f429_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f429_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f429_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32f746_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32f746_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32f746_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32f746_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32l053_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32l053_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32l053_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32l053_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32l151_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32l151_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32l151_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32l151_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/PAL/cfg/stm32l476_discovery/halconf.h b/testhal/STM32/multi/PAL/cfg/stm32l476_discovery/halconf.h
index 1e19174b3..0fa8e3ca4 100644
--- a/testhal/STM32/multi/PAL/cfg/stm32l476_discovery/halconf.h
+++ b/testhal/STM32/multi/PAL/cfg/stm32l476_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/QSPI-MFS/cfg/stm32l476_discovery/halconf.h b/testhal/STM32/multi/QSPI-MFS/cfg/stm32l476_discovery/halconf.h
index cfeaf5921..61af27195 100644
--- a/testhal/STM32/multi/QSPI-MFS/cfg/stm32l476_discovery/halconf.h
+++ b/testhal/STM32/multi/QSPI-MFS/cfg/stm32l476_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/SPI/cfg/stm32f091_nucleo64/halconf.h b/testhal/STM32/multi/SPI/cfg/stm32f091_nucleo64/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/multi/SPI/cfg/stm32f091_nucleo64/halconf.h
+++ b/testhal/STM32/multi/SPI/cfg/stm32f091_nucleo64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/SPI/cfg/stm32f303_discovery/halconf.h b/testhal/STM32/multi/SPI/cfg/stm32f303_discovery/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/multi/SPI/cfg/stm32f303_discovery/halconf.h
+++ b/testhal/STM32/multi/SPI/cfg/stm32f303_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/SPI/cfg/stm32f407_discovery/halconf.h b/testhal/STM32/multi/SPI/cfg/stm32f407_discovery/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/multi/SPI/cfg/stm32f407_discovery/halconf.h
+++ b/testhal/STM32/multi/SPI/cfg/stm32f407_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/SPI/cfg/stm32h743_nucleo144/halconf.h b/testhal/STM32/multi/SPI/cfg/stm32h743_nucleo144/halconf.h
index b997ebf5d..48608a2f1 100644
--- a/testhal/STM32/multi/SPI/cfg/stm32h743_nucleo144/halconf.h
+++ b/testhal/STM32/multi/SPI/cfg/stm32h743_nucleo144/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/UART/cfg/stm32f091_nucleo64/halconf.h b/testhal/STM32/multi/UART/cfg/stm32f091_nucleo64/halconf.h
index c373bb8b4..7fcedb68e 100644
--- a/testhal/STM32/multi/UART/cfg/stm32f091_nucleo64/halconf.h
+++ b/testhal/STM32/multi/UART/cfg/stm32f091_nucleo64/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/UART/cfg/stm32f303_discovery/halconf.h b/testhal/STM32/multi/UART/cfg/stm32f303_discovery/halconf.h
index c373bb8b4..7fcedb68e 100644
--- a/testhal/STM32/multi/UART/cfg/stm32f303_discovery/halconf.h
+++ b/testhal/STM32/multi/UART/cfg/stm32f303_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/UART/cfg/stm32f407_discovery/halconf.h b/testhal/STM32/multi/UART/cfg/stm32f407_discovery/halconf.h
index c373bb8b4..7fcedb68e 100644
--- a/testhal/STM32/multi/UART/cfg/stm32f407_discovery/halconf.h
+++ b/testhal/STM32/multi/UART/cfg/stm32f407_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/UART/cfg/stm32f746_discovery/halconf.h b/testhal/STM32/multi/UART/cfg/stm32f746_discovery/halconf.h
index c373bb8b4..7fcedb68e 100644
--- a/testhal/STM32/multi/UART/cfg/stm32f746_discovery/halconf.h
+++ b/testhal/STM32/multi/UART/cfg/stm32f746_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/USB_CDC/cfg/stm32f303_discovery/halconf.h b/testhal/STM32/multi/USB_CDC/cfg/stm32f303_discovery/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/multi/USB_CDC/cfg/stm32f303_discovery/halconf.h
+++ b/testhal/STM32/multi/USB_CDC/cfg/stm32f303_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/USB_CDC/cfg/stm32f407_discovery/halconf.h b/testhal/STM32/multi/USB_CDC/cfg/stm32f407_discovery/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/multi/USB_CDC/cfg/stm32f407_discovery/halconf.h
+++ b/testhal/STM32/multi/USB_CDC/cfg/stm32f407_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/USB_CDC/cfg/stm32f746_discovery/halconf.h b/testhal/STM32/multi/USB_CDC/cfg/stm32f746_discovery/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/multi/USB_CDC/cfg/stm32f746_discovery/halconf.h
+++ b/testhal/STM32/multi/USB_CDC/cfg/stm32f746_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/testhal/STM32/multi/USB_CDC/cfg/stm32l476_discovery/halconf.h b/testhal/STM32/multi/USB_CDC/cfg/stm32l476_discovery/halconf.h
index 0054fd60a..8cfc4cf4e 100644
--- a/testhal/STM32/multi/USB_CDC/cfg/stm32l476_discovery/halconf.h
+++ b/testhal/STM32/multi/USB_CDC/cfg/stm32l476_discovery/halconf.h
@@ -238,6 +238,13 @@
#define CAN_USE_SLEEP_MODE TRUE
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS FALSE
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/
diff --git a/tools/ftl/processors/conf/halconf/halconf.h.ftl b/tools/ftl/processors/conf/halconf/halconf.h.ftl
index fd7b869ac..e7b9a610c 100644
--- a/tools/ftl/processors/conf/halconf/halconf.h.ftl
+++ b/tools/ftl/processors/conf/halconf/halconf.h.ftl
@@ -249,6 +249,13 @@
#define CAN_USE_SLEEP_MODE ${doc.CAN_USE_SLEEP_MODE!"TRUE"}
#endif
+/**
+ * @brief Enforces the driver to use direct callbacks rather than OSAL events.
+ */
+#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
+#define CAN_ENFORCE_USE_CALLBACKS ${doc.CAN_ENFORCE_USE_CALLBACKS!"FALSE"}
+#endif
+
/*===========================================================================*/
/* CRY driver related settings. */
/*===========================================================================*/