2 * PROJECT: ReactOS Kernel
3 * LICENSE: BSD - See COPYING.ARM in the top level directory
4 * FILE: include/reactos/arm/targets/pl011.h
5 * PURPOSE: PL011 Registers and Constants
6 * PROGRAMMERS: ReactOS Portable Systems Group
9 /* GLOBALS ********************************************************************/
14 #define UART_BASE (PVOID)0xE00F1000 /* HACK: freeldr mapped it here */
16 #define UART_PL01x_DR (UART_BASE + 0x00)
17 #define UART_PL01x_RSR (UART_BASE + 0x04)
18 #define UART_PL01x_ECR (UART_BASE + 0x04)
19 #define UART_PL01x_FR (UART_BASE + 0x18)
20 #define UART_PL011_IBRD (UART_BASE + 0x24)
21 #define UART_PL011_FBRD (UART_BASE + 0x28)
22 #define UART_PL011_LCRH (UART_BASE + 0x2C)
23 #define UART_PL011_CR (UART_BASE + 0x30)
24 #define UART_PL011_IMSC (UART_BASE + 0x38)
29 typedef union _PL011_LCR_REGISTER
32 } PL011_LCR_REGISTER
, *PPL011_LCR_REGISTER
;
34 #define UART_PL011_LCRH_WLEN_8 0x60
35 #define UART_PL011_LCRH_FEN 0x10
40 typedef union _PL011_FCR_REGISTER
43 } PL011_FCR_REGISTER
, *PPL011_FCR_REGISTER
;
45 #define UART_PL011_CR_UARTEN 0x01
46 #define UART_PL011_CR_TXE 0x100
47 #define UART_PL011_CR_RXE 0x200
52 typedef union _PL011_LSR_REGISTER
55 } PL011_LSR_REGISTER
, *PPL011_LSR_REGISTER
;
57 #define UART_PL01x_FR_RXFE 0x10
58 #define UART_PL01x_FR_TXFF 0x20