alistair23-linux/include/linux/serial_pnx8xxx.h
Thomas Gleixner 1a59d1b8e0 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
Based on 1 normalized pattern(s):

  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

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-or-later

has been chosen to replace the boilerplate/reference in 1334 file(s).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Allison Randal <allison@lohutok.net>
Reviewed-by: Richard Fontana <rfontana@redhat.com>
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190527070033.113240726@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-30 11:26:35 -07:00

68 lines
2 KiB
C

/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
* Embedded Alley Solutions, source@embeddedalley.com.
*/
#ifndef _LINUX_SERIAL_PNX8XXX_H
#define _LINUX_SERIAL_PNX8XXX_H
#include <linux/serial_core.h>
#define PNX8XXX_NR_PORTS 2
struct pnx8xxx_port {
struct uart_port port;
struct timer_list timer;
unsigned int old_status;
};
/* register offsets */
#define PNX8XXX_LCR 0
#define PNX8XXX_MCR 0x004
#define PNX8XXX_BAUD 0x008
#define PNX8XXX_CFG 0x00c
#define PNX8XXX_FIFO 0x028
#define PNX8XXX_ISTAT 0xfe0
#define PNX8XXX_IEN 0xfe4
#define PNX8XXX_ICLR 0xfe8
#define PNX8XXX_ISET 0xfec
#define PNX8XXX_PD 0xff4
#define PNX8XXX_MID 0xffc
#define PNX8XXX_UART_LCR_TXBREAK (1<<30)
#define PNX8XXX_UART_LCR_PAREVN 0x10000000
#define PNX8XXX_UART_LCR_PAREN 0x08000000
#define PNX8XXX_UART_LCR_2STOPB 0x04000000
#define PNX8XXX_UART_LCR_8BIT 0x01000000
#define PNX8XXX_UART_LCR_TX_RST 0x00040000
#define PNX8XXX_UART_LCR_RX_RST 0x00020000
#define PNX8XXX_UART_LCR_RX_NEXT 0x00010000
#define PNX8XXX_UART_MCR_SCR 0xFF000000
#define PNX8XXX_UART_MCR_DCD 0x00800000
#define PNX8XXX_UART_MCR_CTS 0x00100000
#define PNX8XXX_UART_MCR_LOOP 0x00000010
#define PNX8XXX_UART_MCR_RTS 0x00000002
#define PNX8XXX_UART_MCR_DTR 0x00000001
#define PNX8XXX_UART_INT_TX 0x00000080
#define PNX8XXX_UART_INT_EMPTY 0x00000040
#define PNX8XXX_UART_INT_RCVTO 0x00000020
#define PNX8XXX_UART_INT_RX 0x00000010
#define PNX8XXX_UART_INT_RXOVRN 0x00000008
#define PNX8XXX_UART_INT_FRERR 0x00000004
#define PNX8XXX_UART_INT_BREAK 0x00000002
#define PNX8XXX_UART_INT_PARITY 0x00000001
#define PNX8XXX_UART_INT_ALLRX 0x0000003F
#define PNX8XXX_UART_INT_ALLTX 0x000000C0
#define PNX8XXX_UART_FIFO_TXFIFO 0x001F0000
#define PNX8XXX_UART_FIFO_TXFIFO_STA (0x1f<<16)
#define PNX8XXX_UART_FIFO_RXBRK 0x00008000
#define PNX8XXX_UART_FIFO_RXFE 0x00004000
#define PNX8XXX_UART_FIFO_RXPAR 0x00002000
#define PNX8XXX_UART_FIFO_RXFIFO 0x00001F00
#define PNX8XXX_UART_FIFO_RBRTHR 0x000000FF
#endif