Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
7990.h File Reference

Go to the source code of this file.

Data Structures

struct  lance_rx_desc
 
struct  lance_tx_desc
 
struct  lance_init_block
 
struct  lance_private
 

Macros

#define LANCE_RDP   0 /* Register Data Port */
 
#define LANCE_RAP   2 /* Register Address Port */
 
#define LANCE_LOG_TX_BUFFERS   1
 
#define LANCE_LOG_RX_BUFFERS   3
 
#define TX_RING_SIZE   (1<<LANCE_LOG_TX_BUFFERS)
 
#define RX_RING_SIZE   (1<<LANCE_LOG_RX_BUFFERS)
 
#define TX_RING_MOD_MASK   (TX_RING_SIZE - 1)
 
#define RX_RING_MOD_MASK   (RX_RING_SIZE - 1)
 
#define TX_RING_LEN_BITS   ((LANCE_LOG_TX_BUFFERS) << 29)
 
#define RX_RING_LEN_BITS   ((LANCE_LOG_RX_BUFFERS) << 29)
 
#define PKT_BUFF_SIZE   (1544)
 
#define RX_BUFF_SIZE   PKT_BUFF_SIZE
 
#define TX_BUFF_SIZE   PKT_BUFF_SIZE
 
#define LE_CSR0   0x0000 /* LANCE Controller Status */
 
#define LE_CSR1   0x0001 /* IADR[15:0] (bit0==0 ie word aligned) */
 
#define LE_CSR2   0x0002 /* IADR[23:16] (high bits reserved) */
 
#define LE_CSR3   0x0003 /* Misc */
 
#define LE_C0_ERR   0x8000 /* Error = BABL | CERR | MISS | MERR */
 
#define LE_C0_BABL   0x4000 /* Babble: Transmitted too many bits */
 
#define LE_C0_CERR   0x2000 /* No Heartbeat (10BASE-T) */
 
#define LE_C0_MISS   0x1000 /* Missed Frame (no rx buffer to put it in) */
 
#define LE_C0_MERR   0x0800 /* Memory Error */
 
#define LE_C0_RINT   0x0400 /* Receive Interrupt */
 
#define LE_C0_TINT   0x0200 /* Transmit Interrupt */
 
#define LE_C0_IDON   0x0100 /* Initialization Done */
 
#define LE_C0_INTR
 
#define LE_C0_INEA   0x0040 /* Interrupt Enable */
 
#define LE_C0_RXON   0x0020 /* Receive On */
 
#define LE_C0_TXON   0x0010 /* Transmit On */
 
#define LE_C0_TDMD   0x0008 /* Transmit Demand */
 
#define LE_C0_STOP   0x0004 /* Stop */
 
#define LE_C0_STRT   0x0002 /* Start */
 
#define LE_C0_INIT   0x0001 /* Initialize */
 
#define LE_C3_BSWP
 
#define LE_C3_ACON
 
#define LE_C3_BCON   0x0001 /* Byte Control */
 
#define LE_MO_PROM   0x8000 /* Promiscuous Mode */
 
#define LE_MO_DRCVBC   0x4000 /* disable receive broadcast */
 
#define LE_MO_DRCVPA   0x2000 /* disable physical address detection */
 
#define LE_MO_DLNKTST   0x1000 /* disable link status */
 
#define LE_MO_DAPC   0x0800 /* disable automatic polarity correction */
 
#define LE_MO_MENDECL   0x0400 /* MENDEC loopback mode */
 
#define LE_MO_LRTTSEL   0x0200 /* lower RX threshold / TX mode selection */
 
#define LE_MO_PSEL1   0x0100 /* port selection bit1 */
 
#define LE_MO_PSEL0   0x0080 /* port selection bit0 */
 
#define LE_MO_EMBA
 
#define LE_MO_INTL   0x0040 /* Internal Loopback */
 
#define LE_MO_DRTY   0x0020 /* Disable Retry */
 
#define LE_MO_FCOLL   0x0010 /* Force Collision */
 
#define LE_MO_DXMTFCS   0x0008 /* Disable Transmit CRC */
 
#define LE_MO_LOOP   0x0004 /* Loopback Enable */
 
