linux/include/linux/serial_pnx8xxx.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * Embedded Alley Solutions, source@embeddedalley.com.
   4 */
   5
   6#ifndef _LINUX_SERIAL_PNX8XXX_H
   7#define _LINUX_SERIAL_PNX8XXX_H
   8
   9#include <linux/serial_core.h>
  10
  11#define PNX8XXX_NR_PORTS        2
  12
  13struct pnx8xxx_port {
  14        struct uart_port        port;
  15        struct timer_list       timer;
  16        unsigned int            old_status;
  17};
  18
  19/* register offsets */
  20#define PNX8XXX_LCR             0
  21#define PNX8XXX_MCR             0x004
  22#define PNX8XXX_BAUD            0x008
  23#define PNX8XXX_CFG             0x00c
  24#define PNX8XXX_FIFO            0x028
  25#define PNX8XXX_ISTAT           0xfe0
  26#define PNX8XXX_IEN             0xfe4
  27#define PNX8XXX_ICLR            0xfe8
  28#define PNX8XXX_ISET            0xfec
  29#define PNX8XXX_PD              0xff4
  30#define PNX8XXX_MID             0xffc
  31
  32#define PNX8XXX_UART_LCR_TXBREAK        (1<<30)
  33#define PNX8XXX_UART_LCR_PAREVN         0x10000000
  34#define PNX8XXX_UART_LCR_PAREN          0x08000000
  35#define PNX8XXX_UART_LCR_2STOPB         0x04000000
  36#define PNX8XXX_UART_LCR_8BIT           0x01000000
  37#define PNX8XXX_UART_LCR_TX_RST         0x00040000
  38#define PNX8XXX_UART_LCR_RX_RST         0x00020000
  39#define PNX8XXX_UART_LCR_RX_NEXT        0x00010000
  40
  41#define PNX8XXX_UART_MCR_SCR            0xFF000000
  42#define PNX8XXX_UART_MCR_DCD            0x00800000
  43#define PNX8XXX_UART_MCR_CTS            0x00100000
  44#define PNX8XXX_UART_MCR_LOOP           0x00000010
  45#define PNX8XXX_UART_MCR_RTS            0x00000002
  46#define PNX8XXX_UART_MCR_DTR            0x00000001
  47
  48#define PNX8XXX_UART_INT_TX             0x00000080
  49#define PNX8XXX_UART_INT_EMPTY          0x00000040
  50#define PNX8XXX_UART_INT_RCVTO          0x00000020
  51#define PNX8XXX_UART_INT_RX             0x00000010
  52#define PNX8XXX_UART_INT_RXOVRN         0x00000008
  53#define PNX8XXX_UART_INT_FRERR          0x00000004
  54#define PNX8XXX_UART_INT_BREAK          0x00000002
  55#define PNX8XXX_UART_INT_PARITY         0x00000001
  56#define PNX8XXX_UART_INT_ALLRX          0x0000003F
  57#define PNX8XXX_UART_INT_ALLTX          0x000000C0
  58
  59#define PNX8XXX_UART_FIFO_TXFIFO        0x001F0000
  60#define PNX8XXX_UART_FIFO_TXFIFO_STA    (0x1f<<16)
  61#define PNX8XXX_UART_FIFO_RXBRK         0x00008000
  62#define PNX8XXX_UART_FIFO_RXFE          0x00004000
  63#define PNX8XXX_UART_FIFO_RXPAR         0x00002000
  64#define PNX8XXX_UART_FIFO_RXFIFO        0x00001F00
  65#define PNX8XXX_UART_FIFO_RBRTHR        0x000000FF
  66
  67#endif
  68