Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ewrk3.c File Reference
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/sched.h>
#include <linux/string.h>
#include <linux/errno.h>
#include <linux/ioport.h>
#include <linux/slab.h>
#include <linux/interrupt.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/crc32.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/ethtool.h>
#include <linux/time.h>
#include <linux/types.h>
#include <linux/unistd.h>
#include <linux/ctype.h>
#include <linux/bitops.h>
#include <asm/io.h>
#include <asm/dma.h>
#include <asm/uaccess.h>
#include "ewrk3.h"

Go to the source code of this file.

Data Structures

struct  ewrk3_stats
 
struct  ewrk3_private
 

Macros

#define DRV_NAME   "ewrk3"
 
#define DRV_VERSION   "0.48"
 
#define EWRK3_NDA   0xffe0 /* No Device Address */
 
#define PROBE_LENGTH   32
 
#define ETH_PROM_SIG   0xAA5500FFUL
 
#define EWRK3_SIGNATURE   {"DE203","DE204","DE205",""}
 
#define EWRK3_STRLEN   8
 
#define EWRK3_RAM_BASE_ADDRESSES   {0xc0000,0xd0000,0x00000}
 
#define EWRK3_IO_BASE   0x100 /* Start address for probe search */
 
#define EWRK3_IOP_INC   0x20 /* I/O address increment */
 
#define EWRK3_TOTAL_SIZE   0x20 /* required I/O address length */
 
#define MAX_NUM_EWRK3S   21
 
#define EWRK3_EISA_IO_PORTS   0x0c00 /* I/O port base address, slot 0 */
 
#define MAX_EISA_SLOTS   16
 
#define EISA_SLOT_INC   0x1000
 
#define QUEUE_PKT_TIMEOUT   (1*HZ) /* Jiffies */
 
#define IO_ONLY   0x00
 
#define SHMEM_2K   0x800
 
#define SHMEM_32K   0x8000
 
#define SHMEM_64K   0x10000
 
#define ENABLE_IRQs
 
#define DISABLE_IRQs
 
#define START_EWRK3
 
#define STOP_EWRK3
 
#define EWRK3_PKT_STAT_SZ   16
 
#define EWRK3_PKT_BIN_SZ
 
#define FORCE_2K_MODE
 
#define INIT_EWRK3
 

Functions

struct net_device *__init ewrk3_probe (int unit)
 
 MODULE_LICENSE ("GPL")
 

Macro Definition Documentation

#define DISABLE_IRQs
Value:
{ \
icr = inb(EWRK3_ICR);\
icr &= ~lp->irq_mask;\
outb(icr, EWRK3_ICR); /* Disable the IRQs */\
}

Definition at line 237 of file ewrk3.c.

#define DRV_NAME   "ewrk3"

Definition at line 173 of file ewrk3.c.

#define DRV_VERSION   "0.48"

Definition at line 174 of file ewrk3.c.

#define EISA_SLOT_INC   0x1000

Definition at line 216 of file ewrk3.c.

#define ENABLE_IRQs
Value:
{ \
icr |= lp->irq_mask;\
outb(icr, EWRK3_ICR); /* Enable the IRQs */\
}

Definition at line 232 of file ewrk3.c.

#define ETH_PROM_SIG   0xAA5500FFUL

Definition at line 188 of file ewrk3.c.

#define EWRK3_EISA_IO_PORTS   0x0c00 /* I/O port base address, slot 0 */

Definition at line 211 of file ewrk3.c.

#define EWRK3_IO_BASE   0x100 /* Start address for probe search */

Definition at line 202 of file ewrk3.c.

#define EWRK3_IOP_INC   0x20 /* I/O address increment */

Definition at line 203 of file ewrk3.c.

#define EWRK3_NDA   0xffe0 /* No Device Address */

Definition at line 185 of file ewrk3.c.

#define EWRK3_PKT_BIN_SZ
Value:
128 /* Should be >=100 unless you
increase EWRK3_PKT_STAT_SZ */

Definition at line 261 of file ewrk3.c.

#define EWRK3_PKT_STAT_SZ   16

Definition at line 260 of file ewrk3.c.

#define EWRK3_RAM_BASE_ADDRESSES   {0xc0000,0xd0000,0x00000}

Definition at line 196 of file ewrk3.c.

#define EWRK3_SIGNATURE   {"DE203","DE204","DE205",""}

Definition at line 191 of file ewrk3.c.

#define EWRK3_STRLEN   8

Definition at line 192 of file ewrk3.c.

#define EWRK3_TOTAL_SIZE   0x20 /* required I/O address length */

Definition at line 204 of file ewrk3.c.

#define FORCE_2K_MODE
Value:
{ \
shmem_length = SHMEM_2K;\
outb(((mem_start - 0x80000) >> 11), EWRK3_MBR);\
}

Definition at line 292 of file ewrk3.c.

#define INIT_EWRK3
Value:
{\
mdelay(1);\
}

Definition at line 339 of file ewrk3.c.

#define IO_ONLY   0x00

Definition at line 224 of file ewrk3.c.

#define MAX_EISA_SLOTS   16

Definition at line 215 of file ewrk3.c.

#define MAX_NUM_EWRK3S   21

Definition at line 207 of file ewrk3.c.

#define PROBE_LENGTH   32

Definition at line 187 of file ewrk3.c.

#define QUEUE_PKT_TIMEOUT   (1*HZ) /* Jiffies */

Definition at line 219 of file ewrk3.c.

#define SHMEM_2K   0x800

Definition at line 225 of file ewrk3.c.

#define SHMEM_32K   0x8000

Definition at line 226 of file ewrk3.c.

#define SHMEM_64K   0x10000

Definition at line 227 of file ewrk3.c.

#define START_EWRK3
Value:
{ \
outb(csr, EWRK3_CSR); /* Enable the TX and/or RX */\
}

Definition at line 246 of file ewrk3.c.

#define STOP_EWRK3
Value:
{ \
outb(csr, EWRK3_CSR); /* Disable the TX and/or RX */\
}

Definition at line 252 of file ewrk3.c.

Function Documentation

struct net_device* __init ewrk3_probe ( int  unit)
read

Definition at line 345 of file ewrk3.c.

MODULE_LICENSE ( "GPL"  )