summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/serial/Kconfig7
-rw-r--r--drivers/serial/serial_mxc.c10
2 files changed, 15 insertions, 2 deletions
diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig
index 4be8868536..234bd9c609 100644
--- a/drivers/serial/Kconfig
+++ b/drivers/serial/Kconfig
@@ -682,4 +682,11 @@ config SYS_SDMR
depends on MPC8XX_CONS
default 0
+config SERIAL_MXC_DTE_MODE
+ bool "Use DTE mode for the MXC UART"
+ default n
+ help
+ This is used to set DTE mode on the serial console controlled by
+ serial_mxc.c.
+
endmenu
diff --git a/drivers/serial/serial_mxc.c b/drivers/serial/serial_mxc.c
index cce80a8559..e7ea30c464 100644
--- a/drivers/serial/serial_mxc.c
+++ b/drivers/serial/serial_mxc.c
@@ -111,6 +111,12 @@
#define TXTL 2 /* reset default */
#define RXTL 1 /* reset default */
+#ifdef CONFIG_SERIAL_MXC_DTE_MODE
+#define MXC_DTE_MODE true
+#else
+#define MXC_DTE_MODE false
+#endif
+
DECLARE_GLOBAL_DATA_PTR;
struct mxc_uart {
@@ -189,7 +195,7 @@ static void mxc_serial_setbrg(void)
if (!gd->baudrate)
gd->baudrate = CONFIG_BAUDRATE;
- _mxc_serial_setbrg(mxc_base, clk, gd->baudrate, false);
+ _mxc_serial_setbrg(mxc_base, clk, gd->baudrate, MXC_DTE_MODE);
}
static int mxc_serial_getc(void)
@@ -367,7 +373,7 @@ static inline void _debug_uart_init(void)
_mxc_serial_init(base);
_mxc_serial_setbrg(base, CONFIG_DEBUG_UART_CLOCK,
- CONFIG_BAUDRATE, false);
+ CONFIG_BAUDRATE, MXC_DTE_MODE);
}
static inline void _debug_uart_putc(int ch)