This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new c792601963b imxrt/serial: Fix uart registration order when no console
defined.
c792601963b is described below
commit c792601963be15f998c0bd1cf2784c74f0e8bfdd
Author: dirksavage88 <[email protected]>
AuthorDate: Fri Oct 10 10:34:30 2025 -0400
imxrt/serial: Fix uart registration order when no console defined.
* Explicit registration of ttys0 when no console defined
* Fixes overwriting registration of lpuart1 on ttys1 when no console on
ttys0
* Change regstration logic to check for console assignment
* See issue 17116
Signed-off-by: dirksavage88 <[email protected]>
---
.../src/imxrt/hardware/rt106x/imxrt106x_pinmux.h | 1 -
arch/arm/src/imxrt/imxrt_serial.c | 796 ++++++++++++++-------
2 files changed, 552 insertions(+), 245 deletions(-)
diff --git a/arch/arm/src/imxrt/hardware/rt106x/imxrt106x_pinmux.h
b/arch/arm/src/imxrt/hardware/rt106x/imxrt106x_pinmux.h
index f51fa6c8cbb..3076d88dee3 100644
--- a/arch/arm/src/imxrt/hardware/rt106x/imxrt106x_pinmux.h
+++ b/arch/arm/src/imxrt/hardware/rt106x/imxrt106x_pinmux.h
@@ -761,7 +761,6 @@
#define GPIO_LPUART6_RX_2 (GPIO_PERIPH | GPIO_ALT2 |
GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_26_INDEX))
#define GPIO_LPUART6_TX_1 (GPIO_PERIPH | GPIO_ALT2 |
GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_B0_02_INDEX))
#define GPIO_LPUART6_TX_2 (GPIO_PERIPH | GPIO_ALT2 |
GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_25_INDEX))
-#define GPIO_LPUART6_TX_2 (GPIO_PERIPH | GPIO_ALT2 |
GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_25_INDEX))
#define GPIO_LPUART7_CTS_1 (GPIO_PERIPH | GPIO_ALT2 |
GPIO_PADMUX(IMXRT_PADMUX_GPIO_SD_B1_06_INDEX))
#define GPIO_LPUART7_RTS_2 (GPIO_PERIPH | GPIO_ALT2 |
GPIO_PADMUX(IMXRT_PADMUX_GPIO_SD_B1_07_INDEX))
diff --git a/arch/arm/src/imxrt/imxrt_serial.c
b/arch/arm/src/imxrt/imxrt_serial.c
index 68b868290a5..e37c934b085 100644
--- a/arch/arm/src/imxrt/imxrt_serial.c
+++ b/arch/arm/src/imxrt/imxrt_serial.c
@@ -355,364 +355,670 @@
# endif
#else
# undef CONSOLE_DEV /* No console */
-# if defined(CONFIG_IMXRT_LPUART1)
-# define TTYS0_DEV g_lpuart1priv /* LPUART1 is ttyS0 */
-# define UART1_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART2)
-# define TTYS0_DEV g_lpuart2priv /* LPUART2 is ttyS0 */
-# define UART2_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART3)
-# define TTYS0_DEV g_lpuart3priv /* LPUART3 is ttyS0 */
-# define UART3_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART4)
-# define TTYS0_DEV g_lpuart4priv /* LPUART4 is ttyS0 */
-# define UART4_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART5)
-# define TTYS0_DEV g_lpuart5priv /* LPUART5 is ttyS0 */
-# define UART5_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART6)
-# define TTYS0_DEV g_lpuart6priv /* LPUART6 is ttyS0 */
-# define UART6_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART7)
-# define TTYS0_DEV g_lpuart7priv /* LPUART7 is ttyS0 */
-# define UART7_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART8)
-# define TTYS0_DEV g_lpuart8priv /* LPUART8 is ttyS0 */
-# define UART8_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART9)
-# define TTYS0_DEV g_lpuart9priv /* LPUART9 is ttyS0 */
-# define LPUART9_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART10)
-# define TTYS0_DEV g_lpuart10priv /* LPUART10 is ttyS0 */
-# define LPUART10_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART11)
-# define TTYS0_DEV g_lpuart11priv /* LPUART11 is ttyS0 */
-# define LPUART11_ASSIGNED 1
-# elif defined(CONFIG_IMXRT_LPUART12)
-# define TTYS0_DEV g_lpuart12priv /* LPUART12 is ttyS0 */
-# define LPUART12_ASSIGNED 1
-# endif
#endif
#if defined(SERIAL_HAVE_CONSOLE_RXDMA) || defined(SERIAL_HAVE_CONSOLE_TXDMA)
# define SERIAL_HAVE_CONSOLE_DMA
#endif
-/* Pick ttys1. This could be any of UART1-12 excluding the console UART.
- * One of UART1-12 could be the console; one of UART1-12 has already been
- * assigned to ttys0.
- */
+/* Pick ttys0 or ttys1. This could be any of UART1-12. */
#if defined(CONFIG_IMXRT_LPUART1) && !defined(LPUART1_ASSIGNED)
-# define TTYS1_DEV g_lpuart1priv /* LPUART1 is ttyS1 */
-# define LPUART1_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart1priv /* LPUART1 is ttyS1 */
+# define LPUART1_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart1priv
+# define LPUART1_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART2) && !defined(LPUART2_ASSIGNED)
-# define TTYS1_DEV g_lpuart2priv /* LPUART2 is ttyS1 */
-# define LPUART2_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart2priv /* LPUART2 is ttyS1 */
+# define LPUART2_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart2priv
+# define LPUART2_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART3) && !defined(LPUART3_ASSIGNED)
-# define TTYS1_DEV g_lpuart3priv /* LPUART3 is ttyS1 */
-# define LPUART3_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart3priv /* LPUART3 is ttyS1 */
+# define LPUART3_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart3priv
+# define LPUART3_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART4) && !defined(LPUART4_ASSIGNED)
-# define TTYS1_DEV g_lpuart4priv /* LPUART4 is ttyS1 */
-# define LPUART4_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart4priv /* LPUART4 is ttyS1 */
+# define LPUART4_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart4priv
+# define LPUART4_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART5) && !defined(LPUART5_ASSIGNED)
-# define TTYS1_DEV g_lpuart5priv /* LPUART5 is ttyS1 */
-# define LPUART5_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart5priv /* LPUART5 is ttyS1 */
+# define LPUART5_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart5priv
+# define LPUART5_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART6) && !defined(LPUART6_ASSIGNED)
-# define TTYS1_DEV g_lpuart6priv /* LPUART6 is ttyS1 */
-# define LPUART6_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart6priv /* LPUART6 is ttyS1 */
+# define LPUART6_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart6priv
+# define LPUART6_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS1_DEV g_lpuart7priv /* LPUART7 is ttyS1 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart7priv /* LPUART7 is ttyS1 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS1_DEV g_lpuart8priv /* LPUART8 is ttyS1 */
-# define LPUART8_ASSIGNED 11
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart8priv /* LPUART8 is ttyS1 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS1_DEV g_lpuart9priv /* LPUART9 is ttyS1 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart9priv /* LPUART9 is ttyS1 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS1_DEV g_lpuart10priv /* LPUART10 is ttyS1 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart10priv /* LPUART10 is ttyS1 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS1_DEV g_lpuart11priv /* LPUART11 is ttyS1 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart11priv /* LPUART11 is ttyS1 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS1_DEV g_lpuart12priv /* LPUART12 is ttyS1 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart12priv /* LPUART12 is ttyS1 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS0_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys2. This could be one of UART2-12. It can't be UART1 because that
- * was either assigned as ttyS0 or ttys1. One of UART 1-12 could be the
- * console. One of UART2-12 has already been assigned to ttys0 or ttyS1.
- */
+/* Pick ttys1/ttys2. This could be one of UART2-12. */
#if defined(CONFIG_IMXRT_LPUART2) && !defined(LPUART2_ASSIGNED)
-# define TTYS2_DEV g_lpuart2priv /* LPUART2 is ttyS2 */
-# define LPUART2_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart2priv /* LPUART2 is ttyS2 */
+# define LPUART2_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart2priv
+# define LPUART2_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART3) && !defined(LPUART3_ASSIGNED)
-# define TTYS2_DEV g_lpuart3priv /* LPUART3 is ttyS2 */
-# define LPUART3_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart3priv /* LPUART3 is ttyS2 */
+# define LPUART3_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart3priv
+# define LPUART3_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART4) && !defined(LPUART4_ASSIGNED)
-# define TTYS2_DEV g_lpuart4priv /* LPUART4 is ttyS2 */
-# define LPUART4_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart4priv /* LPUART4 is ttyS2 */
+# define LPUART4_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart4priv
+# define LPUART4_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART5) && !defined(LPUART5_ASSIGNED)
-# define TTYS2_DEV g_lpuart5priv /* LPUART5 is ttyS2 */
-# define LPUART5_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart5priv /* LPUART5 is ttyS2 */
+# define LPUART5_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart5priv
+# define LPUART5_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART6) && !defined(LPUART6_ASSIGNED)
-# define TTYS2_DEV g_lpuart6priv /* LPUART6 is ttyS2 */
-# define LPUART6_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart6priv /* LPUART6 is ttyS2 */
+# define LPUART6_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart6priv
+# define LPUART6_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS2_DEV g_lpuart7priv /* LPUART7 is ttyS2 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart7priv /* LPUART7 is ttyS2 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS2_DEV g_lpuart8priv /* LPUART8 is ttyS2 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart8priv /* LPUART8 is ttyS2 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS2_DEV g_lpuart9priv /* LPUART9 is ttyS2 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart9priv /* LPUART9 is ttyS2 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS2_DEV g_lpuart10priv /* LPUART10 is ttyS2 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart10priv /* LPUART10 is ttyS2 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS2_DEV g_lpuart11priv /* LPUART11 is ttyS2 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart11priv /* LPUART11 is ttyS2 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS2_DEV g_lpuart12priv /* LPUART12 is ttyS2 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart12priv /* LPUART12 is ttyS2 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS1_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys3. This could be one of UART3-12. It can't be UART1-2 because
- * those have already been assigned to ttsyS0, 1, or 2. One of
- * UART3-12 could also be the console. One of UART3-12 has already
- * been assigned to ttys0, 1, or 3.
- */
+/* Pick ttys2/ttys3. This could be one of UART3-12. */
#if defined(CONFIG_IMXRT_LPUART3) && !defined(LPUART3_ASSIGNED)
-# define TTYS3_DEV g_lpuart3priv /* LPUART3 is ttyS3 */
-# define LPUART3_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart3priv /* LPUART3 is ttyS3 */
+# define LPUART3_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart3priv
+# define LPUART3_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART4) && !defined(LPUART4_ASSIGNED)
-# define TTYS3_DEV g_lpuart4priv /* LPUART4 is ttyS3 */
-# define LPUART4_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart4priv /* LPUART4 is ttyS3 */
+# define LPUART4_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart4priv
+# define LPUART4_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART5) && !defined(LPUART5_ASSIGNED)
-# define TTYS3_DEV g_lpuart5priv /* LPUART5 is ttyS3 */
-# define LPUART5_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart5priv /* LPUART5 is ttyS3 */
+# define LPUART5_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart5priv
+# define LPUART5_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART6) && !defined(LPUART6_ASSIGNED)
-# define TTYS3_DEV g_lpuart6priv /* LPUART6 is ttyS3 */
-# define LPUART6_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart6priv /* LPUART6 is ttyS3 */
+# define LPUART6_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart6priv
+# define LPUART6_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS3_DEV g_lpuart7priv /* LPUART7 is ttyS3 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart7priv /* LPUART7 is ttyS3 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS3_DEV g_lpuart8priv /* LPUART8 is ttyS3 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart8priv /* LPUART8 is ttyS3 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS3_DEV g_lpuart9priv /* LPUART9 is ttyS3 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart9priv /* LPUART9 is ttyS3 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS3_DEV g_lpuart10priv /* LPUART10 is ttyS3 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart10priv /* LPUART10 is ttyS3 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS3_DEV g_lpuart11priv /* LPUART11 is ttyS3 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart11priv /* LPUART11 is ttyS3 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS3_DEV g_lpuart12priv /* LPUART12 is ttyS3 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart12priv /* LPUART12 is ttyS3 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS2_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys4. This could be one of UART4-8. It can't be UART1-3 because
- * those have already been assigned to ttsyS0, 1, 2 or 3. One of
- * UART 4-12 could be the console. One of UART4-12 has already been
- * assigned to ttys0, 1, 3, or 4.
- */
+/* Pick ttys3/ttys4. This could be one of UART4-8. */
#if defined(CONFIG_IMXRT_LPUART4) && !defined(LPUART4_ASSIGNED)
-# define TTYS4_DEV g_lpuart4priv /* LPUART4 is ttyS4 */
-# define LPUART4_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart4priv /* LPUART4 is ttyS4 */
+# define LPUART4_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart4priv
+# define LPUART4_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART5) && !defined(LPUART5_ASSIGNED)
-# define TTYS4_DEV g_lpuart5priv /* LPUART5 is ttyS4 */
-# define LPUART5_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart5priv /* LPUART5 is ttyS4 */
+# define LPUART5_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart5priv
+# define LPUART5_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART6) && !defined(LPUART6_ASSIGNED)
-# define TTYS4_DEV g_lpuart6priv /* LPUART6 is ttyS4 */
-# define LPUART6_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart6priv /* LPUART6 is ttyS4 */
+# define LPUART6_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart6priv
+# define LPUART6_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS4_DEV g_lpuart7priv /* LPUART7 is ttyS4 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart7priv /* LPUART7 is ttyS4 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS4_DEV g_lpuart8priv /* LPUART8 is ttyS4 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart8priv /* LPUART8 is ttyS4 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS4_DEV g_lpuart9priv /* LPUART9 is ttyS4 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart9priv /* LPUART9 is ttyS4 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS4_DEV g_lpuart10priv /* LPUART10 is ttyS4 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart10priv /* LPUART10 is ttyS4 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS4_DEV g_lpuart11priv /* LPUART11 is ttyS4 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart11priv /* LPUART11 is ttyS4 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS4_DEV g_lpuart12priv /* LPUART12 is ttyS4 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart12priv /* LPUART12 is ttyS4 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS3_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys5. This could be one of UART5-12. It can't be UART1-4 because
- * those have already been assigned to ttsyS0, 1, 2, 3 or 4. One of
- * UART 5-12 could be the console. One of UART5-12 has already been
- * assigned to ttys0, 1, 2, 3, or 4.
- */
+/* Pick ttys4/ttys5. This could be one of UART5-12. */
#if defined(CONFIG_IMXRT_LPUART5) && !defined(LPUART5_ASSIGNED)
-# define TTYS5_DEV g_lpuart5priv /* LPUART5 is ttyS5 */
-# define LPUART5_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart5priv /* LPUART5 is ttyS5 */
+# define LPUART5_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart5priv
+# define LPUART5_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART6) && !defined(LPUART6_ASSIGNED)
-# define TTYS5_DEV g_lpuart6priv /* LPUART6 is ttyS5 */
-# define LPUART6_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart6priv /* LPUART6 is ttyS5 */
+# define LPUART6_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart6priv
+# define LPUART6_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS5_DEV g_lpuart7priv /* LPUART7 is ttyS5 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart7priv /* LPUART7 is ttyS5 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS5_DEV g_lpuart8priv /* LPUART8 is ttyS5 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart8priv /* LPUART8 is ttyS5 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS5_DEV g_lpuart9priv /* LPUART9 is ttyS5 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart9priv /* LPUART9 is ttyS5 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS5_DEV g_lpuart10priv /* LPUART10 is ttyS5 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart10priv /* LPUART10 is ttyS5 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS5_DEV g_lpuart11priv /* LPUART11 is ttyS5 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart11priv /* LPUART11 is ttyS5 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS5_DEV g_lpuart12priv /* LPUART12 is ttyS5 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart12priv /* LPUART12 is ttyS5 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS4_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys6. This could be one of UART6-12. It can't be UART1-5 because
- * those have already been assigned to ttsyS0, 1, 2, 3, 4 or 5. One of
- * UART 6-12 could be the console. One of UART6-12 has already been
- * assigned to ttys0, 1, 2, 3, 4 or 5.
- */
+/* Pick ttys5/ttys6. This could be one of UART6-12. */
#if defined(CONFIG_IMXRT_LPUART6) && !defined(LPUART6_ASSIGNED)
-# define TTYS6_DEV g_lpuart6priv /* LPUART6 is ttyS6 */
-# define LPUART6_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart6priv /* LPUART6 is ttyS6 */
+# define LPUART6_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart6priv
+# define LPUART6_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS6_DEV g_lpuart7priv /* LPUART7 is ttyS6 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart7priv /* LPUART7 is ttyS6 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS6_DEV g_lpuart8priv /* LPUART8 is ttyS6 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart8priv /* LPUART8 is ttyS6 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS6_DEV g_lpuart9priv /* LPUART9 is ttyS6 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart9priv /* LPUART9 is ttyS6 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS6_DEV g_lpuart10priv /* LPUART10 is ttyS6 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart10priv /* LPUART10 is ttyS6 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS6_DEV g_lpuart11priv /* LPUART11 is ttyS6 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart11priv /* LPUART11 is ttyS6 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS6_DEV g_lpuart12priv /* LPUART12 is ttyS6 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart12priv /* LPUART12 is ttyS6 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS5_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys7. This could be one of UART7-12. It can't be UART1-6 because
- * those have already been assigned to ttsyS0, 1, 2, 3, 4, 5 or 6. One of
- * UART 7-12 could be the console. One of UART7-12 has already been
- * assigned to ttys0, 1, 2, 3, 4, 5 or 6.
- */
+/* Pick ttys6/ttys7. This could be one of UART7-12. */
#if defined(CONFIG_IMXRT_LPUART7) && !defined(LPUART7_ASSIGNED)
-# define TTYS7_DEV g_lpuart7priv /* LPUART7 is ttyS7 */
-# define LPUART7_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart7priv /* LPUART7 is ttyS7 */
+# define LPUART7_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart7priv
+# define LPUART7_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS7_DEV g_lpuart8port /* LPUART8 is ttyS7 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart8priv /* LPUART8 is ttyS7 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS7_DEV g_lpuart9priv /* LPUART9 is ttyS7 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart9priv /* LPUART9 is ttyS7 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS7_DEV g_lpuart10priv /* LPUART10 is ttyS7 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart10priv /* LPUART10 is ttyS7 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS7_DEV g_lpuart11priv /* LPUART11 is ttyS7 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart11priv /* LPUART11 is ttyS7 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS7_DEV g_lpuart12priv /* LPUART12 is ttyS7 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart12priv /* LPUART12 is ttyS7 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS6_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys8. This could be one of UART8-12. It can't be UART1-9 because
- * those have already been assigned to ttsyS0, 1, 2, 3, 4, 5 or 6. One of
- * UART 8-12 could be the console. One of UART8-12 has already been
- * assigned to ttys0, 1, 2, 3, 4, 5, 6 or 7.
- */
+/* Pick ttys7/ttys8. This could be one of UART8-12. */
#if defined(CONFIG_IMXRT_LPUART8) && !defined(LPUART8_ASSIGNED)
-# define TTYS8_DEV g_lpuart8port /* LPUART8 is ttyS8 */
-# define LPUART8_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart8priv /* LPUART8 is ttyS8 */
+# define LPUART8_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart8priv
+# define LPUART8_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS8_DEV g_lpuart9priv /* LPUART9 is ttyS8 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart9priv /* LPUART9 is ttyS8 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS8_DEV g_lpuart10priv /* LPUART10 is ttyS8 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart10priv /* LPUART10 is ttyS8 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS8_DEV g_lpuart11priv /* LPUART11 is ttyS8 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart11priv /* LPUART11 is ttyS8 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS8_DEV g_lpuart12priv /* LPUART12 is ttyS8 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart12priv /* LPUART12 is ttyS8 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS7_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys9. This could be one of UART9-12. It can't be UART1-10 because
- * those have already been assigned to ttsyS0, 1, 2, 3, 4, 5, 6 or 7. One of
- * UART 9-12 could be the console. One of UART9-12 has already been
- * assigned to ttys0, 1, 2, 3, 4, 5, 6, 7 or 8.
- */
+/* Pick ttys8/ttys9. This could be one of UART9-12. */
#if defined(CONFIG_IMXRT_LPUART9) && !defined(LPUART9_ASSIGNED)
-# define TTYS9_DEV g_lpuart9priv /* LPUART9 is ttyS9 */
-# define LPUART9_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart9priv /* LPUART9 is ttyS9 */
+# define LPUART9_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart9priv
+# define LPUART9_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS9_DEV g_lpuart10priv /* LPUART10 is ttyS9 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart10priv /* LPUART10 is ttyS9 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS9_DEV g_lpuart11priv /* LPUART11 is ttyS9 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart11priv /* LPUART11 is ttyS9 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS9_DEV g_lpuart12priv /* LPUART12 is ttyS9 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart12priv /* LPUART12 is ttyS9 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS8_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys10. This could be one of UART10-12. It can't be UART1-10 because
- * those have already been assigned to ttsyS0, 1, 2, 3, 4, 5, 6, 7 or 8.
- * One of UART 10-12 could be the console. One of UART10-12 has already been
- * assigned to ttys0, 1, 2, 3, 4, 5, 6, 7, 8 or 9.
- */
+/* Pick ttys9/ttys10. This could be one of UART10-12. */
#if defined(CONFIG_IMXRT_LPUART10) && !defined(LPUART10_ASSIGNED)
-# define TTYS10_DEV g_lpuart10priv /* LPUART10 is ttyS10 */
-# define LPUART10_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS10_DEV g_lpuart10priv /* LPUART10 is ttyS10 */
+# define LPUART10_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart10priv
+# define LPUART10_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS10_DEV g_lpuart11priv /* LPUART11 is ttyS10 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS10_DEV g_lpuart11priv /* LPUART11 is ttyS10 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS10_DEV g_lpuart12priv /* LPUART12 is ttyS10 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS10_DEV g_lpuart12priv /* LPUART12 is ttyS10 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS9_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
-/* Pick ttys11. This could be one of UART11-12. It can't be UART1-11 because
- * those have already been assigned to ttsyS0, 1, 2, 3, 4, 5, 6, 7, 8 or 9.
- * One of UART 11-12 could be the console. One of UART11-12 has already been
- * assigned to ttys0, 1, 2, 3, 4, 5, 6, 7, 8, 9 or 10.
- */
+/* Pick ttys10/ttys11. This could be one of UART11-12. */
#if defined(CONFIG_IMXRT_LPUART11) && !defined(LPUART11_ASSIGNED)
-# define TTYS11_DEV g_lpuart11priv /* LPUART11 is ttyS11 */
-# define LPUART11_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS11_DEV g_lpuart11priv /* LPUART11 is ttyS11 */
+# define LPUART11_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS10_DEV g_lpuart11priv
+# define LPUART11_ASSIGNED 1
+# endif
#elif defined(CONFIG_IMXRT_LPUART12) && !defined(LPUART12_ASSIGNED)
-# define TTYS11_DEV g_lpuart12priv /* LPUART12 is ttyS11 */
-# define LPUART12_ASSIGNED 1
+# if defined(CONSOLE_DEV)
+# define TTYS11_DEV g_lpuart12priv /* LPUART12 is ttyS11 */
+# define LPUART12_ASSIGNED 1
+# elif !defined(CONSOLE_DEV)
+# define TTYS10_DEV g_lpuart12priv
+# define LPUART12_ASSIGNED 1
+# endif
#endif
/* UART, if available, should have been assigned to ttyS0-7. */
@@ -3687,7 +3993,9 @@ void arm_serialinit(void)
/* Register all UARTs */
+#ifdef TTYS0_DEV
uart_register("/dev/ttyS0", &TTYS0_DEV.dev);
+#endif
#ifdef TTYS1_DEV
uart_register("/dev/ttyS1", &TTYS1_DEV.dev);
#endif