Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
sis900.c File Reference
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/kernel.h>
#include <linux/sched.h>
#include <linux/string.h>
#include <linux/timer.h>
#include <linux/errno.h>
#include <linux/ioport.h>
#include <linux/slab.h>
#include <linux/interrupt.h>
#include <linux/pci.h>
#include <linux/netdevice.h>
#include <linux/init.h>
#include <linux/mii.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/delay.h>
#include <linux/ethtool.h>
#include <linux/crc32.h>
#include <linux/bitops.h>
#include <linux/dma-mapping.h>
#include <asm/processor.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/uaccess.h>
#include "sis900.h"

Go to the source code of this file.

Data Structures

struct  mii_chip_info
 
struct  mii_phy
 
struct  _BufferDesc
 
struct  sis900_private
 

Macros

#define SIS900_MODULE_NAME   "sis900"
 
#define SIS900_DRV_VERSION   "v1.08.10 Apr. 2 2006"
 
#define SIS900_DEF_MSG
 
#define TX_TIMEOUT   (4*HZ)
 
#define HOME   0x0001
 
#define LAN   0x0002
 
#define MIX   0x0003
 
#define UNKNOWN   0x0
 
#define sw32(reg, val)   iowrite32(val, ioaddr + (reg))
 
#define sw8(reg, val)   iowrite8(val, ioaddr + (reg))
 
#define sr32(reg)   ioread32(ioaddr + (reg))
 
#define sr16(reg)   ioread16(ioaddr + (reg))
 
#define eeprom_delay()   sr32(mear)
 
#define mdio_delay()   sr32(mear)
 

Typedefs

typedef struct _BufferDesc BufferDesc
 

Enumerations

enum  { SIS_900 = 0, SIS_7016 }
 

Functions

 MODULE_DEVICE_TABLE (pci, sis900_pci_tbl)
 
 MODULE_AUTHOR ("Jim Huang <[email protected]>, Ollie Lho <[email protected]>")
 
 MODULE_DESCRIPTION ("SiS 900 PCI Fast Ethernet driver")
 
 MODULE_LICENSE ("GPL")
 
 module_param (multicast_filter_limit, int, 0444)
 
 module_param (max_interrupt_work, int, 0444)
 
 module_param (sis900_debug, int, 0444)
 
 MODULE_PARM_DESC (multicast_filter_limit,"SiS 900/7016 maximum number of filtered multicast addresses")
 
 MODULE_PARM_DESC (max_interrupt_work,"SiS 900/7016 maximum events handled per interrupt")
 
 MODULE_PARM_DESC (sis900_debug,"SiS 900/7016 bitmapped debugging message level")
 
 module_init (sis900_init_module)
 
 module_exit (sis900_cleanup_module)
 

Macro Definition Documentation

#define eeprom_delay (   void)    sr32(mear)

Definition at line 816 of file sis900.c.

#define HOME   0x0001

Definition at line 125 of file sis900.c.

#define LAN   0x0002

Definition at line 126 of file sis900.c.

#define mdio_delay ( )    sr32(mear)

Definition at line 870 of file sis900.c.

#define MIX   0x0003

Definition at line 127 of file sis900.c.

#define SIS900_DEF_MSG
Value:
NETIF_MSG_LINK | \
NETIF_MSG_RX_ERR | \
NETIF_MSG_TX_ERR)

Definition at line 92 of file sis900.c.

#define SIS900_DRV_VERSION   "v1.08.10 Apr. 2 2006"

Definition at line 82 of file sis900.c.

#define SIS900_MODULE_NAME   "sis900"

Definition at line 81 of file sis900.c.

#define sr16 (   reg)    ioread16(ioaddr + (reg))

Definition at line 209 of file sis900.c.

#define sr32 (   reg)    ioread32(ioaddr + (reg))

Definition at line 208 of file sis900.c.

#define sw32 (   reg,
  val 
)    iowrite32(val, ioaddr + (reg))

Definition at line 206 of file sis900.c.

#define sw8 (   reg,
  val 
)    iowrite8(val, ioaddr + (reg))

Definition at line 207 of file sis900.c.

#define TX_TIMEOUT   (4*HZ)

Definition at line 99 of file sis900.c.

#define UNKNOWN   0x0

Definition at line 128 of file sis900.c.

Typedef Documentation

Enumeration Type Documentation

anonymous enum
Enumerator:
SIS_900 
SIS_7016 

Definition at line 101 of file sis900.c.

Function Documentation

MODULE_AUTHOR ( "Jim Huang <[email protected] ,
Ollie Lho< ollie @sis.com.tw >"   
)
MODULE_DESCRIPTION ( "SiS 900 PCI Fast Ethernet driver )
MODULE_DEVICE_TABLE ( pci  ,
sis900_pci_tbl   
)
module_exit ( sis900_cleanup_module  )
module_init ( sis900_init_module  )
MODULE_LICENSE ( "GPL"  )
module_param ( multicast_filter_limit  ,
int  ,
0444   
)
module_param ( max_interrupt_work  ,
int  ,
0444   
)
module_param ( sis900_debug  ,
int  ,
0444   
)
MODULE_PARM_DESC ( multicast_filter_limit  ,
"SiS 900/7016 maximum number of filtered multicast addresses"   
)
MODULE_PARM_DESC ( max_interrupt_work  ,
"SiS 900/7016 maximum events handled per interrupt  
)
MODULE_PARM_DESC ( sis900_debug  ,
"SiS 900/7016 bitmapped debugging message level  
)