Merge git://git.denx.de/u-boot-socfpga
[platform/kernel/u-boot.git] / drivers / serial / serial_stm32x7.h
1 /*
2  * (C) Copyright 2016
3  * Vikas Manocha, <vikas.manocha@st.com>
4  *
5  * SPDX-License-Identifier:     GPL-2.0+
6  */
7
8 #ifndef _SERIAL_STM32_X7_
9 #define _SERIAL_STM32_X7_
10
11 struct stm32_usart {
12         u32 cr1;
13         u32 cr2;
14         u32 cr3;
15         u32 brr;
16         u32 gtpr;
17         u32 rtor;
18         u32 rqr;
19         u32 sr;
20         u32 icr;
21         u32 rd_dr;
22         u32 tx_dr;
23 };
24
25 /* Information about a serial port */
26 struct stm32x7_serial_platdata {
27         struct stm32_usart *base;  /* address of registers in physical memory */
28         unsigned long int clock_rate;
29 };
30
31 #define USART_CR1_OVER8                 (1 << 15)
32 #define USART_CR1_TE                    (1 << 3)
33 #define USART_CR1_RE                    (1 << 2)
34 #define USART_CR1_UE                    (1 << 0)
35
36 #define USART_CR3_OVRDIS                (1 << 12)
37
38 #define USART_SR_FLAG_RXNE              (1 << 5)
39 #define USART_SR_FLAG_TXE               (1 << 7)
40
41 #define USART_BRR_F_MASK                0xFF
42 #define USART_BRR_M_SHIFT               4
43 #define USART_BRR_M_MASK                0xFFF0
44
45 #endif