Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ip22zilog.c File Reference
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/delay.h>
#include <linux/tty.h>
#include <linux/tty_flip.h>
#include <linux/major.h>
#include <linux/string.h>
#include <linux/ptrace.h>
#include <linux/ioport.h>
#include <linux/slab.h>
#include <linux/circ_buf.h>
#include <linux/serial.h>
#include <linux/sysrq.h>
#include <linux/console.h>
#include <linux/spinlock.h>
#include <linux/init.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/sgialib.h>
#include <asm/sgi/ioc.h>
#include <asm/sgi/hpc3.h>
#include <asm/sgi/ip22.h>
#include <linux/serial_core.h>
#include "ip22zilog.h"

Go to the source code of this file.

Data Structures

struct  uart_ip22zilog_port
 

Macros

#define ZSDELAY()   udelay(5)
 
#define ZSDELAY_LONG()   udelay(20)
 
#define ZS_WSYNC(channel)   do { } while (0)
 
#define NUM_IP22ZILOG   1
 
#define NUM_CHANNELS   (NUM_IP22ZILOG * 2)
 
#define ZS_CLOCK   3672000 /* Zilog input clock rate. */
 
#define ZS_CLOCK_DIVISOR   16 /* Divisor this driver uses. */
 
#define IP22ZILOG_FLAG_IS_CONS   0x00000004
 
#define IP22ZILOG_FLAG_IS_KGDB   0x00000008
 
#define IP22ZILOG_FLAG_MODEM_STATUS   0x00000010
 
#define IP22ZILOG_FLAG_IS_CHANNEL_A   0x00000020
 
#define IP22ZILOG_FLAG_REGS_HELD   0x00000040
 
#define IP22ZILOG_FLAG_TX_STOPPED   0x00000080
 
#define IP22ZILOG_FLAG_TX_ACTIVE   0x00000100
 
#define IP22ZILOG_FLAG_RESET_DONE   0x00000200
 
#define ZILOG_CHANNEL_FROM_PORT(PORT)   ((struct zilog_channel *)((PORT)->membase))
 
#define UART_ZILOG(PORT)   ((struct uart_ip22zilog_port *)(PORT))
 
#define IP22ZILOG_GET_CURR_REG(PORT, REGNUM)   (UART_ZILOG(PORT)->curregs[REGNUM])
 
#define IP22ZILOG_SET_CURR_REG(PORT, REGNUM, REGVAL)   ((UART_ZILOG(PORT)->curregs[REGNUM]) = (REGVAL))
 
#define ZS_IS_CONS(UP)   ((UP)->flags & IP22ZILOG_FLAG_IS_CONS)
 
#define ZS_IS_KGDB(UP)   ((UP)->flags & IP22ZILOG_FLAG_IS_KGDB)
 
#define ZS_WANTS_MODEM_STATUS(UP)   ((UP)->flags & IP22ZILOG_FLAG_MODEM_STATUS)
 
#define ZS_IS_CHANNEL_A(UP)   ((UP)->flags & IP22ZILOG_FLAG_IS_CHANNEL_A)
 
#define ZS_REGS_HELD(UP)   ((UP)->flags & IP22ZILOG_FLAG_REGS_HELD)
 
#define ZS_TX_STOPPED(UP)   ((UP)->flags & IP22ZILOG_FLAG_TX_STOPPED)
 
#define ZS_TX_ACTIVE(UP)   ((UP)->flags & IP22ZILOG_FLAG_TX_ACTIVE)
 
#define Rx_BRK   0x0100 /* BREAK event software flag. */
 
#define Rx_SYS   0x0200 /* SysRq event software flag. */
 
#define ZS_PUT_CHAR_MAX_DELAY   2000 /* 10 ms */
 

Functions

 module_init (ip22zilog_init)
 
 module_exit (ip22zilog_exit)
 
 MODULE_AUTHOR ("Ralf Baechle <[email protected]>")
 
 MODULE_DESCRIPTION ("SGI Zilog serial port driver")
 
 MODULE_LICENSE ("GPL")
 

Macro Definition Documentation

#define IP22ZILOG_FLAG_IS_CHANNEL_A   0x00000020

Definition at line 78 of file ip22zilog.c.

#define IP22ZILOG_FLAG_IS_CONS   0x00000004

Definition at line 75 of file ip22zilog.c.

