diff --git a/src/main/drivers/inverter.c b/src/main/drivers/inverter.c index 1366f25010..0ef2bd3103 100644 --- a/src/main/drivers/inverter.c +++ b/src/main/drivers/inverter.c @@ -23,6 +23,8 @@ #include "platform.h" +#ifdef USE_INVERTER + #include "io/serial.h" // For SERIAL_PORT_IDENTIFIER_TO_INDEX #include "drivers/io.h" #include "drivers/serial.h" @@ -32,8 +34,6 @@ #include "inverter.h" -#ifdef USE_INVERTER - static const serialPinConfig_t *pSerialPinConfig; static void inverterSet(int identifier, bool on) diff --git a/src/main/drivers/inverter.h b/src/main/drivers/inverter.h index 3257df3e22..97d2708def 100644 --- a/src/main/drivers/inverter.h +++ b/src/main/drivers/inverter.h @@ -20,10 +20,6 @@ #pragma once -#if defined(INVERTER_PIN_UART1) || defined(INVERTER_PIN_UART2) || defined(INVERTER_PIN_UART3) || defined(INVERTER_PIN_UART4) || defined(INVERTER_PIN_UART5) || defined(INVERTER_PIN_UART6) -#define USE_INVERTER -#endif - #include "drivers/serial.h" void initInverters(const serialPinConfig_t *serialPinConfigToUse); diff --git a/src/main/drivers/serial_pinconfig.c b/src/main/drivers/serial_pinconfig.c index 7f2f149a14..c28f3c415a 100644 --- a/src/main/drivers/serial_pinconfig.c +++ b/src/main/drivers/serial_pinconfig.c @@ -24,6 +24,8 @@ #include "platform.h" +#ifdef USE_UART + #include "build/build_config.h" #include "io/serial.h" @@ -273,3 +275,4 @@ void pgResetFn_serialPinConfig(serialPinConfig_t *serialPinConfig) } } #endif +#endif diff --git a/src/main/drivers/serial_uart.c b/src/main/drivers/serial_uart.c index 660af4f4ef..826f879135 100644 --- a/src/main/drivers/serial_uart.c +++ b/src/main/drivers/serial_uart.c @@ -30,6 +30,8 @@ #include "platform.h" +#ifdef USE_UART + #include "build/build_config.h" #include "build/atomic.h" @@ -356,3 +358,4 @@ void UART8_IRQHandler(void) uartIrqHandler(s); } #endif +#endif diff --git a/src/main/drivers/serial_uart.h b/src/main/drivers/serial_uart.h index e7550c0357..ee22b64750 100644 --- a/src/main/drivers/serial_uart.h +++ b/src/main/drivers/serial_uart.h @@ -27,10 +27,6 @@ // Various serial routines return the buffer occupied size as uint8_t which would need to be extended in order to // increase size further. -#if defined(USE_UART1) || defined(USE_UART2) || defined(USE_UART3) || defined(USE_UART4) || defined(USE_UART5) || defined(USE_UART6) || defined(USE_UART7) || defined(USE_UART8) -#define USE_UART -#endif - typedef enum { UARTDEV_1 = 0, UARTDEV_2 = 1, diff --git a/src/main/drivers/serial_uart_hal.c b/src/main/drivers/serial_uart_hal.c index ab420b7c1a..1488495211 100644 --- a/src/main/drivers/serial_uart_hal.c +++ b/src/main/drivers/serial_uart_hal.c @@ -30,6 +30,8 @@ #include "platform.h" +#ifdef USE_UART + #include "build/build_config.h" #include "common/utils.h" @@ -444,3 +446,4 @@ void UART8_IRQHandler(void) uartIrqHandler(s); } #endif +#endif diff --git a/src/main/drivers/serial_uart_init.c b/src/main/drivers/serial_uart_init.c index 6936cacbec..5b8d23140f 100644 --- a/src/main/drivers/serial_uart_init.c +++ b/src/main/drivers/serial_uart_init.c @@ -34,6 +34,8 @@ #include "platform.h" +#ifdef USE_UART + #include "build/build_config.h" #include "common/utils.h" @@ -245,3 +247,4 @@ serialPort_t *uartOpen(UARTDevice_e device, serialReceiveCallbackPtr rxCallback, return (serialPort_t *)s; } +#endif diff --git a/src/main/drivers/serial_uart_pinconfig.c b/src/main/drivers/serial_uart_pinconfig.c index df0a6277f4..57df5bd965 100644 --- a/src/main/drivers/serial_uart_pinconfig.c +++ b/src/main/drivers/serial_uart_pinconfig.c @@ -32,6 +32,8 @@ #include "platform.h" +#ifdef USE_UART + #include "build/build_config.h" #include "drivers/rcc.h" @@ -67,3 +69,4 @@ void uartPinConfigure(const serialPinConfig_t *pSerialPinConfig) } } } +#endif diff --git a/src/main/drivers/serial_uart_stm32f10x.c b/src/main/drivers/serial_uart_stm32f10x.c index ad2318dd3c..64f4dbd0ba 100644 --- a/src/main/drivers/serial_uart_stm32f10x.c +++ b/src/main/drivers/serial_uart_stm32f10x.c @@ -31,6 +31,8 @@ #include "platform.h" +#ifdef USE_UART + #include "drivers/system.h" #include "drivers/io.h" #include "drivers/nvic.h" @@ -41,8 +43,6 @@ #include "drivers/serial_uart.h" #include "drivers/serial_uart_impl.h" -#ifdef USE_UART - #ifdef USE_UART1_RX_DMA # define UART1_RX_DMA_CHANNEL DMA1_Channel5 #else diff --git a/src/main/drivers/serial_uart_stm32f30x.c b/src/main/drivers/serial_uart_stm32f30x.c index 457058907c..65aedd3c44 100644 --- a/src/main/drivers/serial_uart_stm32f30x.c +++ b/src/main/drivers/serial_uart_stm32f30x.c @@ -32,6 +32,8 @@ #include "platform.h" +#ifdef USE_UART + #include "drivers/system.h" #include "drivers/io.h" #include "drivers/nvic.h" @@ -42,8 +44,6 @@ #include "drivers/serial_uart.h" #include "drivers/serial_uart_impl.h" -#ifdef USE_UART - // XXX Will DMA eventually be configurable? // XXX Do these belong here? diff --git a/src/main/drivers/serial_uart_stm32f4xx.c b/src/main/drivers/serial_uart_stm32f4xx.c index 88503aa3dc..e8cfd66560 100644 --- a/src/main/drivers/serial_uart_stm32f4xx.c +++ b/src/main/drivers/serial_uart_stm32f4xx.c @@ -27,6 +27,8 @@ #include "platform.h" +#ifdef USE_UART + #include "drivers/system.h" #include "drivers/io.h" #include "drivers/dma.h" @@ -37,8 +39,6 @@ #include "drivers/serial_uart.h" #include "drivers/serial_uart_impl.h" -#ifdef USE_UART - const uartHardware_t uartHardware[UARTDEV_COUNT] = { #ifdef USE_UART1 { diff --git a/src/main/drivers/serial_uart_stm32f7xx.c b/src/main/drivers/serial_uart_stm32f7xx.c index bbafc556f2..8cc0f9f0b6 100644 --- a/src/main/drivers/serial_uart_stm32f7xx.c +++ b/src/main/drivers/serial_uart_stm32f7xx.c @@ -27,6 +27,8 @@ #include "platform.h" +#ifdef USE_UART + #include "drivers/system.h" #include "drivers/dma.h" #include "drivers/io.h" @@ -37,8 +39,6 @@ #include "drivers/serial_uart.h" #include "drivers/serial_uart_impl.h" -#ifdef USE_UART - static void handleUsartTxDma(uartPort_t *s); const uartHardware_t uartHardware[UARTDEV_COUNT] = { diff --git a/src/main/interface/cli.c b/src/main/interface/cli.c index db65d5d73a..5cf455ca50 100644 --- a/src/main/interface/cli.c +++ b/src/main/interface/cli.c @@ -3775,8 +3775,10 @@ const cliResourceValue_t resourceTable[] = { #ifdef USE_LED_STRIP DEFS( OWNER_LED_STRIP, PG_LED_STRIP_CONFIG, ledStripConfig_t, ioTag ), #endif +#ifdef USE_UART DEFA( OWNER_SERIAL_TX, PG_SERIAL_PIN_CONFIG, serialPinConfig_t, ioTagTx[0], SERIAL_PORT_MAX_INDEX ), DEFA( OWNER_SERIAL_RX, PG_SERIAL_PIN_CONFIG, serialPinConfig_t, ioTagRx[0], SERIAL_PORT_MAX_INDEX ), +#endif #ifdef USE_INVERTER DEFA( OWNER_INVERTER, PG_SERIAL_PIN_CONFIG, serialPinConfig_t, ioTagInverter[0], SERIAL_PORT_MAX_INDEX ), #endif diff --git a/src/main/target/common_defaults_post.h b/src/main/target/common_defaults_post.h index 84b742467f..d78d755b7f 100644 --- a/src/main/target/common_defaults_post.h +++ b/src/main/target/common_defaults_post.h @@ -322,3 +322,13 @@ #endif #endif #endif + +#if defined(USE_UART1) || defined(USE_UART2) || defined(USE_UART3) || defined(USE_UART4) || defined(USE_UART5) || defined(USE_UART6) || defined(USE_UART7) || defined(USE_UART8) +#define USE_UART +#endif + +#ifdef USE_UART +#if defined(INVERTER_PIN_UART1) || defined(INVERTER_PIN_UART2) || defined(INVERTER_PIN_UART3) || defined(INVERTER_PIN_UART4) || defined(INVERTER_PIN_UART5) || defined(INVERTER_PIN_UART6) +#define USE_INVERTER +#endif +#endif diff --git a/src/main/target/common_pre.h b/src/main/target/common_pre.h index 10965941d2..49dd029380 100644 --- a/src/main/target/common_pre.h +++ b/src/main/target/common_pre.h @@ -122,6 +122,7 @@ #endif #define USE_BRUSHED_ESC_AUTODETECT // Detect if brushed motors are connected and set defaults appropriately to avoid motors spinning on boot + #define USE_CLI #define USE_GYRO_REGISTER_DUMP // Adds gyroregisters command to cli to dump configured register values #define USE_PPM