Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
vt8500_serial.c File Reference
#include <linux/hrtimer.h>
#include <linux/delay.h>
#include <linux/module.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <linux/irq.h>
#include <linux/init.h>
#include <linux/console.h>
#include <linux/tty.h>
#include <linux/tty_flip.h>
#include <linux/serial_core.h>
#include <linux/serial.h>
#include <linux/slab.h>
#include <linux/clk.h>
#include <linux/platform_device.h>
#include <linux/of.h>

Go to the source code of this file.

Data Structures

struct  vt8500_port
 

Macros

#define VT8500_URTDR   0x0000 /* Transmit data */
 
#define VT8500_URRDR   0x0004 /* Receive data */
 
#define VT8500_URDIV   0x0008 /* Clock/Baud rate divisor */
 
#define VT8500_URLCR   0x000C /* Line control */
 
#define VT8500_URICR   0x0010 /* IrDA control */
 
#define VT8500_URIER   0x0014 /* Interrupt enable */
 
#define VT8500_URISR   0x0018 /* Interrupt status */
 
#define VT8500_URUSR   0x001c /* UART status */
 
#define VT8500_URFCR   0x0020 /* FIFO control */
 
#define VT8500_URFIDX   0x0024 /* FIFO index */
 
#define VT8500_URBKR   0x0028 /* Break signal count */
 
#define VT8500_URTOD   0x002c /* Time out divisor */
 
#define VT8500_TXFIFO   0x1000 /* Transmit FIFO (16x8) */
 
#define VT8500_RXFIFO   0x1020 /* Receive FIFO (16x10) */
 
#define TXDE   (1 << 0) /* Tx Data empty */
 
#define RXDF   (1 << 1) /* Rx Data full */
 
#define TXFAE   (1 << 2) /* Tx FIFO almost empty */
 
#define TXFE   (1 << 3) /* Tx FIFO empty */
 
#define RXFAF   (1 << 4) /* Rx FIFO almost full */
 
#define RXFF   (1 << 5) /* Rx FIFO full */
 
#define TXUDR   (1 << 6) /* Tx underrun */
 
#define RXOVER   (1 << 7) /* Rx overrun */
 
#define PER   (1 << 8) /* Parity error */
 
#define FER   (1 << 9) /* Frame error */
 
#define TCTS   (1 << 10) /* Toggle of CTS */
 
#define RXTOUT   (1 << 11) /* Rx timeout */
 
#define BKDONE   (1 << 12) /* Break signal done */
 
#define ERR   (1 << 13) /* AHB error response */
 
#define RX_FIFO_INTS   (RXFAF | RXFF | RXOVER | PER | FER | RXTOUT)
 
#define TX_FIFO_INTS   (TXFAE | TXFE | TXUDR)
 
#define VT8500_MAX_PORTS   6
 
#define VT8500_CONSOLE   NULL
 

Functions

 module_init (vt8500_serial_init)
 
 module_exit (vt8500_serial_exit)
 
 MODULE_AUTHOR ("Alexey Charkov <[email protected]>")
 
 MODULE_DESCRIPTION ("Driver for vt8500 serial device")
 
 MODULE_LICENSE ("GPL v2")
 

Macro Definition Documentation

#define BKDONE   (1 << 12) /* Break signal done */

Definition at line 74 of file vt8500_serial.c.

#define ERR   (1 << 13) /* AHB error response */

Definition at line 75 of file vt8500_serial.c.

#define FER   (1 << 9) /* Frame error */

Definition at line 71 of file vt8500_serial.c.

#define PER   (1 << 8) /* Parity error */

Definition at line 70 of file vt8500_serial.c.

#define RX_FIFO_INTS   (RXFAF | RXFF | RXOVER | PER | FER | RXTOUT)

Definition at line 77 of file vt8500_serial.c.

#define RXDF   (1 << 1) /* Rx Data full */

Definition at line 63 of file vt8500_serial.c.

#define RXFAF   (1 << 4) /* Rx FIFO almost full */

Definition at line 66 of file vt8500_serial.c.

#define RXFF   (1 << 5) /* Rx FIFO full */

Definition at line 67 of file vt8500_serial.c.

#define RXOVER   (1 << 7) /* Rx overrun */

Definition at line 69 of file vt8500_serial.c.

#define RXTOUT   (1 << 11) /* Rx timeout */

Definition at line 73 of file vt8500_serial.c.

#define TCTS   (1 << 10) /* Toggle of CTS */

Definition at line 72 of file vt8500_serial.c.

#define TX_FIFO_INTS   (TXFAE | TXFE | TXUDR)

Definition at line 78 of file vt8500_serial.c.

#define TXDE   (1 << 0) /* Tx Data empty */

Definition at line 62 of file vt8500_serial.c.

#define TXFAE   (1 << 2) /* Tx FIFO almost empty */

Definition at line 64 of file vt8500_serial.c.

#define TXFE   (1 << 3) /* Tx FIFO empty */

Definition at line 65 of file vt8500_serial.c.

#define TXUDR   (1 << 6) /* Tx underrun */

Definition at line 68 of file vt8500_serial.c.

#define VT8500_CONSOLE   NULL

Definition at line 527 of file vt8500_serial.c.

#define VT8500_MAX_PORTS   6

Definition at line 80 of file vt8500_serial.c.

#define VT8500_RXFIFO   0x1020 /* Receive FIFO (16x10) */

Definition at line 56 of file vt8500_serial.c.

#define VT8500_TXFIFO   0x1000 /* Transmit FIFO (16x8) */

Definition at line 55 of file vt8500_serial.c.

#define VT8500_URBKR   0x0028 /* Break signal count */

Definition at line 53 of file vt8500_serial.c.

#define VT8500_URDIV   0x0008 /* Clock/Baud rate divisor */

Definition at line 45 of file vt8500_serial.c.

#define VT8500_URFCR   0x0020 /* FIFO control */

Definition at line 51 of file vt8500_serial.c.

#define VT8500_URFIDX   0x0024 /* FIFO index */

Definition at line 52 of file vt8500_serial.c.

#define VT8500_URICR   0x0010 /* IrDA control */

Definition at line 47 of file vt8500_serial.c.

#define VT8500_URIER   0x0014 /* Interrupt enable */

Definition at line 48 of file vt8500_serial.c.

#define VT8500_URISR   0x0018 /* Interrupt status */

Definition at line 49 of file vt8500_serial.c.

#define VT8500_URLCR   0x000C /* Line control */

Definition at line 46 of file vt8500_serial.c.

#define VT8500_URRDR   0x0004 /* Receive data */

Definition at line 44 of file vt8500_serial.c.

#define VT8500_URTDR   0x0000 /* Transmit data */

Definition at line 43 of file vt8500_serial.c.

#define VT8500_URTOD   0x002c /* Time out divisor */

Definition at line 54 of file vt8500_serial.c.

#define VT8500_URUSR   0x001c /* UART status */

Definition at line 50 of file vt8500_serial.c.

Function Documentation

MODULE_AUTHOR ( "Alexey Charkov <[email protected]>"  )
MODULE_DESCRIPTION ( "Driver for vt8500 serial device )
module_exit ( vt8500_serial_exit  )
module_init ( vt8500_serial_init  )
MODULE_LICENSE ( "GPL v2 )