#define LE_MO_DTX   0x0002 /* Disable Transmitter */
 
#define LE_MO_DRX   0x0001 /* Disable Receiver */
 
#define LE_R1_OWN   0x80 /* LANCE owns the descriptor */
 
#define LE_R1_ERR   0x40 /* Error */
 
#define LE_R1_FRA   0x20 /* Framing Error */
 
#define LE_R1_OFL   0x10 /* Overflow Error */
 
#define LE_R1_CRC   0x08 /* CRC Error */
 
#define LE_R1_BUF   0x04 /* Buffer Error */
 
#define LE_R1_SOP   0x02 /* Start of Packet */
 
#define LE_R1_EOP   0x01 /* End of Packet */
 
#define LE_R1_POK   0x03 /* Packet is complete: SOP + EOP */
 
#define LE_T1_OWN   0x80 /* LANCE owns the descriptor */
 
#define LE_T1_ERR   0x40 /* Error */
 
#define LE_T1_RES   0x20 /* Reserved, LANCE writes this with a zero */
 
#define LE_T1_EMORE   0x10 /* More than one retry needed */
 
#define LE_T1_EONE   0x08 /* One retry needed */
 
#define LE_T1_EDEF   0x04 /* Deferred */
 
#define LE_T1_SOP   0x02 /* Start of Packet */
 
#define LE_T1_EOP   0x01 /* End of Packet */
 
#define LE_T1_POK   0x03 /* Packet is complete: SOP + EOP */
 
#define LE_T3_BUF   0x8000 /* Buffer Error */
 
#define LE_T3_UFL   0x4000 /* Underflow Error */
 
#define LE_T3_LCOL   0x1000 /* Late Collision */
 
#define LE_T3_CLOS   0x0800 /* Loss of Carrier */
 
#define LE_T3_RTY   0x0400 /* Retry Error */
 
#define LE_T3_TDR   0x03ff /* Time Domain Reflectometry */
 
#define TX_BUFFS_AVAIL
 
#define LANCE_ADDR(x)   ((int)(x) & ~0xff000000)
 

Functions

int lance_open (struct net_device *dev)
 
int lance_close (struct net_device *dev)
 
int lance_start_xmit (struct sk_buff *skb, struct net_device *dev)
 
void lance_set_multicast (struct net_device *dev)
 
void lance_tx_timeout (struct net_device *dev)
 

Macro Definition Documentation

#define LANCE_ADDR (   x)    ((int)(x) & ~0xff000000)

Definition at line 238 of file 7990.h.

#define LANCE_LOG_RX_BUFFERS   3

Definition at line 35 of file 7990.h.

#define LANCE_LOG_TX_BUFFERS   1

Definition at line 34 of file 7990.h.

#define LANCE_RAP   2 /* Register Address Port */

Definition at line 18 of file 7990.h.

#define LANCE_RDP   0 /* Register Data Port */

Definition at line 17 of file 7990.h.

#define LE_C0_BABL   0x4000 /* Babble: Transmitted too many bits */

Definition at line 143 of file 7990.h.

#define LE_C0_CERR   0x2000 /* No Heartbeat (10BASE-T) */

Definition at line 144 of file 7990.h.

#define LE_C0_ERR   0x8000 /* Error = BABL | CERR | MISS | MERR */

Definition at line 142 of file 7990.h.

#define LE_C0_IDON   0x0100 /* Initialization Done */

Definition at line 149 of file 7990.h.

#define LE_C0_INEA   0x0040 /* Interrupt Enable */

Definition at line 151 of file 7990.h.

#define LE_C0_INIT   0x0001 /* Initialize */

Definition at line 157 of file 7990.h.

#define LE_C0_INTR
Value:
0x0080 /* Interrupt Flag
= BABL | MISS | MERR | RINT | TINT | IDON */

Definition at line 150 of file 7990.h.

#define LE_C0_MERR   0x0800 /* Memory Error */

Definition at line 146 of file 7990.h.

#define LE_C0_MISS   0x1000 /* Missed Frame (no rx buffer to put it in) */

Definition at line 145 of file 7990.h.

#define LE_C0_RINT   0x0400 /* Receive Interrupt */

