From 3c364dbf5988ac56bd78e0b6a15a532369bd4043 Mon Sep 17 00:00:00 2001 From: Kevin Gillespie Date: Tue, 3 Dec 2024 16:52:13 -0600 Subject: [PATCH] Setting the UART clock source bits. --- Libraries/PeriphDrivers/Source/UART/uart_me30.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/Libraries/PeriphDrivers/Source/UART/uart_me30.c b/Libraries/PeriphDrivers/Source/UART/uart_me30.c index 9963fa84792..29e80435299 100644 --- a/Libraries/PeriphDrivers/Source/UART/uart_me30.c +++ b/Libraries/PeriphDrivers/Source/UART/uart_me30.c @@ -77,6 +77,11 @@ int MXC_UART_Init(mxc_uart_regs_t *uart, unsigned int baud, mxc_uart_clock_t clo } #endif // MSDK_NO_GPIO_CLK_INIT + retval = MXC_UART_SetClockSource(uart, clock); + if (retval != E_NO_ERROR) { + return retval; + } + return MXC_UART_RevB_Init((mxc_uart_revb_regs_t *)uart, baud, clock); } @@ -173,7 +178,16 @@ int MXC_UART_SetFlowCtrl(mxc_uart_regs_t *uart, mxc_uart_flow_t flowCtrl, int rt int MXC_UART_SetClockSource(mxc_uart_regs_t *uart, mxc_uart_clock_t clock) { - return MXC_UART_RevB_SetClockSource((mxc_uart_revb_regs_t *)uart, clock); + switch (clock) { + case MXC_UART_APB_CLK: + return MXC_UART_RevB_SetClockSource((mxc_uart_revb_regs_t *)uart, 0); + + case MXC_UART_IBRO_CLK: + return MXC_UART_RevB_SetClockSource((mxc_uart_revb_regs_t *)uart, 1); + + default: + return E_BAD_PARAM; + } } int MXC_UART_GetActive(mxc_uart_regs_t *uart)