#define IP22ZILOG_FLAG_IS_KGDB   0x00000008

Definition at line 76 of file ip22zilog.c.

#define IP22ZILOG_FLAG_MODEM_STATUS   0x00000010

Definition at line 77 of file ip22zilog.c.

#define IP22ZILOG_FLAG_REGS_HELD   0x00000040

Definition at line 79 of file ip22zilog.c.

#define IP22ZILOG_FLAG_RESET_DONE   0x00000200

Definition at line 82 of file ip22zilog.c.

#define IP22ZILOG_FLAG_TX_ACTIVE   0x00000100

Definition at line 81 of file ip22zilog.c.

#define IP22ZILOG_FLAG_TX_STOPPED   0x00000080

Definition at line 80 of file ip22zilog.c.

#define IP22ZILOG_GET_CURR_REG (   PORT,
  REGNUM 
)    (UART_ZILOG(PORT)->curregs[REGNUM])

Definition at line 92 of file ip22zilog.c.

#define IP22ZILOG_SET_CURR_REG (   PORT,
  REGNUM,
  REGVAL 
)    ((UART_ZILOG(PORT)->curregs[REGNUM]) = (REGVAL))

Definition at line 94 of file ip22zilog.c.

#define NUM_CHANNELS   (NUM_IP22ZILOG * 2)

Definition at line 57 of file ip22zilog.c.

#define NUM_IP22ZILOG   1

Definition at line 56 of file ip22zilog.c.

#define Rx_BRK   0x0100 /* BREAK event software flag. */

Definition at line 248 of file ip22zilog.c.

#define Rx_SYS   0x0200 /* SysRq event software flag. */

Definition at line 249 of file ip22zilog.c.

#define UART_ZILOG (   PORT)    ((struct uart_ip22zilog_port *)(PORT))

Definition at line 91 of file ip22zilog.c.

#define ZILOG_CHANNEL_FROM_PORT (   PORT)    ((struct zilog_channel *)((PORT)->membase))

Definition at line 90 of file ip22zilog.c.

#define ZS_CLOCK   3672000 /* Zilog input clock rate. */

Definition at line 59 of file ip22zilog.c.

#define ZS_CLOCK_DIVISOR   16 /* Divisor this driver uses. */

Definition at line 60 of file ip22zilog.c.

#define ZS_IS_CHANNEL_A (   UP)    ((UP)->flags & IP22ZILOG_FLAG_IS_CHANNEL_A)

Definition at line 99 of file ip22zilog.c.

#define ZS_IS_CONS (   UP)    ((UP)->flags & IP22ZILOG_FLAG_IS_CONS)

Definition at line 96 of file ip22zilog.c.

#define ZS_IS_KGDB (   UP)    ((UP)->flags & IP22ZILOG_FLAG_IS_KGDB)

Definition at line 97 of file ip22zilog.c.

#define ZS_PUT_CHAR_MAX_DELAY   2000 /* 10 ms */

Definition at line 991 of file ip22zilog.c.

#define ZS_REGS_HELD (   UP)    ((UP)->flags & IP22ZILOG_FLAG_REGS_HELD)

Definition at line 100 of file ip22zilog.c.

#define ZS_TX_ACTIVE (   UP)    ((UP)->flags & IP22ZILOG_FLAG_TX_ACTIVE)

Definition at line 102 of file ip22zilog.c.

#define ZS_TX_STOPPED (   UP)    ((UP)->flags & IP22ZILOG_FLAG_TX_STOPPED)

Definition at line 101 of file ip22zilog.c.

#define ZS_WANTS_MODEM_STATUS (   UP)    ((UP)->flags & IP22ZILOG_FLAG_MODEM_STATUS)

Definition at line 98 of file ip22zilog.c.

#define ZS_WSYNC (   channel)    do { } while (0)

Definition at line 54 of file ip22zilog.c.

#define ZSDELAY ( )    udelay(5)

Definition at line 52 of file ip22zilog.c.

#define ZSDELAY_LONG ( )    udelay(20)

Definition at line 53 of file ip22zilog.c.

Function Documentation

MODULE_AUTHOR ( "Ralf Baechle <[email protected]>"  )
MODULE_DESCRIPTION ( "SGI Zilog serial port driver )
module_exit ( ip22zilog_exit  )
module_init ( ip22zilog_init  )
MODULE_LICENSE ( "GPL"  )