aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--demos/AVR/NIL-ARDUINOMEGA/halconf.h20
-rw-r--r--demos/AVR/NIL-ARDUINOUNO/halconf.h20
-rw-r--r--demos/AVR/RT-ARDUINOMEGA/halconf.h20
-rw-r--r--demos/AVR/RT-ARDUINOUNO/halconf.h20
-rw-r--r--demos/KINETIS/RT-FREEDOM-K20D50M-EXT/halconf.h20
-rw-r--r--demos/KINETIS/RT-FREEDOM-K20D50M/halconf.h20
-rw-r--r--demos/KINETIS/RT-FREEDOM-KL25Z-EXT/halconf.h20
-rw-r--r--demos/KINETIS/RT-FREEDOM-KL25Z/halconf.h20
-rw-r--r--demos/KINETIS/RT-MCHCK-K20-GPT/halconf.h20
-rw-r--r--demos/KINETIS/RT-MCHCK-K20-SPI/halconf.h20
-rw-r--r--demos/KINETIS/RT-TEENSY3/halconf.h20
-rw-r--r--demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h20
-rw-r--r--demos/SPC5/NIL-SPC560D-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC560B-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC560D-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC560P-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC563M-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC564A-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC56EC-EVB/halconf.h20
-rw-r--r--demos/SPC5/RT-SPC56EL-EVB/halconf.h20
-rw-r--r--demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h20
-rw-r--r--demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F030R8-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F051-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F072-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F072RB-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F091RC-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F100-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F103RB-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F302R8-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F303-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F334R8-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F401RE-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F407-DISCOVERY-MEMS/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F407-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F407-OLIMEX_E407-LWIP-FATFS-USB/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F411RE-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F429-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F746G-DISCOVERY-LWIP-FATFS-USB/halconf.h20
-rw-r--r--demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32L053R8-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32L152-DISCOVERY/halconf.h20
-rw-r--r--demos/STM32/RT-STM32L152RE-NUCLEO/halconf.h20
-rw-r--r--demos/STM32/RT-STM32L476RG-NUCLEO/halconf.h20
-rw-r--r--demos/various/RT-Win32-Simulator/halconf.h20
-rw-r--r--os/hal/include/uart.h4
-rw-r--r--os/hal/templates/halconf.h20
-rw-r--r--test/rt/testbuild/halconf.h20
-rw-r--r--testhal/AVR/GPT/halconf.h20
-rw-r--r--testhal/AVR/I2C/halconf.h20
-rw-r--r--testhal/AVR/ICU/halconf.h20
-rw-r--r--testhal/AVR/PWM/halconf.h20
-rw-r--r--testhal/KINETIS/ADC/halconf.h20
-rw-r--r--testhal/KINETIS/I2C/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/CAN/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/UART/halconf.h20
-rw-r--r--testhal/STM32/STM32F0xx/USB_CDC/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/CAN/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/I2C/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/RTC/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/UART/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/USB_CDC/halconf.h20
-rw-r--r--testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/ADC_DUAL/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/CAN/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/DAC/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/IRQ_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/UART/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/USB_CDC/halconf.h20
-rw-r--r--testhal/STM32/STM32F30x/USB_CDC_IAD/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/CAN/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/I2C/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/IRQ_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/SDADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/UART/halconf.h20
-rw-r--r--testhal/STM32/STM32F37x/USB_CDC/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/CAN/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/DAC/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/DMA_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/GPT/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/I2C/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/I2S/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/RTC/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/SDC/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/UART/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/USB_CDC/halconf.h20
-rw-r--r--testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h20
-rw-r--r--testhal/STM32/STM32F7xx/GPT-ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32F7xx/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32F7xx/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32F7xx/USB_CDC/halconf.h20
-rw-r--r--testhal/STM32/STM32L0xx/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32L0xx/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32L0xx/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/ADC/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/DAC/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/EXT/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/PWM-ICU/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/SPI/halconf.h20
-rw-r--r--testhal/STM32/STM32L1xx/UART/halconf.h20
140 files changed, 2782 insertions, 2 deletions
diff --git a/demos/AVR/NIL-ARDUINOMEGA/halconf.h b/demos/AVR/NIL-ARDUINOMEGA/halconf.h
index 7657219de..0f76cbf66 100644
--- a/demos/AVR/NIL-ARDUINOMEGA/halconf.h
+++ b/demos/AVR/NIL-ARDUINOMEGA/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/AVR/NIL-ARDUINOUNO/halconf.h b/demos/AVR/NIL-ARDUINOUNO/halconf.h
index 7657219de..0f76cbf66 100644
--- a/demos/AVR/NIL-ARDUINOUNO/halconf.h
+++ b/demos/AVR/NIL-ARDUINOUNO/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/AVR/RT-ARDUINOMEGA/halconf.h b/demos/AVR/RT-ARDUINOMEGA/halconf.h
index 7657219de..0f76cbf66 100644
--- a/demos/AVR/RT-ARDUINOMEGA/halconf.h
+++ b/demos/AVR/RT-ARDUINOMEGA/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/AVR/RT-ARDUINOUNO/halconf.h b/demos/AVR/RT-ARDUINOUNO/halconf.h
index 7657219de..0f76cbf66 100644
--- a/demos/AVR/RT-ARDUINOUNO/halconf.h
+++ b/demos/AVR/RT-ARDUINOUNO/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-FREEDOM-K20D50M-EXT/halconf.h b/demos/KINETIS/RT-FREEDOM-K20D50M-EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/demos/KINETIS/RT-FREEDOM-K20D50M-EXT/halconf.h
+++ b/demos/KINETIS/RT-FREEDOM-K20D50M-EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-FREEDOM-K20D50M/halconf.h b/demos/KINETIS/RT-FREEDOM-K20D50M/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/KINETIS/RT-FREEDOM-K20D50M/halconf.h
+++ b/demos/KINETIS/RT-FREEDOM-K20D50M/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-FREEDOM-KL25Z-EXT/halconf.h b/demos/KINETIS/RT-FREEDOM-KL25Z-EXT/halconf.h
index c0cff44e9..76fcec1c8 100644
--- a/demos/KINETIS/RT-FREEDOM-KL25Z-EXT/halconf.h
+++ b/demos/KINETIS/RT-FREEDOM-KL25Z-EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-FREEDOM-KL25Z/halconf.h b/demos/KINETIS/RT-FREEDOM-KL25Z/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/KINETIS/RT-FREEDOM-KL25Z/halconf.h
+++ b/demos/KINETIS/RT-FREEDOM-KL25Z/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-MCHCK-K20-GPT/halconf.h b/demos/KINETIS/RT-MCHCK-K20-GPT/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/demos/KINETIS/RT-MCHCK-K20-GPT/halconf.h
+++ b/demos/KINETIS/RT-MCHCK-K20-GPT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-MCHCK-K20-SPI/halconf.h b/demos/KINETIS/RT-MCHCK-K20-SPI/halconf.h
index e9ab9d776..d3fc02edf 100644
--- a/demos/KINETIS/RT-MCHCK-K20-SPI/halconf.h
+++ b/demos/KINETIS/RT-MCHCK-K20-SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/KINETIS/RT-TEENSY3/halconf.h b/demos/KINETIS/RT-TEENSY3/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/KINETIS/RT-TEENSY3/halconf.h
+++ b/demos/KINETIS/RT-TEENSY3/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h b/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h
+++ b/demos/LPC21xx/RT-LPC214x-OLIMEX/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/NIL-SPC560D-EVB/halconf.h b/demos/SPC5/NIL-SPC560D-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/NIL-SPC560D-EVB/halconf.h
+++ b/demos/SPC5/NIL-SPC560D-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC560B-EVB/halconf.h b/demos/SPC5/RT-SPC560B-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC560B-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC560B-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC560D-EVB/halconf.h b/demos/SPC5/RT-SPC560D-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC560D-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC560D-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC560P-EVB/halconf.h b/demos/SPC5/RT-SPC560P-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC560P-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC560P-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC563M-EVB/halconf.h b/demos/SPC5/RT-SPC563M-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC563M-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC563M-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC564A-EVB/halconf.h b/demos/SPC5/RT-SPC564A-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC564A-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC564A-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC56EC-EVB/halconf.h b/demos/SPC5/RT-SPC56EC-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC56EC-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC56EC-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/SPC5/RT-SPC56EL-EVB/halconf.h b/demos/SPC5/RT-SPC56EL-EVB/halconf.h
index e6fd4db5a..cb15f1d16 100644
--- a/demos/SPC5/RT-SPC56EL-EVB/halconf.h
+++ b/demos/SPC5/RT-SPC56EL-EVB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h b/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/CMSIS-STM32F407-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h b/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/HAL-STM32F407-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F051-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F100-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32F303-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h b/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h
+++ b/demos/STM32/NIL-STM32F373-STM32373C_EVAL/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h b/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h
+++ b/demos/STM32/NIL-STM32L152-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F030R8-NUCLEO/halconf.h b/demos/STM32/RT-STM32F030R8-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F030R8-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F030R8-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h b/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32F031K6-NUCLEO32/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h b/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32F042K6-NUCLEO32/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F051-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F072-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F072RB-NUCLEO/halconf.h b/demos/STM32/RT-STM32F072RB-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F072RB-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F072RB-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F091RC-NUCLEO/halconf.h b/demos/STM32/RT-STM32F091RC-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F091RC-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F091RC-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F100-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h b/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h
+++ b/demos/STM32/RT-STM32F103-MAPLEMINI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h b/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h
+++ b/demos/STM32/RT-STM32F103-OLIMEX_STM32_P103/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F103RB-NUCLEO/halconf.h b/demos/STM32/RT-STM32F103RB-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F103RB-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F103RB-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h b/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F103_INEMO_DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F302R8-NUCLEO/halconf.h b/demos/STM32/RT-STM32F302R8-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F302R8-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F302R8-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F303-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h b/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h
+++ b/demos/STM32/RT-STM32F303K8-NUCLEO32/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F334R8-NUCLEO/halconf.h b/demos/STM32/RT-STM32F334R8-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F334R8-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F334R8-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h b/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h
+++ b/demos/STM32/RT-STM32F373-STM32373C_EVAL/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F401C-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F401RE-NUCLEO/halconf.h b/demos/STM32/RT-STM32F401RE-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F401RE-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F401RE-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h b/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h
index 941474ac0..7e347ea0e 100644
--- a/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h
+++ b/demos/STM32/RT-STM32F407-DISCOVERY-G++/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F407-DISCOVERY-MEMS/halconf.h b/demos/STM32/RT-STM32F407-DISCOVERY-MEMS/halconf.h
index 563a09e39..d020dd16e 100644
--- a/demos/STM32/RT-STM32F407-DISCOVERY-MEMS/halconf.h
+++ b/demos/STM32/RT-STM32F407-DISCOVERY-MEMS/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F407-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F407-OLIMEX_E407-LWIP-FATFS-USB/halconf.h b/demos/STM32/RT-STM32F407-OLIMEX_E407-LWIP-FATFS-USB/halconf.h
index 1b9d1e8b7..a00a2284f 100644
--- a/demos/STM32/RT-STM32F407-OLIMEX_E407-LWIP-FATFS-USB/halconf.h
+++ b/demos/STM32/RT-STM32F407-OLIMEX_E407-LWIP-FATFS-USB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F411RE-NUCLEO/halconf.h b/demos/STM32/RT-STM32F411RE-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F411RE-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32F411RE-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F429-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F746G-DISCOVERY-LWIP-FATFS-USB/halconf.h b/demos/STM32/RT-STM32F746G-DISCOVERY-LWIP-FATFS-USB/halconf.h
index d14d03c01..bc05b82e6 100644
--- a/demos/STM32/RT-STM32F746G-DISCOVERY-LWIP-FATFS-USB/halconf.h
+++ b/demos/STM32/RT-STM32F746G-DISCOVERY-LWIP-FATFS-USB/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h b/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32F746G-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32L053R8-NUCLEO/halconf.h b/demos/STM32/RT-STM32L053R8-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32L053R8-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32L053R8-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h b/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h
+++ b/demos/STM32/RT-STM32L152-DISCOVERY/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32L152RE-NUCLEO/halconf.h b/demos/STM32/RT-STM32L152RE-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32L152RE-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32L152RE-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/STM32/RT-STM32L476RG-NUCLEO/halconf.h b/demos/STM32/RT-STM32L476RG-NUCLEO/halconf.h
index 3e61eeaf9..d2e1e6b6b 100644
--- a/demos/STM32/RT-STM32L476RG-NUCLEO/halconf.h
+++ b/demos/STM32/RT-STM32L476RG-NUCLEO/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/demos/various/RT-Win32-Simulator/halconf.h b/demos/various/RT-Win32-Simulator/halconf.h
index 73766ec0d..dff421acc 100644
--- a/demos/various/RT-Win32-Simulator/halconf.h
+++ b/demos/various/RT-Win32-Simulator/halconf.h
@@ -321,6 +321,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/os/hal/include/uart.h b/os/hal/include/uart.h
index f619599d9..43afcd7d9 100644
--- a/os/hal/include/uart.h
+++ b/os/hal/include/uart.h
@@ -56,7 +56,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
-#define UART_USE_WAIT TRUE
+#define UART_USE_WAIT FALSE
#endif
/**
@@ -64,7 +64,7 @@
* @note Disabling this option saves both code and data space.
*/
#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
-#define UART_USE_MUTUAL_EXCLUSION TRUE
+#define UART_USE_MUTUAL_EXCLUSION FALSE
#endif
/** @} */
diff --git a/os/hal/templates/halconf.h b/os/hal/templates/halconf.h
index 568ae7db0..843f0cc34 100644
--- a/os/hal/templates/halconf.h
+++ b/os/hal/templates/halconf.h
@@ -369,6 +369,26 @@
#endif
/** @} */
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/test/rt/testbuild/halconf.h b/test/rt/testbuild/halconf.h
index 4ee671200..252f43f6b 100644
--- a/test/rt/testbuild/halconf.h
+++ b/test/rt/testbuild/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/AVR/GPT/halconf.h b/testhal/AVR/GPT/halconf.h
index 64dfa2e14..92fe43324 100644
--- a/testhal/AVR/GPT/halconf.h
+++ b/testhal/AVR/GPT/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/AVR/I2C/halconf.h b/testhal/AVR/I2C/halconf.h
index 4d2ae7f36..6c66e89b7 100644
--- a/testhal/AVR/I2C/halconf.h
+++ b/testhal/AVR/I2C/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/AVR/ICU/halconf.h b/testhal/AVR/ICU/halconf.h
index c988f7090..041f09027 100644
--- a/testhal/AVR/ICU/halconf.h
+++ b/testhal/AVR/ICU/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/AVR/PWM/halconf.h b/testhal/AVR/PWM/halconf.h
index 2a969bbe1..b86049d8a 100644
--- a/testhal/AVR/PWM/halconf.h
+++ b/testhal/AVR/PWM/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/KINETIS/ADC/halconf.h b/testhal/KINETIS/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/KINETIS/ADC/halconf.h
+++ b/testhal/KINETIS/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/KINETIS/I2C/halconf.h b/testhal/KINETIS/I2C/halconf.h
index 0995ecd7c..d7b01bac9 100644
--- a/testhal/KINETIS/I2C/halconf.h
+++ b/testhal/KINETIS/I2C/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/ADC/halconf.h b/testhal/STM32/STM32F0xx/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F0xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F0xx/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/CAN/halconf.h b/testhal/STM32/STM32F0xx/CAN/halconf.h
index 98e90235b..9578c0811 100644
--- a/testhal/STM32/STM32F0xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F0xx/CAN/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/EXT/halconf.h b/testhal/STM32/STM32F0xx/EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/testhal/STM32/STM32F0xx/EXT/halconf.h
+++ b/testhal/STM32/STM32F0xx/EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F0xx/IRQ_STORM/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h
index 39a82c74f..543d7aa61 100644
--- a/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F0xx/PWM-ICU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/SPI/halconf.h b/testhal/STM32/STM32F0xx/SPI/halconf.h
index d06919a64..a73333cec 100644
--- a/testhal/STM32/STM32F0xx/SPI/halconf.h
+++ b/testhal/STM32/STM32F0xx/SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/UART/halconf.h b/testhal/STM32/STM32F0xx/UART/halconf.h
index ef46a7576..1dff6f15f 100644
--- a/testhal/STM32/STM32F0xx/UART/halconf.h
+++ b/testhal/STM32/STM32F0xx/UART/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F0xx/USB_CDC/halconf.h b/testhal/STM32/STM32F0xx/USB_CDC/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/testhal/STM32/STM32F0xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F0xx/USB_CDC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/ADC/halconf.h b/testhal/STM32/STM32F1xx/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F1xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F1xx/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/CAN/halconf.h b/testhal/STM32/STM32F1xx/CAN/halconf.h
index 98e90235b..9578c0811 100644
--- a/testhal/STM32/STM32F1xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F1xx/CAN/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/EXT/halconf.h b/testhal/STM32/STM32F1xx/EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/testhal/STM32/STM32F1xx/EXT/halconf.h
+++ b/testhal/STM32/STM32F1xx/EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/I2C/halconf.h b/testhal/STM32/STM32F1xx/I2C/halconf.h
index 0995ecd7c..d7b01bac9 100644
--- a/testhal/STM32/STM32F1xx/I2C/halconf.h
+++ b/testhal/STM32/STM32F1xx/I2C/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F1xx/IRQ_STORM/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h
index 39a82c74f..543d7aa61 100644
--- a/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F1xx/PWM-ICU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/RTC/halconf.h b/testhal/STM32/STM32F1xx/RTC/halconf.h
index b91773ea2..93802597a 100644
--- a/testhal/STM32/STM32F1xx/RTC/halconf.h
+++ b/testhal/STM32/STM32F1xx/RTC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/SPI/halconf.h b/testhal/STM32/STM32F1xx/SPI/halconf.h
index 270730ebc..27279e5ee 100644
--- a/testhal/STM32/STM32F1xx/SPI/halconf.h
+++ b/testhal/STM32/STM32F1xx/SPI/halconf.h
@@ -328,6 +328,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/UART/halconf.h b/testhal/STM32/STM32F1xx/UART/halconf.h
index ef46a7576..1dff6f15f 100644
--- a/testhal/STM32/STM32F1xx/UART/halconf.h
+++ b/testhal/STM32/STM32F1xx/UART/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/USB_CDC/halconf.h b/testhal/STM32/STM32F1xx/USB_CDC/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/testhal/STM32/STM32F1xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F1xx/USB_CDC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h b/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h
+++ b/testhal/STM32/STM32F1xx/USB_CDC_F107/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/ADC/halconf.h b/testhal/STM32/STM32F30x/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F30x/ADC/halconf.h
+++ b/testhal/STM32/STM32F30x/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/ADC_DUAL/halconf.h b/testhal/STM32/STM32F30x/ADC_DUAL/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F30x/ADC_DUAL/halconf.h
+++ b/testhal/STM32/STM32F30x/ADC_DUAL/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/CAN/halconf.h b/testhal/STM32/STM32F30x/CAN/halconf.h
index 98e90235b..9578c0811 100644
--- a/testhal/STM32/STM32F30x/CAN/halconf.h
+++ b/testhal/STM32/STM32F30x/CAN/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/DAC/halconf.h b/testhal/STM32/STM32F30x/DAC/halconf.h
index 28bd0e52d..2b64a1a13 100644
--- a/testhal/STM32/STM32F30x/DAC/halconf.h
+++ b/testhal/STM32/STM32F30x/DAC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/EXT/halconf.h b/testhal/STM32/STM32F30x/EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/testhal/STM32/STM32F30x/EXT/halconf.h
+++ b/testhal/STM32/STM32F30x/EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/IRQ_STORM/halconf.h b/testhal/STM32/STM32F30x/IRQ_STORM/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/testhal/STM32/STM32F30x/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F30x/IRQ_STORM/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/PWM-ICU/halconf.h b/testhal/STM32/STM32F30x/PWM-ICU/halconf.h
index 39a82c74f..543d7aa61 100644
--- a/testhal/STM32/STM32F30x/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F30x/PWM-ICU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/SPI/halconf.h b/testhal/STM32/STM32F30x/SPI/halconf.h
index d06919a64..a73333cec 100644
--- a/testhal/STM32/STM32F30x/SPI/halconf.h
+++ b/testhal/STM32/STM32F30x/SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/UART/halconf.h b/testhal/STM32/STM32F30x/UART/halconf.h
index ef46a7576..1dff6f15f 100644
--- a/testhal/STM32/STM32F30x/UART/halconf.h
+++ b/testhal/STM32/STM32F30x/UART/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/USB_CDC/halconf.h b/testhal/STM32/STM32F30x/USB_CDC/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/testhal/STM32/STM32F30x/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F30x/USB_CDC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F30x/USB_CDC_IAD/halconf.h b/testhal/STM32/STM32F30x/USB_CDC_IAD/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/testhal/STM32/STM32F30x/USB_CDC_IAD/halconf.h
+++ b/testhal/STM32/STM32F30x/USB_CDC_IAD/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/ADC/halconf.h b/testhal/STM32/STM32F37x/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F37x/ADC/halconf.h
+++ b/testhal/STM32/STM32F37x/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/CAN/halconf.h b/testhal/STM32/STM32F37x/CAN/halconf.h
index 98e90235b..9578c0811 100644
--- a/testhal/STM32/STM32F37x/CAN/halconf.h
+++ b/testhal/STM32/STM32F37x/CAN/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/EXT/halconf.h b/testhal/STM32/STM32F37x/EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/testhal/STM32/STM32F37x/EXT/halconf.h
+++ b/testhal/STM32/STM32F37x/EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/I2C/halconf.h b/testhal/STM32/STM32F37x/I2C/halconf.h
index 0995ecd7c..d7b01bac9 100644
--- a/testhal/STM32/STM32F37x/I2C/halconf.h
+++ b/testhal/STM32/STM32F37x/I2C/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h b/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F37x/IRQ_STORM/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/PWM-ICU/halconf.h b/testhal/STM32/STM32F37x/PWM-ICU/halconf.h
index 39a82c74f..543d7aa61 100644
--- a/testhal/STM32/STM32F37x/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F37x/PWM-ICU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/SDADC/halconf.h b/testhal/STM32/STM32F37x/SDADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F37x/SDADC/halconf.h
+++ b/testhal/STM32/STM32F37x/SDADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/SPI/halconf.h b/testhal/STM32/STM32F37x/SPI/halconf.h
index d06919a64..a73333cec 100644
--- a/testhal/STM32/STM32F37x/SPI/halconf.h
+++ b/testhal/STM32/STM32F37x/SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/UART/halconf.h b/testhal/STM32/STM32F37x/UART/halconf.h
index ef46a7576..1dff6f15f 100644
--- a/testhal/STM32/STM32F37x/UART/halconf.h
+++ b/testhal/STM32/STM32F37x/UART/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F37x/USB_CDC/halconf.h b/testhal/STM32/STM32F37x/USB_CDC/halconf.h
index 2472ba7ed..eeacd2c4f 100644
--- a/testhal/STM32/STM32F37x/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F37x/USB_CDC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/ADC/halconf.h b/testhal/STM32/STM32F4xx/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32F4xx/ADC/halconf.h
+++ b/testhal/STM32/STM32F4xx/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/CAN/halconf.h b/testhal/STM32/STM32F4xx/CAN/halconf.h
index 98e90235b..9578c0811 100644
--- a/testhal/STM32/STM32F4xx/CAN/halconf.h
+++ b/testhal/STM32/STM32F4xx/CAN/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/DAC/halconf.h b/testhal/STM32/STM32F4xx/DAC/halconf.h
index 28bd0e52d..2b64a1a13 100644
--- a/testhal/STM32/STM32F4xx/DAC/halconf.h
+++ b/testhal/STM32/STM32F4xx/DAC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h b/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h
index 28bd0e52d..2b64a1a13 100644
--- a/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h
+++ b/testhal/STM32/STM32F4xx/DAC_DUAL/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h b/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h
index e3468a26f..f6323e100 100644
--- a/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h
+++ b/testhal/STM32/STM32F4xx/DMA_STORM/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/EXT/halconf.h b/testhal/STM32/STM32F4xx/EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/testhal/STM32/STM32F4xx/EXT/halconf.h
+++ b/testhal/STM32/STM32F4xx/EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/GPT/halconf.h b/testhal/STM32/STM32F4xx/GPT/halconf.h
index d2d78d09b..45bc2fd02 100644
--- a/testhal/STM32/STM32F4xx/GPT/halconf.h
+++ b/testhal/STM32/STM32F4xx/GPT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/I2C/halconf.h b/testhal/STM32/STM32F4xx/I2C/halconf.h
index 629420ceb..3c16df4ec 100644
--- a/testhal/STM32/STM32F4xx/I2C/halconf.h
+++ b/testhal/STM32/STM32F4xx/I2C/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/I2S/halconf.h b/testhal/STM32/STM32F4xx/I2S/halconf.h
index 0f06c8be0..c7a39252f 100644
--- a/testhal/STM32/STM32F4xx/I2S/halconf.h
+++ b/testhal/STM32/STM32F4xx/I2S/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32F4xx/IRQ_STORM/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h b/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h
index 102d533f6..908ee5f1b 100644
--- a/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h
+++ b/testhal/STM32/STM32F4xx/IRQ_STORM_FPU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h
index 39a82c74f..543d7aa61 100644
--- a/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F4xx/PWM-ICU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/RTC/halconf.h b/testhal/STM32/STM32F4xx/RTC/halconf.h
index 780204abe..52cfeb7b9 100644
--- a/testhal/STM32/STM32F4xx/RTC/halconf.h
+++ b/testhal/STM32/STM32F4xx/RTC/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/SDC/halconf.h b/testhal/STM32/STM32F4xx/SDC/halconf.h
index 8b1b058b0..a2421b0e2 100644
--- a/testhal/STM32/STM32F4xx/SDC/halconf.h
+++ b/testhal/STM32/STM32F4xx/SDC/halconf.h
@@ -343,6 +343,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/SPI/halconf.h b/testhal/STM32/STM32F4xx/SPI/halconf.h
index d06919a64..a73333cec 100644
--- a/testhal/STM32/STM32F4xx/SPI/halconf.h
+++ b/testhal/STM32/STM32F4xx/SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/UART/halconf.h b/testhal/STM32/STM32F4xx/UART/halconf.h
index ef46a7576..1dff6f15f 100644
--- a/testhal/STM32/STM32F4xx/UART/halconf.h
+++ b/testhal/STM32/STM32F4xx/UART/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/USB_CDC/halconf.h b/testhal/STM32/STM32F4xx/USB_CDC/halconf.h
index 563571fa9..8a43bd572 100644
--- a/testhal/STM32/STM32F4xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F4xx/USB_CDC/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h b/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h
index 563571fa9..8a43bd572 100644
--- a/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h
+++ b/testhal/STM32/STM32F4xx/USB_CDC_IAD/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h b/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h
index f740b64b0..d98c7ce70 100644
--- a/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h
+++ b/testhal/STM32/STM32F7xx/GPT-ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h b/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h
index 9e86a15a3..22b1f3c7c 100644
--- a/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32F7xx/PWM-ICU/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F7xx/SPI/halconf.h b/testhal/STM32/STM32F7xx/SPI/halconf.h
index e9ab9d776..d3fc02edf 100644
--- a/testhal/STM32/STM32F7xx/SPI/halconf.h
+++ b/testhal/STM32/STM32F7xx/SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32F7xx/USB_CDC/halconf.h b/testhal/STM32/STM32F7xx/USB_CDC/halconf.h
index 563571fa9..8a43bd572 100644
--- a/testhal/STM32/STM32F7xx/USB_CDC/halconf.h
+++ b/testhal/STM32/STM32F7xx/USB_CDC/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L0xx/ADC/halconf.h b/testhal/STM32/STM32L0xx/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32L0xx/ADC/halconf.h
+++ b/testhal/STM32/STM32L0xx/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L0xx/EXT/halconf.h b/testhal/STM32/STM32L0xx/EXT/halconf.h
index b5620e2a3..e99d770c6 100644
--- a/testhal/STM32/STM32L0xx/EXT/halconf.h
+++ b/testhal/STM32/STM32L0xx/EXT/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L0xx/SPI/halconf.h b/testhal/STM32/STM32L0xx/SPI/halconf.h
index d06919a64..a73333cec 100644
--- a/testhal/STM32/STM32L0xx/SPI/halconf.h
+++ b/testhal/STM32/STM32L0xx/SPI/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/ADC/halconf.h b/testhal/STM32/STM32L1xx/ADC/halconf.h
index d3f8bfef7..4b733c4bc 100644
--- a/testhal/STM32/STM32L1xx/ADC/halconf.h
+++ b/testhal/STM32/STM32L1xx/ADC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/DAC/halconf.h b/testhal/STM32/STM32L1xx/DAC/halconf.h
index 28bd0e52d..2b64a1a13 100644
--- a/testhal/STM32/STM32L1xx/DAC/halconf.h
+++ b/testhal/STM32/STM32L1xx/DAC/halconf.h
@@ -329,6 +329,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/EXT/halconf.h b/testhal/STM32/STM32L1xx/EXT/halconf.h
index 4f413ea78..24d187902 100644
--- a/testhal/STM32/STM32L1xx/EXT/halconf.h
+++ b/testhal/STM32/STM32L1xx/EXT/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h b/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h
index 6d02ed7b5..3ca8a5aba 100644
--- a/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h
+++ b/testhal/STM32/STM32L1xx/IRQ_STORM/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h b/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h
index 528645b69..59d549321 100644
--- a/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h
+++ b/testhal/STM32/STM32L1xx/PWM-ICU/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/SPI/halconf.h b/testhal/STM32/STM32L1xx/SPI/halconf.h
index 00840c771..3ca5500d7 100644
--- a/testhal/STM32/STM32L1xx/SPI/halconf.h
+++ b/testhal/STM32/STM32L1xx/SPI/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */
diff --git a/testhal/STM32/STM32L1xx/UART/halconf.h b/testhal/STM32/STM32L1xx/UART/halconf.h
index fb49cfcdf..f5078a33d 100644
--- a/testhal/STM32/STM32L1xx/UART/halconf.h
+++ b/testhal/STM32/STM32L1xx/UART/halconf.h
@@ -336,6 +336,26 @@
#define SPI_USE_MUTUAL_EXCLUSION TRUE
#endif
+/*===========================================================================*/
+/* UART driver related settings. */
+/*===========================================================================*/
+
+/**
+ * @brief Enables synchronous APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
+#define UART_USE_WAIT FALSE
+#endif
+
+/**
+ * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
+ * @note Disabling this option saves both code and data space.
+ */
+#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
+#define UART_USE_MUTUAL_EXCLUSION FALSE
+#endif
+
#endif /* _HALCONF_H_ */
/** @} */