Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
eata.c File Reference
#include <linux/string.h>
#include <linux/kernel.h>
#include <linux/ioport.h>
#include <linux/delay.h>
#include <linux/proc_fs.h>
#include <linux/blkdev.h>
#include <linux/interrupt.h>
#include <linux/stat.h>
#include <linux/pci.h>
#include <linux/init.h>
#include <linux/ctype.h>
#include <linux/spinlock.h>
#include <linux/dma-mapping.h>
#include <linux/slab.h>
#include <asm/byteorder.h>
#include <asm/dma.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <scsi/scsi.h>
#include <scsi/scsi_cmnd.h>
#include <scsi/scsi_device.h>
#include <scsi/scsi_host.h>
#include <scsi/scsi_tcq.h>
#include <scsi/scsicam.h>
#include "scsi_module.c"

Go to the source code of this file.

Data Structures

struct  eata_info
 
struct  eata_config
 
struct  mssp
 
struct  sg_list
 
struct  mscp
 
struct  hostdata
 

Macros

#define ISA   0
 
#define ESA   1
 
#define MAX_ISA   4
 
#define MAX_VESA   0
 
#define MAX_EISA   15
 
#define MAX_PCI   16
 
#define MAX_BOARDS   (MAX_ISA + MAX_VESA + MAX_EISA + MAX_PCI)
 
#define MAX_CHANNEL   4
 
#define MAX_LUN   32
 
#define MAX_TARGET   32
 
#define MAX_MAILBOXES   64
 
#define MAX_SGLIST   64
 
#define MAX_LARGE_SGLIST   122
 
#define MAX_INTERNAL_RETRIES   64
 
#define MAX_CMD_PER_LUN   2
 
#define MAX_TAGGED_CMD_PER_LUN   (MAX_MAILBOXES - MAX_CMD_PER_LUN)
 
#define SKIP   ULONG_MAX
 
#define FREE   0
 
#define IN_USE   1
 
#define LOCKED   2
 
#define IN_RESET   3
 
#define IGNORE   4
 
#define READY   5
 
#define ABORTING   6
 
#define NO_DMA   0xff
 
#define MAXLOOP   10000
 
#define TAG_DISABLED   0
 
#define TAG_SIMPLE   1
 
#define TAG_ORDERED   2
 
#define REG_CMD   7
 
#define REG_STATUS   7
 
#define REG_AUX_STATUS   8
 
#define REG_DATA   0
 
#define REG_DATA2   1
 
#define REG_SEE   6
 
#define REG_LOW   2
 
#define REG_LM   3
 
#define REG_MID   4
 
#define REG_MSB   5
 
#define REGION_SIZE   9UL
 
#define MAX_ISA_ADDR   0x03ff
 
#define MIN_EISA_ADDR   0x1c88
 
#define MAX_EISA_ADDR   0xfc88
 
#define BSY_ASSERTED   0x80
 
#define DRQ_ASSERTED   0x08
 
#define ABSY_ASSERTED   0x01
 
#define IRQ_ASSERTED   0x02
 
#define READ_CONFIG_PIO   0xf0
 
#define SET_CONFIG_PIO   0xf1
 
#define SEND_CP_PIO   0xf2
 
#define RECEIVE_SP_PIO   0xf3
 
#define TRUNCATE_XFR_PIO   0xf4
 
#define RESET_PIO   0xf9
 
#define READ_CONFIG_DMA   0xfd
 
#define SET_CONFIG_DMA   0xfe
 
#define SEND_CP_DMA   0xff
 
#define ASOK   0x00
 
#define ASST   0x01
 
#define YESNO(a)   ((a) ? 'y' : 'n')
 
#define TLDEV(type)   ((type) == TYPE_DISK || (type) == TYPE_ROM)
 
#define EATA_SIG_BE   0x45415441
 
#define EATA_2_0A_SIZE   28
 
#define EATA_2_0B_SIZE   30
 
#define EATA_2_0C_SIZE   34
 
#define CP_TAIL_SIZE   (sizeof(struct sglist *) + sizeof(dma_addr_t))
 
#define H2DEV(x)   cpu_to_be32(x)
 
#define DEV2H(x)   be32_to_cpu(x)
 
#define H2DEV16(x)   cpu_to_be16(x)
 
#define DEV2H16(x)   be16_to_cpu(x)
 
#define REG2H(x)   le16_to_cpu(x)
 
#define MAX_INT_PARAM   10
 
#define MAX_BOOT_OPTIONS_SIZE   256
 

Functions

 __setup ("eata=", option_setup)
 

Macro Definition Documentation

#define ABORTING   6

Definition at line 570 of file eata.c.

#define ABSY_ASSERTED   0x01

Definition at line 593 of file eata.c.

#define ASOK   0x00

Definition at line 604 of file eata.c.

#define ASST   0x01

Definition at line 605 of file eata.c.

#define BSY_ASSERTED   0x80

Definition at line 591 of file eata.c.

#define CP_TAIL_SIZE   (sizeof(struct sglist *) + sizeof(dma_addr_t))

Definition at line 814 of file eata.c.

#define DEV2H (   x)    be32_to_cpu(x)

Definition at line 871 of file eata.c.

#define DEV2H16 (   x)    be16_to_cpu(x)

Definition at line 873 of file eata.c.

#define DRQ_ASSERTED   0x08

