This is an automated email from the ASF dual-hosted git repository. wes3 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/mynewt-core.git
The following commit(s) were added to refs/heads/master by this push: new 1883c01 hw/mcu/stm/stm32_common: Clear overrun error (#2325) 1883c01 is described below commit 1883c011cdbe15a62d30df4a162e03730dd43705 Author: wes3 <william.sanfili...@juul.com> AuthorDate: Mon Jul 6 10:52:03 2020 -0700 hw/mcu/stm/stm32_common: Clear overrun error (#2325) The uart irq handler for certain stm32 mcu's was not handling the clearing of an rx overrun error. This code should handle it properly. --- hw/mcu/stm/stm32_common/src/hal_uart.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hw/mcu/stm/stm32_common/src/hal_uart.c b/hw/mcu/stm/stm32_common/src/hal_uart.c index 6671d28..394a9f6 100644 --- a/hw/mcu/stm/stm32_common/src/hal_uart.c +++ b/hw/mcu/stm/stm32_common/src/hal_uart.c @@ -223,6 +223,11 @@ uart_irq_handler(int num) if (isr & USART_ISR_ORE) { regs->ICR |= USART_ICR_ORECF; } +#else + /* clear overrun */ + if (isr & USART_SR_ORE) { + (void)RXDR(regs); + } #endif }