Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
sata_sil.c File Reference
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/init.h>
#include <linux/blkdev.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/device.h>
#include <scsi/scsi_host.h>
#include <linux/libata.h>
#include <linux/dmi.h>

Go to the source code of this file.

Data Structures

struct  sil_drivelist
 

Macros

#define DRV_NAME   "sata_sil"
 
#define DRV_VERSION   "2.4"
 
#define SIL_DMA_BOUNDARY   0x7fffffffUL
 

Enumerations

enum  {
  SIL_MMIO_BAR = 5, SIL_FLAG_NO_SATA_IRQ = (1 << 28), SIL_FLAG_RERR_ON_DMA_ACT = (1 << 29), SIL_FLAG_MOD15WRITE = (1 << 30),
  SIL_DFL_PORT_FLAGS = ATA_FLAG_SATA, sil_3112 = 0, sil_3112_no_sata_irq = 1, sil_3512 = 2,
  sil_3114 = 3, SIL_SYSCFG = 0x48, SIL_MASK_IDE0_INT = (1 << 22), SIL_MASK_IDE1_INT = (1 << 23),
  SIL_MASK_IDE2_INT = (1 << 24), SIL_MASK_IDE3_INT = (1 << 25), SIL_MASK_2PORT = SIL_MASK_IDE0_INT | SIL_MASK_IDE1_INT, SIL_MASK_4PORT,
  SIL_INTR_STEERING = (1 << 1), SIL_DMA_ENABLE = (1 << 0), SIL_DMA_RDWR = (1 << 3), SIL_DMA_SATA_IRQ = (1 << 4),
  SIL_DMA_ACTIVE = (1 << 16), SIL_DMA_ERROR = (1 << 17), SIL_DMA_COMPLETE = (1 << 18), SIL_DMA_N_SATA_IRQ = (1 << 6),
  SIL_DMA_N_ACTIVE = (1 << 24), SIL_DMA_N_ERROR = (1 << 25), SIL_DMA_N_COMPLETE = (1 << 26), SIL_SIEN_N = (1 << 16),
  SIL_QUIRK_MOD15WRITE = (1 << 0), SIL_QUIRK_UDMA5MAX = (1 << 1)
}
 

Functions

 MODULE_AUTHOR ("Jeff Garzik")
 
 MODULE_DESCRIPTION ("low-level driver for Silicon Image SATA controller")
 
 MODULE_LICENSE ("GPL")
 
 MODULE_DEVICE_TABLE (pci, sil_pci_tbl)
 
 MODULE_VERSION (DRV_VERSION)
 
 module_param (slow_down, int, 0444)
 
 MODULE_PARM_DESC (slow_down,"Sledgehammer used to work around random problems, by limiting commands to 15 sectors (0=off, 1=on)")
 
 module_pci_driver (sil_pci_driver)
 

Macro Definition Documentation

#define DRV_NAME   "sata_sil"

Definition at line 49 of file sata_sil.c.

#define DRV_VERSION   "2.4"

Definition at line 50 of file sata_sil.c.

#define SIL_DMA_BOUNDARY   0x7fffffffUL

Definition at line 52 of file sata_sil.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
SIL_MMIO_BAR 
SIL_FLAG_NO_SATA_IRQ 
SIL_FLAG_RERR_ON_DMA_ACT 
SIL_FLAG_MOD15WRITE 
SIL_DFL_PORT_FLAGS 
sil_3112 
sil_3112_no_sata_irq 
sil_3512 
sil_3114 
SIL_SYSCFG 
SIL_MASK_IDE0_INT 
SIL_MASK_IDE1_INT 
SIL_MASK_IDE2_INT 
SIL_MASK_IDE3_INT 
SIL_MASK_2PORT 
SIL_MASK_4PORT 
SIL_INTR_STEERING 
SIL_DMA_ENABLE 
SIL_DMA_RDWR 
SIL_DMA_SATA_IRQ 
SIL_DMA_ACTIVE 
SIL_DMA_ERROR 
SIL_DMA_COMPLETE 
SIL_DMA_N_SATA_IRQ 
SIL_DMA_N_ACTIVE 
SIL_DMA_N_ERROR 
SIL_DMA_N_COMPLETE 
SIL_SIEN_N 
SIL_QUIRK_MOD15WRITE 
SIL_QUIRK_UDMA5MAX 

Definition at line 54 of file sata_sil.c.

Function Documentation

MODULE_AUTHOR ( "Jeff Garzik"  )
MODULE_DESCRIPTION ( "low-level driver for Silicon Image SATA controller )
MODULE_DEVICE_TABLE ( pci  ,
sil_pci_tbl   
)
MODULE_LICENSE ( "GPL"  )
module_param ( slow_down  ,
int  ,
0444   
)
MODULE_PARM_DESC ( slow_down  ,
"Sledgehammer used to work around random  problems,
by limiting commands to 15 sectors(0=off, 1=on)"   
)
module_pci_driver ( sil_pci_driver  )
MODULE_VERSION ( DRV_VERSION  )

Variable Documentation

unsigned long bmdma

Definition at line 239 of file sata_sil.c.

unsigned long bmdma2

Definition at line 240 of file sata_sil.c.

u32 ctl

Definition at line 238 of file sata_sil.c.

unsigned long fifo_cfg

Definition at line 241 of file sata_sil.c.

unsigned long scr

Definition at line 242 of file sata_sil.c.

unsigned long sfis_cfg

Definition at line 245 of file sata_sil.c.

unsigned long sien

Definition at line 243 of file sata_sil.c.

unsigned long tf

Definition at line 237 of file sata_sil.c.

unsigned long xfer_mode

Definition at line 244 of file sata_sil.c.