Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
pata_ep93xx.c File Reference
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/blkdev.h>
#include <scsi/scsi_host.h>
#include <linux/ata.h>
#include <linux/libata.h>
#include <linux/platform_device.h>
#include <linux/delay.h>
#include <linux/dmaengine.h>
#include <linux/ktime.h>
#include <linux/platform_data/dma-ep93xx.h>
#include <mach/platform.h>

Go to the source code of this file.

Data Structures

struct  ep93xx_pata_data
 

Macros

#define DRV_NAME   "ep93xx-ide"
 
#define DRV_VERSION   "1.0"
 

Enumerations

enum  {
  IDECTRL = 0x00, IDECTRL_CS0N = (1 << 0), IDECTRL_CS1N = (1 << 1), IDECTRL_DIORN = (1 << 5),
  IDECTRL_DIOWN = (1 << 6), IDECTRL_INTRQ = (1 << 9), IDECTRL_IORDY = (1 << 10), IDECTRL_ADDR_CMD = 0 + 2,
  IDECTRL_ADDR_DATA = (ATA_REG_DATA << 2) + 2, IDECTRL_ADDR_ERROR = (ATA_REG_ERR << 2) + 2, IDECTRL_ADDR_FEATURE = (ATA_REG_FEATURE << 2) + 2, IDECTRL_ADDR_NSECT = (ATA_REG_NSECT << 2) + 2,
  IDECTRL_ADDR_LBAL = (ATA_REG_LBAL << 2) + 2, IDECTRL_ADDR_LBAM = (ATA_REG_LBAM << 2) + 2, IDECTRL_ADDR_LBAH = (ATA_REG_LBAH << 2) + 2, IDECTRL_ADDR_DEVICE = (ATA_REG_DEVICE << 2) + 2,
  IDECTRL_ADDR_STATUS = (ATA_REG_STATUS << 2) + 2, IDECTRL_ADDR_COMMAND = (ATA_REG_CMD << 2) + 2, IDECTRL_ADDR_ALTSTATUS = (0x06 << 2) + 1, IDECTRL_ADDR_CTL = (0x06 << 2) + 1,
  IDECFG = 0x04, IDECFG_IDEEN = (1 << 0), IDECFG_PIO = (1 << 1), IDECFG_MDMA = (1 << 2),
  IDECFG_UDMA = (1 << 3), IDECFG_MODE_SHIFT = 4, IDECFG_MODE_MASK = (0xf << 4), IDECFG_WST_SHIFT = 8,
  IDECFG_WST_MASK = (0x3 << 8), IDEMDMAOP = 0x08, IDEUDMAOP = 0x0c, IDEUDMAOP_UEN = (1 << 0),
  IDEUDMAOP_RWOP = (1 << 1), IDEDATAOUT = 0x10, IDEDATAIN = 0x14, IDEMDMADATAOUT = 0x18,
  IDEMDMADATAIN = 0x1c, IDEUDMADATAOUT = 0x20, IDEUDMADATAIN = 0x24, IDEUDMASTS = 0x28,
  IDEUDMASTS_DMAIDE = (1 << 16), IDEUDMASTS_INTIDE = (1 << 17), IDEUDMASTS_SBUSY = (1 << 18), IDEUDMASTS_NDO = (1 << 24),
  IDEUDMASTS_NDI = (1 << 25), IDEUDMASTS_N4X = (1 << 26), IDEUDMADEBUG = 0x2c
}
 

Functions

 module_platform_driver (ep93xx_pata_platform_driver)
 
 MODULE_AUTHOR ("Alessandro Zummo, Lennert Buytenhek, Joao Ramos, ""Bartlomiej Zolnierkiewicz, Rafal Prylowski")
 
 MODULE_DESCRIPTION ("low-level driver for cirrus ep93xx IDE controller")
 
 MODULE_LICENSE ("GPL")
 
 MODULE_VERSION (DRV_VERSION)
 
 MODULE_ALIAS ("platform:pata_ep93xx")
 

Macro Definition Documentation

#define DRV_NAME   "ep93xx-ide"

Definition at line 49 of file pata_ep93xx.c.

#define DRV_VERSION   "1.0"

Definition at line 50 of file pata_ep93xx.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
IDECTRL 
IDECTRL_CS0N 
IDECTRL_CS1N 
IDECTRL_DIORN 
IDECTRL_DIOWN 
IDECTRL_INTRQ 
IDECTRL_IORDY 
IDECTRL_ADDR_CMD 
IDECTRL_ADDR_DATA 
IDECTRL_ADDR_ERROR 
IDECTRL_ADDR_FEATURE 
IDECTRL_ADDR_NSECT 
IDECTRL_ADDR_LBAL 
IDECTRL_ADDR_LBAM 
IDECTRL_ADDR_LBAH 
IDECTRL_ADDR_DEVICE 
IDECTRL_ADDR_STATUS 
IDECTRL_ADDR_COMMAND 
IDECTRL_ADDR_ALTSTATUS 
IDECTRL_ADDR_CTL 
IDECFG 
IDECFG_IDEEN 
IDECFG_PIO 
IDECFG_MDMA 
IDECFG_UDMA 
IDECFG_MODE_SHIFT 
IDECFG_MODE_MASK 
IDECFG_WST_SHIFT 
IDECFG_WST_MASK 
IDEMDMAOP 
IDEUDMAOP 
IDEUDMAOP_UEN 
IDEUDMAOP_RWOP 
IDEDATAOUT 
IDEDATAIN 
IDEMDMADATAOUT 
IDEMDMADATAIN 
IDEUDMADATAOUT 
IDEUDMADATAIN 
IDEUDMASTS 
IDEUDMASTS_DMAIDE 
IDEUDMASTS_INTIDE 
IDEUDMASTS_SBUSY 
IDEUDMASTS_NDO 
IDEUDMASTS_NDI 
IDEUDMASTS_N4X 
IDEUDMADEBUG 

Definition at line 52 of file pata_ep93xx.c.

Function Documentation

MODULE_ALIAS ( "platform:pata_ep93xx"  )
MODULE_AUTHOR ( "Alessandro  Zummo,
Lennert  Buytenhek,
Joao  Ramos,
""Bartlomiej  Zolnierkiewicz,
Rafal Prylowski"   
)
MODULE_DESCRIPTION ( "low-level driver for cirrus ep93xx IDE controller )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( ep93xx_pata_platform_driver  )
MODULE_VERSION ( DRV_VERSION  )