aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/platforms/LPC214x
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/platforms/LPC214x')
-rw-r--r--os/hal/platforms/LPC214x/lpc214x.h1
-rw-r--r--os/hal/platforms/LPC214x/serial_lld.c3
2 files changed, 3 insertions, 1 deletions
diff --git a/os/hal/platforms/LPC214x/lpc214x.h b/os/hal/platforms/LPC214x/lpc214x.h
index 88e8d8ae1..9a3238c79 100644
--- a/os/hal/platforms/LPC214x/lpc214x.h
+++ b/os/hal/platforms/LPC214x/lpc214x.h
@@ -113,6 +113,7 @@ typedef struct {
typedef struct {
IOREG32 PS_SEL0;
IOREG32 PS_SEL1;
+ IOREG32 _dummy[3];
IOREG32 PS_SEL2;
} PS;
diff --git a/os/hal/platforms/LPC214x/serial_lld.c b/os/hal/platforms/LPC214x/serial_lld.c
index 5f01bcf48..4f5d671b4 100644
--- a/os/hal/platforms/LPC214x/serial_lld.c
+++ b/os/hal/platforms/LPC214x/serial_lld.c
@@ -85,12 +85,13 @@ static void uart_init(SerialDriver *sdp) {
*/
static void uart_deinit(UART *u) {
+ u->UART_LCR = LCR_DLAB;
u->UART_DLL = 1;
u->UART_DLM = 0;
+ u->UART_LCR = 0;
u->UART_FDR = 0x10;
u->UART_IER = 0;
u->UART_FCR = FCR_RXRESET | FCR_TXRESET;
- u->UART_LCR = 0;
u->UART_ACR = 0;
u->UART_TER = TER_ENABLE;
}