Definition at line 147 of file 7990.h.

#define LE_C0_RXON   0x0020 /* Receive On */

Definition at line 152 of file 7990.h.

#define LE_C0_STOP   0x0004 /* Stop */

Definition at line 155 of file 7990.h.

#define LE_C0_STRT   0x0002 /* Start */

Definition at line 156 of file 7990.h.

#define LE_C0_TDMD   0x0008 /* Transmit Demand */

Definition at line 154 of file 7990.h.

#define LE_C0_TINT   0x0200 /* Transmit Interrupt */

Definition at line 148 of file 7990.h.

#define LE_C0_TXON   0x0010 /* Transmit On */

Definition at line 153 of file 7990.h.

#define LE_C3_ACON
Value:
0x0002 /* ALE Control
(on for active low ALE) */

Definition at line 164 of file 7990.h.

#define LE_C3_BCON   0x0001 /* Byte Control */

Definition at line 165 of file 7990.h.

#define LE_C3_BSWP
Value:
0x0004 /* Byte Swap
(on for big endian byte order) */

Definition at line 163 of file 7990.h.

#define LE_CSR0   0x0000 /* LANCE Controller Status */

Definition at line 134 of file 7990.h.

#define LE_CSR1   0x0001 /* IADR[15:0] (bit0==0 ie word aligned) */

Definition at line 135 of file 7990.h.

#define LE_CSR2   0x0002 /* IADR[23:16] (high bits reserved) */

Definition at line 136 of file 7990.h.

#define LE_CSR3   0x0003 /* Misc */

Definition at line 137 of file 7990.h.

#define LE_MO_DAPC   0x0800 /* disable automatic polarity correction */

Definition at line 178 of file 7990.h.

#define LE_MO_DLNKTST   0x1000 /* disable link status */

Definition at line 177 of file 7990.h.

#define LE_MO_DRCVBC   0x4000 /* disable receive broadcast */

Definition at line 175 of file 7990.h.

#define LE_MO_DRCVPA   0x2000 /* disable physical address detection */

Definition at line 176 of file 7990.h.

#define LE_MO_DRTY   0x0020 /* Disable Retry */

Definition at line 186 of file 7990.h.

#define LE_MO_DRX   0x0001 /* Disable Receiver */

Definition at line 191 of file 7990.h.

#define LE_MO_DTX   0x0002 /* Disable Transmitter */

Definition at line 190 of file 7990.h.

#define LE_MO_DXMTFCS   0x0008 /* Disable Transmit CRC */

Definition at line 188 of file 7990.h.

#define LE_MO_EMBA
Value:
0x0080 /* Enable Modified Backoff Algorithm
(C-LANCE, not original LANCE) */

Definition at line 184 of file 7990.h.

#define LE_MO_FCOLL   0x0010 /* Force Collision */

Definition at line 187 of file 7990.h.

#define LE_MO_INTL   0x0040 /* Internal Loopback */

Definition at line 185 of file 7990.h.

#define LE_MO_LOOP   0x0004 /* Loopback Enable */

Definition at line 189 of file 7990.h.

#define LE_MO_LRTTSEL   0x0200 /* lower RX threshold / TX mode selection */

Definition at line 180 of file 7990.h.

#define LE_MO_MENDECL   0x0400 /* MENDEC loopback mode */

Definition at line 179 of file 7990.h.

#define LE_MO_PROM   0x8000 /* Promiscuous Mode */

Definition at line 171 of file 7990.h.

#define LE_MO_PSEL0   0x0080 /* port selection bit0 */

Definition at line 182 of file 7990.h.

#define LE_MO_PSEL1   0x0100 /* port selection bit1 */

Definition at line 181 of file 7990.h.

#define LE_R1_BUF   0x04 /* Buffer Error */

Definition at line 202 of file 7990.h.

#define LE_R1_CRC   0x08 /* CRC Error */

Definition at line 201 of file 7990.h.

#define LE_R1_EOP   0x01 /* End of Packet */

Definition at line 204 of file 7990.h.

#define LE_R1_ERR   0x40 /* Error */

Definition at line 198 of file 7990.h.

