📄 serial_amba_pl011.h
字号:
/* * linux/include/asm-arm/hardware/serial_amba_pl011.h * * Internal header file for AMBA PrimeCell PL011 serial ports * * Copyright (C) 2002 Lineo, Inc. * * Based on serial_amba.h, which is: * Copyright (C) ARM Limited * Copyright (C) 2000 Deep Blue Solutions Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */#ifndef ASM_ARM_HARDWARE_SERIAL_AMBA_PL011_H#define ASM_ARM_HARDWARE_SERIAL_AMBA_PL011_H/* ------------------------------------------------------------------------------- * From AMBA UART (PL011) TRM * ------------------------------------------------------------------------------- * UART Register Offsets. */#define AMBA_UARTDR 0x00 /* Data read or written from the interface. */#define AMBA_UARTRSR 0x04 /* Receive status register (Read). */#define AMBA_UARTECR 0x04 /* Error clear register (Write). */#define AMBA_UARTFR 0x18 /* Flag register (Read only). */#define AMBA_UARTILPR 0x20 /* IrDA low power counter register. */#define AMBA_UARTIBRD 0x24 /* Integer baud rate divisor. */#define AMBA_UARTFBRD 0x28 /* Fractional baud rate divisor. */#define AMBA_UARTLCR_H 0x2C /* Line control register, high byte. */#define AMBA_UARTCR 0x30 /* Control register. */#define AMBA_UARTIFLS 0x34 /* Interrupt FIFO level select. */#define AMBA_UARTIMSC 0x38 /* Interrupt Mask Set/Clear. */#define AMBA_UARTRIS 0x3C /* Raw Interrupt status register (Read). */#define AMBA_UARTMIS 0x40 /* Masked Interrupt status register (Read). */#define AMBA_UARTICR 0x44 /* Interrupt clear register (Write). */#define AMBA_UARTRSR_OE 0x0800 /* Overrun error */#define AMBA_UARTRSR_BE 0x0400 /* Break error */#define AMBA_UARTRSR_PE 0x0200 /* Parity error */#define AMBA_UARTRSR_FE 0x0100 /* framing error */#define AMBA_UARTFR_TXFF 0x20 /* Tx FIFO full */#define AMBA_UARTFR_RXFE 0x10 /* Rx FIFO empty */#define AMBA_UARTFR_BUSY 0x08 /* busy xmitting */#define AMBA_UARTFR_DCD 0x04#define AMBA_UARTFR_DSR 0x02#define AMBA_UARTFR_CTS 0x01#define AMBA_UARTFR_TMSK (AMBA_UARTFR_TXFF + AMBA_UARTFR_BUSY)/* Interrupt Mask Set/Clear register bits */#define AMBA_UARTIMSC_RTIM 0x40 /* Rx timeout interrupt mask */#define AMBA_UARTIMSC_TXIM 0x20 /* Tx interrupt mask */#define AMBA_UARTIMSC_RXIM 0x10 /* Rx interrupt mask */#define AMBA_UARTIMSC_DSRMIM 0x08 /* DSR Modem Interrupt mask */#define AMBA_UARTIMSC_DCDMIM 0x04 /* DCD Modem Interrupt mask */#define AMBA_UARTIMSC_CTSMIM 0x02 /* CTS Modem Interrupt mask */#define AMBA_UARTIMSC_RIMIM 0x01 /* RI Modem Interrupt mask *//* all modem mask bits */#define AMBA_UARTIMSC_Modem (AMBA_UARTIMSC_DSRMIM |AMBA_UARTIMSC_DCDMIM | \ AMBA_UARTIMSC_CTSMIM |AMBA_UARTIMSC_RIMIM)/* Control Register bits */#define AMBA_UARTCR_RTS 0x800 /* nRTS */#define AMBA_UARTCR_DTR 0x400 /* nDTR */#define AMBA_UARTCR_RXE 0x200 /* Rx enable */#define AMBA_UARTCR_TXE 0x100 /* Tx enable */#define AMBA_UARTCR_LBE 0x080 /* Loopback enable */#define AMBA_UARTCR_SIRLP 0x004 /* IR SIR Low Power Mode */#define AMBA_UARTCR_SIREN 0x002 /* IR SIR enable */#define AMBA_UARTCR_UARTEN 0x001 /* UART enable */#define AMBA_UARTLCR_H_WLEN_8 0x60#define AMBA_UARTLCR_H_WLEN_7 0x40#define AMBA_UARTLCR_H_WLEN_6 0x20#define AMBA_UARTLCR_H_WLEN_5 0x00#define AMBA_UARTLCR_H_FEN 0x10#define AMBA_UARTLCR_H_STP2 0x08#define AMBA_UARTLCR_H_EPS 0x04#define AMBA_UARTLCR_H_PEN 0x02#define AMBA_UARTLCR_H_BRK 0x01/* Raw/Masked Interrupt Status Register bits*/#define AMBA_UART_IS_RT 0x40#define AMBA_UART_IS_TX 0x20#define AMBA_UART_IS_RX 0x10#define AMBA_UART_IS_DSR 0x08#define AMBA_UART_IS_DCD 0x04#define AMBA_UART_IS_CTS 0x02#define AMBA_UART_IS_RI 0x01#define AMBA_UART_IS_MI (AMBA_UART_IS_DSR | AMBA_UART_IS_DCD | \ AMBA_UART_IS_CTS | AMBA_UART_IS_RI )#define AMBA_UARTRSR_ANY (AMBA_UARTRSR_OE|AMBA_UARTRSR_BE|AMBA_UARTRSR_PE|AMBA_UARTRSR_FE)#define AMBA_UARTFR_MODEM_ANY (AMBA_UARTFR_DCD|AMBA_UARTFR_DSR|AMBA_UARTFR_CTS)#endif /* ASM_ARM_HARDWARE_SERIAL_AMBA_PL011_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -