serial: stm32f7: disable overrun

With overrun enabled, serial port console freezes & stops receiving data with
overun error if we keep sending data.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
master
Vikas Manocha 8 years ago committed by Tom Rini
parent c6d9e9dbc3
commit 6c0c3ce8aa
  1. 3
      drivers/serial/serial_stm32x7.c
  2. 2
      drivers/serial/serial_stm32x7.h

@ -93,6 +93,9 @@ static int stm32_serial_probe(struct udevice *dev)
}
#endif
/* Disable usart-> disable overrun-> enable usart */
clrbits_le32(&usart->cr1, USART_CR1_RE | USART_CR1_TE | USART_CR1_UE);
setbits_le32(&usart->cr3, USART_CR3_OVRDIS);
setbits_le32(&usart->cr1, USART_CR1_RE | USART_CR1_TE | USART_CR1_UE);
return 0;

@ -27,6 +27,8 @@ struct stm32_usart {
#define USART_CR1_TE (1 << 3)
#define USART_CR1_UE (1 << 0)
#define USART_CR3_OVRDIS (1 << 12)
#define USART_SR_FLAG_RXNE (1 << 5)
#define USART_SR_FLAG_TXE (1 << 7)

Loading…
Cancel
Save