Definition at line 592 of file eata.c.

#define EATA_2_0A_SIZE   28

Definition at line 614 of file eata.c.

#define EATA_2_0B_SIZE   30

Definition at line 615 of file eata.c.

#define EATA_2_0C_SIZE   34

Definition at line 616 of file eata.c.

#define EATA_SIG_BE   0x45415441

Definition at line 611 of file eata.c.

#define ESA   1

Definition at line 535 of file eata.c.

#define FREE   0

Definition at line 564 of file eata.c.

#define H2DEV (   x)    cpu_to_be32(x)

Definition at line 870 of file eata.c.

#define H2DEV16 (   x)    cpu_to_be16(x)

Definition at line 872 of file eata.c.

#define IGNORE   4

Definition at line 568 of file eata.c.

#define IN_RESET   3

Definition at line 567 of file eata.c.

#define IN_USE   1

Definition at line 565 of file eata.c.

#define IRQ_ASSERTED   0x02

Definition at line 594 of file eata.c.

#define ISA   0

Definition at line 534 of file eata.c.

#define LOCKED   2

Definition at line 566 of file eata.c.

#define MAX_BOARDS   (MAX_ISA + MAX_VESA + MAX_EISA + MAX_PCI)

Definition at line 552 of file eata.c.

#define MAX_BOOT_OPTIONS_SIZE   256

Definition at line 924 of file eata.c.

#define MAX_CHANNEL   4

Definition at line 553 of file eata.c.

#define MAX_CMD_PER_LUN   2

Definition at line 560 of file eata.c.

#define MAX_EISA   15

Definition at line 550 of file eata.c.

#define MAX_EISA_ADDR   0xfc88

Definition at line 590 of file eata.c.

#define MAX_INT_PARAM   10

Definition at line 923 of file eata.c.

#define MAX_INTERNAL_RETRIES   64

Definition at line 559 of file eata.c.

#define MAX_ISA   4

Definition at line 548 of file eata.c.

#define MAX_ISA_ADDR   0x03ff

Definition at line 588 of file eata.c.

#define MAX_LARGE_SGLIST   122

Definition at line 558 of file eata.c.

#define MAX_LUN   32

Definition at line 554 of file eata.c.

#define MAX_MAILBOXES   64

Definition at line 556 of file eata.c.

#define MAX_PCI   16

Definition at line 551 of file eata.c.

#define MAX_SGLIST   64

Definition at line 557 of file eata.c.

#define MAX_TAGGED_CMD_PER_LUN   (MAX_MAILBOXES - MAX_CMD_PER_LUN)

Definition at line 561 of file eata.c.

#define MAX_TARGET   32

Definition at line 555 of file eata.c.

#define MAX_VESA   0

Definition at line 549 of file eata.c.

#define MAXLOOP   10000

Definition at line 572 of file eata.c.

#define MIN_EISA_ADDR   0x1c88

Definition at line 589 of file eata.c.

#define NO_DMA   0xff

Definition at line 571 of file eata.c.

#define READ_CONFIG_DMA   0xfd

Definition at line 601 of file eata.c.

#define READ_CONFIG_PIO   0xf0

Definition at line 595 of file eata.c.

#define READY   5

Definition at line 569 of file eata.c.

#define RECEIVE_SP_PIO   0xf3

Definition at line 598 of file eata.c.

#define REG2H (   x)    le16_to_cpu(x)

Definition at line 876 of file eata.c.

#define REG_AUX_STATUS   8

Definition at line 579 of file eata.c.

#define REG_CMD   7

Definition at line 577 of file eata.c.

#define REG_DATA   0

Definition at line 580 of file eata.c.

#define REG_DATA2   1

Definition at line 581 of file eata.c.

#define REG_LM   3

Definition at line 584 of file eata.c.

#define REG_LOW   2

Definition at line 583 of file eata.c.

#define REG_MID   4

Definition at line 585 of file eata.c.

#define REG_MSB   5

Definition at line 586 of file eata.c.

#define REG_SEE   6

Definition at line 582 of file eata.c.

#define REG_STATUS   7

Definition at line 578 of file eata.c.

#define REGION_SIZE   9UL

Definition at line 587 of file eata.c.

#define RESET_PIO   0xf9

Definition at line 600 of file eata.c.

#define SEND_CP_DMA   0xff

Definition at line 603 of file eata.c.

#define SEND_CP_PIO   0xf2

Definition at line 597 of file eata.c.

#define SET_CONFIG_DMA   0xfe

Definition at line 602 of file eata.c.

#define SET_CONFIG_PIO   0xf1

Definition at line 596 of file eata.c.

#define SKIP   ULONG_MAX

Definition at line 563 of file eata.c.

#define TAG_DISABLED   0

Definition at line 573 of file eata.c.

#define TAG_ORDERED   2

Definition at line 575 of file eata.c.

#define TAG_SIMPLE   1

Definition at line 574 of file eata.c.

#define TLDEV (   type)    ((type) == TYPE_DISK || (type) == TYPE_ROM)

Definition at line 608 of file eata.c.

#define TRUNCATE_XFR_PIO   0xf4

Definition at line 599 of file eata.c.

#define YESNO (   a)    ((a) ? 'y' : 'n')

Definition at line 607 of file eata.c.

Function Documentation

__setup ( )