u-boot-brain/drivers/serial/serial_stm32x7.h
Patrice Chotard 1afcf9cb25 serial: stm32x7: simplify baud rate register calculation
Simplify baud rate register formula and use the oversampling
uart feature.
This code is aligned with what is implemented in kernel driver
drivers/tty/serial/stm32-usart.c since kernel v4.9.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Christophe KERELLO <christophe.kerello@st.com>
Reviewed-by: Patrick DELAUNAY <patrick.delaunay@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
2017-06-12 08:38:38 -04:00

41 lines
650 B
C

/*
* (C) Copyright 2016
* Vikas Manocha, <vikas.manocha@st.com>
*
* SPDX-License-Identifier: GPL-2.0+
*/
#ifndef _SERIAL_STM32_X7_
#define _SERIAL_STM32_X7_
struct stm32_usart {
u32 cr1;
u32 cr2;
u32 cr3;
u32 brr;
u32 gtpr;
u32 rtor;
u32 rqr;
u32 sr;
u32 icr;
u32 rd_dr;
u32 tx_dr;
};
#define USART_CR1_OVER8 (1 << 15)
#define USART_CR1_TE (1 << 3)
#define USART_CR1_RE (1 << 2)
#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)
#define USART_BRR_F_MASK 0xFF
#define USART_BRR_M_SHIFT 4
#define USART_BRR_M_MASK 0xFFF0
#endif