From 7ff0036a2674461784f1ce63d76b529744ebe1a6 Mon Sep 17 00:00:00 2001 From: KurtE Date: Fri, 8 Apr 2022 15:59:27 -0700 Subject: [PATCH] Fix the pre-check stuff --- ports/mimxrt10xx/supervisor/serial.c | 55 +++++++++++++++------------- 1 file changed, 29 insertions(+), 26 deletions(-) diff --git a/ports/mimxrt10xx/supervisor/serial.c b/ports/mimxrt10xx/supervisor/serial.c index 9d4971e089..4223ab4f5b 100644 --- a/ports/mimxrt10xx/supervisor/serial.c +++ b/ports/mimxrt10xx/supervisor/serial.c @@ -34,57 +34,60 @@ #include "fsl_lpuart.h" // TODO: Switch this to using DEBUG_UART. +// Need official way to turn off the port serial code when it is not needed #if defined(USE_DEBUG_PORT_CODE) // static LPUART_Type *uart_instance = LPUART1; // evk static LPUART_Type *uart_instance = LPUART4; // feather 1011 // static LPUART_Type *uart_instance = LPUART2; // feather 1062 static uint32_t UartSrcFreq(void) { - uint32_t freq; + uint32_t freq; - /* To make it simple, we assume default PLL and divider settings, and the only - variable from application is use PLL3 source or OSC source */ - /* PLL3 div6 80M */ - if (CLOCK_GetMux(kCLOCK_UartMux) == 0) { - freq = (CLOCK_GetPllFreq(kCLOCK_PllUsb1) / 6U) / - (CLOCK_GetDiv(kCLOCK_UartDiv) + 1U); - } else { - freq = CLOCK_GetOscFreq() / (CLOCK_GetDiv(kCLOCK_UartDiv) + 1U); - } + /* To make it simple, we assume default PLL and divider settings, and the only + variable from application is use PLL3 source or OSC source */ + /* PLL3 div6 80M */ + if (CLOCK_GetMux(kCLOCK_UartMux) == 0) { + freq = (CLOCK_GetPllFreq(kCLOCK_PllUsb1) / 6U) / + (CLOCK_GetDiv(kCLOCK_UartDiv) + 1U); + } else { + freq = CLOCK_GetOscFreq() / (CLOCK_GetDiv(kCLOCK_UartDiv) + 1U); + } - return freq; + return freq; } void port_serial_init(void) { - lpuart_config_t config; + lpuart_config_t config; - LPUART_GetDefaultConfig(&config); - config.baudRate_Bps = 115200; - config.enableTx = true; - config.enableRx = true; + LPUART_GetDefaultConfig(&config); + config.baudRate_Bps = 115200; + config.enableTx = true; + config.enableRx = true; - LPUART_Init(uart_instance, &config, UartSrcFreq()); + LPUART_Init(uart_instance, &config, UartSrcFreq()); } -bool port_serial_connected(void) { return true; } +bool port_serial_connected(void) { + return true; +} char port_serial_read(void) { - uint8_t data; + uint8_t data; - LPUART_ReadBlocking(uart_instance, &data, sizeof(data)); + LPUART_ReadBlocking(uart_instance, &data, sizeof(data)); - return data; + return data; } bool port_serial_bytes_available(void) { - return LPUART_GetStatusFlags(uart_instance) & kLPUART_RxDataRegFullFlag; + return LPUART_GetStatusFlags(uart_instance) & kLPUART_RxDataRegFullFlag; } void port_serial_write_substring(const char *text, uint32_t len) { - if (len == 0) { - return; - } + if (len == 0) { + return; + } - LPUART_WriteBlocking(uart_instance, (uint8_t *)text, len); + LPUART_WriteBlocking(uart_instance, (uint8_t *)text, len); } #endif // USE_DEBUG_PORT_CODE