#define LE_R1_FRA   0x20 /* Framing Error */

Definition at line 199 of file 7990.h.

#define LE_R1_OFL   0x10 /* Overflow Error */

Definition at line 200 of file 7990.h.

#define LE_R1_OWN   0x80 /* LANCE owns the descriptor */

Definition at line 197 of file 7990.h.

#define LE_R1_POK   0x03 /* Packet is complete: SOP + EOP */

Definition at line 205 of file 7990.h.

#define LE_R1_SOP   0x02 /* Start of Packet */

Definition at line 203 of file 7990.h.

#define LE_T1_EDEF   0x04 /* Deferred */

Definition at line 216 of file 7990.h.

#define LE_T1_EMORE   0x10 /* More than one retry needed */

Definition at line 214 of file 7990.h.

#define LE_T1_EONE   0x08 /* One retry needed */

Definition at line 215 of file 7990.h.

#define LE_T1_EOP   0x01 /* End of Packet */

Definition at line 218 of file 7990.h.

#define LE_T1_ERR   0x40 /* Error */

Definition at line 212 of file 7990.h.

#define LE_T1_OWN   0x80 /* LANCE owns the descriptor */

Definition at line 211 of file 7990.h.

#define LE_T1_POK   0x03 /* Packet is complete: SOP + EOP */

Definition at line 219 of file 7990.h.

#define LE_T1_RES   0x20 /* Reserved, LANCE writes this with a zero */

Definition at line 213 of file 7990.h.

#define LE_T1_SOP   0x02 /* Start of Packet */

Definition at line 217 of file 7990.h.

#define LE_T3_BUF   0x8000 /* Buffer Error */

Definition at line 224 of file 7990.h.

#define LE_T3_CLOS   0x0800 /* Loss of Carrier */

Definition at line 227 of file 7990.h.

#define LE_T3_LCOL   0x1000 /* Late Collision */

Definition at line 226 of file 7990.h.

#define LE_T3_RTY   0x0400 /* Retry Error */

Definition at line 228 of file 7990.h.

#define LE_T3_TDR   0x03ff /* Time Domain Reflectometry */

Definition at line 229 of file 7990.h.

#define LE_T3_UFL   0x4000 /* Underflow Error */

Definition at line 225 of file 7990.h.

#define PKT_BUFF_SIZE   (1544)

Definition at line 44 of file 7990.h.

#define RX_BUFF_SIZE   PKT_BUFF_SIZE

Definition at line 45 of file 7990.h.

#define RX_RING_LEN_BITS   ((LANCE_LOG_RX_BUFFERS) << 29)

Definition at line 43 of file 7990.h.

#define RX_RING_MOD_MASK   (RX_RING_SIZE - 1)

Definition at line 41 of file 7990.h.

#define RX_RING_SIZE   (1<<LANCE_LOG_RX_BUFFERS)

Definition at line 39 of file 7990.h.

#define TX_BUFF_SIZE   PKT_BUFF_SIZE

Definition at line 46 of file 7990.h.

#define TX_BUFFS_AVAIL
Value:
((lp->tx_old<=lp->tx_new)?\
lp->tx_old+lp->tx_ring_mod_mask-lp->tx_new:\
lp->tx_old - lp->tx_new-1)

Definition at line 233 of file 7990.h.

#define TX_RING_LEN_BITS   ((LANCE_LOG_TX_BUFFERS) << 29)

Definition at line 42 of file 7990.h.

#define TX_RING_MOD_MASK   (TX_RING_SIZE - 1)

Definition at line 40 of file 7990.h.

#define TX_RING_SIZE   (1<<LANCE_LOG_TX_BUFFERS)

Definition at line 38 of file 7990.h.

Function Documentation

int lance_close ( struct net_device dev)

Definition at line 508 of file 7990.c.

int lance_open ( struct net_device dev)

Definition at line 491 of file 7990.c.

void lance_set_multicast ( struct net_device dev)

Definition at line 617 of file 7990.c.

int lance_start_xmit ( struct sk_buff skb,
struct net_device dev 
)

Definition at line 533 of file 7990.c.

void lance_tx_timeout ( struct net_device dev)

Definition at line 524 of file 7990.c.