Linux Kernel
3.7.1
|
#include <linux/module.h>
#include <stdarg.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/byteorder.h>
#include <linux/string.h>
#include <linux/errno.h>
#include <linux/kernel.h>
#include <linux/ioport.h>
#include <linux/delay.h>
#include <linux/pci.h>
#include <linux/proc_fs.h>
#include <linux/blkdev.h>
#include <linux/init.h>
#include <linux/spinlock.h>
#include <linux/smp.h>
#include <linux/interrupt.h>
#include "scsi.h"
#include <scsi/scsi_host.h>
#include "aic7xxx_old/aic7xxx.h"
#include "aic7xxx_old/sequencer.h"
#include "aic7xxx_old/scsi_message.h"
#include "aic7xxx_old/aic7xxx_reg.h"
#include <scsi/scsicam.h>
#include <linux/stat.h>
#include <linux/slab.h>
#include "aic7xxx_old/aic7xxx_seq.c"
#include "aic7xxx_old/aic7xxx_proc.c"
#include "scsi_module.c"
Go to the source code of this file.
Data Structures | |
struct | adapter_tag_info_t |
struct | seeprom_config |
struct | hw_scatterlist |
struct | aic7xxx_hwscb |
struct | aic7xxx_scb_dma |
struct | aic7xxx_scb |
struct | scb_queue_type |
struct | scb_data_type |
struct | target_cmd |
struct | transinfo_type |
struct | aic_dev_data |
struct | aic7xxx_host |
struct | aic7xxx_host::aic7xxx_cmd_queue |
struct | aic7xxx_syncrate |
Macros | |
#define | AIC7XXX_STRICT_PCI_SETUP |
#define | AIC7XXX_C_VERSION "5.2.6" |
#define | ALL_TARGETS -1 |
#define | ALL_CHANNELS -1 |
#define | ALL_LUNS -1 |
#define | MAX_TARGETS 16 |
#define | MAX_LUNS 8 |
#define | AIC7XXX_CMDS_PER_DEVICE 32 |
#define | DEFAULT_TAG_COMMANDS |
#define | DID_UNDERFLOW DID_ERROR |
#define | DID_RETRY_COMMAND DID_ERROR |
#define | HSCSIID 0x07 |
#define | SCSI_RESET 0x040 |
#define | MINSLOT 1 |
#define | MAXSLOT 15 |
#define | SLOTBASE(x) ((x) << 12) |
#define | BASE_TO_SLOT(x) ((x) >> 12) |
#define | AHC_HID0 0x80 /* 0,1: msb of ID2, 2-7: ID1 */ |
#define | AHC_HID1 0x81 /* 0-4: ID3, 5-7: LSB ID2 */ |
#define | AHC_HID2 0x82 /* product */ |
#define | AHC_HID3 0x83 /* firmware revision */ |
#define | MINREG 0xC00 |
#define | MAXREG 0xCFF |
#define | INTDEF 0x5C /* Interrupt Definition Register */ |
#define | CLASS_PROGIF_REVID 0x08 |
#define | DEVREVID 0x000000FFul |
#define | PROGINFC 0x0000FF00ul |
#define | SUBCLASS 0x00FF0000ul |
#define | BASECLASS 0xFF000000ul |
#define | CSIZE_LATTIME 0x0C |
#define | CACHESIZE 0x0000003Ful /* only 5 bits */ |
#define | LATTIME 0x0000FF00ul |
#define | DEVCONFIG 0x40 |
#define | SCBSIZE32 0x00010000ul /* aic789X only */ |
#define | MPORTMODE 0x00000400ul /* aic7870 only */ |
#define | RAMPSM 0x00000200ul /* aic7870 only */ |
#define | RAMPSM_ULTRA2 0x00000004 |
#define | VOLSENSE 0x00000100ul |
#define | SCBRAMSEL 0x00000080ul |
#define | SCBRAMSEL_ULTRA2 0x00000008 |
#define | MRDCEN 0x00000040ul |
#define | EXTSCBTIME 0x00000020ul /* aic7870 only */ |
#define | EXTSCBPEN 0x00000010ul /* aic7870 only */ |
#define | BERREN 0x00000008ul |
#define | DACEN 0x00000004ul |
#define | STPWLEVEL 0x00000002ul |
#define | DIFACTNEGEN 0x00000001ul /* aic7870 only */ |
#define | SCAMCTL 0x1a /* Ultra2 only */ |
#define | CCSCBBADDR 0xf0 /* aic7895/6/7 */ |
#define | CFXFER 0x0007 /* synchronous transfer rate */ |
#define | CFSYNCH 0x0008 /* enable synchronous transfer */ |
#define | CFDISC 0x0010 /* enable disconnection */ |
#define | CFWIDEB 0x0020 /* wide bus device (wide card) */ |
#define | CFSYNCHISULTRA 0x0040 /* CFSYNC is an ultra offset */ |
#define | CFNEWULTRAFORMAT 0x0080 /* Use the Ultra2 SEEPROM format */ |
#define | CFSTART 0x0100 /* send start unit SCSI command */ |
#define | CFINCBIOS 0x0200 /* include in BIOS scan */ |
#define | CFRNFOUND 0x0400 /* report even if not found */ |
#define | CFMULTILUN 0x0800 /* probe mult luns in BIOS scan */ |
#define | CFWBCACHEYES 0x4000 /* Enable W-Behind Cache on drive */ |
#define | CFWBCACHENC 0xc000 /* Don't change W-Behind Cache */ |
#define | CFSUPREM 0x0001 /* support all removable drives */ |
#define | CFSUPREMB 0x0002 /* support removable drives for boot only */ |
#define | CFBIOSEN 0x0004 /* BIOS enabled */ |
#define | CFSM2DRV 0x0010 /* support more than two drives */ |
#define | CF284XEXTEND 0x0020 /* extended translation (284x cards) */ |
#define | CFEXTEND 0x0080 /* extended translation enabled */ |
#define | CFAUTOTERM 0x0001 /* Perform Auto termination */ |
#define | CFULTRAEN 0x0002 /* Ultra SCSI speed enable (Ultra cards) */ |
#define | CF284XSELTO 0x0003 /* Selection timeout (284x cards) */ |
#define | CF284XFIFO 0x000C /* FIFO Threshold (284x cards) */ |
#define | CFSTERM 0x0004 /* SCSI low byte termination */ |
#define | CFWSTERM 0x0008 /* SCSI high byte termination (wide card) */ |
#define | CFSPARITY 0x0010 /* SCSI parity */ |
#define | CF284XSTERM 0x0020 /* SCSI low byte termination (284x cards) */ |
#define | CFRESETB 0x0040 /* reset SCSI bus at boot */ |
#define | CFBPRIMARY 0x0100 /* Channel B primary on 7895 chipsets */ |
#define | CFSEAUTOTERM 0x0400 /* aic7890 Perform SE Auto Term */ |
#define | CFLVDSTERM 0x0800 /* aic7890 LVD Termination */ |
#define | CFSCSIID 0x000F /* host adapter SCSI ID */ |
#define | CFBRTIME 0xFF00 /* bus release time */ |
#define | CFMAXTARG 0x00FF /* maximum targets */ |
#define | SELBUS_MASK 0x0a |
#define | SELNARROW 0x00 |
#define | SELBUSB 0x08 |
#define | SINGLE_BUS 0x00 |
#define | SCB_TARGET(scb) (((scb)->hscb->target_channel_lun & TID) >> 4) |
#define | SCB_LUN(scb) ((scb)->hscb->target_channel_lun & LID) |
#define | SCB_IS_SCSIBUS_B(scb) (((scb)->hscb->target_channel_lun & SELBUSB) != 0) |
#define | aic7xxx_error(cmd) ((cmd)->SCp.Status) |
#define | aic7xxx_status(cmd) ((cmd)->SCp.sent_command) |
#define | aic7xxx_position(cmd) ((cmd)->SCp.have_data_in) |
#define | aic7xxx_mapping(cmd) ((cmd)->SCp.phase) |
#define | AIC_DEV(cmd) ((struct aic_dev_data *)(cmd)->device->hostdata) |
#define | AIC7XXX_MAX_SG 128 |
#define | AIC7XXX_MAXSCB 255 |
#define | SCB_PIO_TRANSFER_SIZE |
#define | AHC_IN_ISR_BIT 28 |
#define | SCB_DMA_ADDR(scb, addr) ((unsigned long)(addr) + (scb)->scb_dma->dma_offset) |
#define | AHC_TRANS_CUR 0x0001 |
#define | AHC_TRANS_ACTIVE 0x0002 |
#define | AHC_TRANS_GOAL 0x0004 |
#define | AHC_TRANS_USER 0x0008 |
#define | AHC_TRANS_QUITE 0x0010 |
#define | BUS_DEVICE_RESET_PENDING 0x01 |
#define | DEVICE_RESET_DELAY 0x02 |
#define | DEVICE_PRINT_DTR 0x04 |
#define | DEVICE_WAS_BUSY 0x08 |
#define | DEVICE_DTR_SCANNED 0x10 |
#define | DEVICE_SCSI_3 0x20 |
#define | MSG_TYPE_NONE 0x00 |
#define | MSG_TYPE_INITIATOR_MSGOUT 0x01 |
#define | MSG_TYPE_INITIATOR_MSGIN 0x02 |
#define | AHC_SYNCRATE_ULTRA3 0 |
#define | AHC_SYNCRATE_ULTRA2 1 |
#define | AHC_SYNCRATE_ULTRA 3 |
#define | AHC_SYNCRATE_FAST 6 |
#define | AHC_SYNCRATE_CRC 0x40 |
#define | AHC_SYNCRATE_SE 0x10 |
#define | ULTRA_SXFR 0x100 |
#define | CTL_OF_SCB(scb) |
#define | CTL_OF_CMD(cmd) |
#define | TARGET_INDEX(cmd) ((cmd)->device->id | ((cmd)->device->channel << 3)) |
#define | WARN_LEAD KERN_WARNING "(scsi%d:%d:%d:%d) " |
#define | INFO_LEAD KERN_INFO "(scsi%d:%d:%d:%d) " |
#define | VERBOSE_NORMAL 0x0000 |
#define | VERBOSE_NEGOTIATION 0x0001 |
#define | VERBOSE_SEQINT 0x0002 |
#define | VERBOSE_SCSIINT 0x0004 |
#define | VERBOSE_PROBE 0x0008 |
#define | VERBOSE_PROBE2 0x0010 |
#define | VERBOSE_NEGOTIATION2 0x0020 |
#define | VERBOSE_MINOR_ERROR 0x0040 |
#define | VERBOSE_TRACING 0x0080 |
#define | VERBOSE_ABORT 0x0f00 |
#define | VERBOSE_ABORT_MID 0x0100 |
#define | VERBOSE_ABORT_FIND 0x0200 |
#define | VERBOSE_ABORT_PROCESS 0x0400 |
#define | VERBOSE_ABORT_RETURN 0x0800 |
#define | VERBOSE_RESET 0xf000 |
#define | VERBOSE_RESET_MID 0x1000 |
#define | VERBOSE_RESET_FIND 0x2000 |
#define | VERBOSE_RESET_PROCESS 0x4000 |
#define | VERBOSE_RESET_RETURN 0x8000 |
#define | CLOCK_PULSE(p) |
#define | CLOCK_PULSE(p) |
Enumerations | |
enum | seeprom_chip_type { C46 = 6, C56_66 = 8 } |
enum | scb_flag_type { SCB_FREE = 0x0000, SCB_DTR_SCB = 0x0001, SCB_WAITINGQ = 0x0002, SCB_ACTIVE = 0x0004, SCB_SENSE = 0x0008, SCB_ABORT = 0x0010, SCB_DEVICE_RESET = 0x0020, SCB_RESET = 0x0040, SCB_RECOVERY_SCB = 0x0080, SCB_MSGOUT_PPR = 0x0100, SCB_MSGOUT_SENT = 0x0200, SCB_MSGOUT_SDTR = 0x0400, SCB_MSGOUT_WDTR = 0x0800, SCB_MSGOUT_BITS, SCB_QUEUED_ABORT = 0x1000, SCB_QUEUED_FOR_DONE = 0x2000, SCB_WAS_BUSY = 0x4000, SCB_QUEUE_FULL = 0x8000 } |
enum | ahc_flag_type { AHC_FNONE = 0x00000000, AHC_PAGESCBS = 0x00000001, AHC_CHANNEL_B_PRIMARY = 0x00000002, AHC_USEDEFAULTS = 0x00000004, AHC_INDIRECT_PAGING = 0x00000008, AHC_CHNLB = 0x00000020, AHC_CHNLC = 0x00000040, AHC_EXTEND_TRANS_A = 0x00000100, AHC_EXTEND_TRANS_B = 0x00000200, AHC_TERM_ENB_A = 0x00000400, AHC_TERM_ENB_SE_LOW = 0x00000400, AHC_TERM_ENB_B = 0x00000800, AHC_TERM_ENB_SE_HIGH = 0x00000800, AHC_HANDLING_REQINITS = 0x00001000, AHC_TARGETMODE = 0x00002000, AHC_NEWEEPROM_FMT = 0x00004000, AHC_MOTHERBOARD = 0x00020000, AHC_NO_STPWEN = 0x00040000, AHC_RESET_DELAY = 0x00080000, AHC_A_SCANNED = 0x00100000, AHC_B_SCANNED = 0x00200000, AHC_MULTI_CHANNEL = 0x00400000, AHC_BIOS_ENABLED = 0x00800000, AHC_SEEPROM_FOUND = 0x01000000, AHC_TERM_ENB_LVD = 0x02000000, AHC_ABORT_PENDING = 0x04000000, AHC_RESET_PENDING = 0x08000000, AHC_IN_ISR = 0x10000000, AHC_IN_ABORT = 0x20000000, AHC_IN_RESET = 0x40000000, AHC_EXTERNAL_SRAM = 0x80000000 } |
enum | ahc_chip { AHC_NONE = 0x0000, AHC_CHIPID_MASK = 0x00FF, AHC_AIC7770 = 0x0001, AHC_AIC7850 = 0x0002, AHC_AIC7855 = 0x0003, AHC_AIC7859 = 0x0004, AHC_AIC7860 = 0x0005, AHC_AIC7870 = 0x0006, AHC_AIC7880 = 0x0007, AHC_AIC7895 = 0x0008, AHC_AIC7895C = 0x0009, AHC_AIC7890 = 0x000a, AHC_AIC7896 = 0x000b, AHC_AIC7892 = 0x000c, AHC_AIC7899 = 0x000d, AHC_VL = 0x0100, AHC_EISA = 0x0200, AHC_PCI = 0x0400, AHC_BUS_MASK = 0x0F00, AHC_NONE = 0x0000, AHC_CHIPID_MASK = 0x00ff, AHC_AIC7770 = 0x0001, AHC_AIC7850 = 0x0002, AHC_AIC7860 = 0x0003, AHC_AIC7870 = 0x0004, AHC_AIC7880 = 0x0005, AHC_AIC7890 = 0x0006, AHC_AIC7895 = 0x0007, AHC_AIC7896 = 0x0008, AHC_AIC7892 = 0x0009, AHC_AIC7899 = 0x000a, AHC_VL = 0x0100, AHC_EISA = 0x0200, AHC_PCI = 0x0400 } |
enum | ahc_feature { AHC_FENONE = 0x00000, AHC_ULTRA = 0x00001, AHC_ULTRA2 = 0x00002, AHC_WIDE = 0x00004, AHC_TWIN = 0x00008, AHC_MORE_SRAM = 0x00010, AHC_CMD_CHAN = 0x00020, AHC_QUEUE_REGS = 0x00040, AHC_SG_PRELOAD = 0x00080, AHC_SPIOCAP = 0x00100, AHC_MULTI_TID = 0x00200, AHC_HS_MAILBOX = 0x00400, AHC_DT = 0x00800, AHC_NEW_TERMCTL = 0x01000, AHC_MULTI_FUNC = 0x02000, AHC_LARGE_SCBS = 0x04000, AHC_AUTORATE = 0x08000, AHC_AUTOPAUSE = 0x10000, AHC_TARGETMODE = 0x20000, AHC_MULTIROLE = 0x40000, AHC_REMOVABLE = 0x80000, AHC_HVD = 0x100000, AHC_AIC7770_FE = AHC_FENONE, AHC_AIC7850_FE = AHC_SPIOCAP|AHC_AUTOPAUSE|AHC_TARGETMODE|AHC_ULTRA, AHC_AIC7860_FE = AHC_AIC7850_FE, AHC_AIC7870_FE = AHC_TARGETMODE|AHC_AUTOPAUSE, AHC_AIC7880_FE = AHC_AIC7870_FE|AHC_ULTRA, AHC_AIC7890_FE, AHC_AIC7892_FE = AHC_AIC7890_FE|AHC_DT|AHC_AUTORATE|AHC_AUTOPAUSE, AHC_AIC7895_FE, AHC_AIC7895C_FE = AHC_AIC7895_FE|AHC_MULTI_TID, AHC_AIC7896_FE = AHC_AIC7890_FE|AHC_MULTI_FUNC, AHC_AIC7899_FE = AHC_AIC7892_FE|AHC_MULTI_FUNC, AHC_FENONE = 0x0000, AHC_ULTRA = 0x0001, AHC_ULTRA2 = 0x0002, AHC_WIDE = 0x0004, AHC_TWIN = 0x0008, AHC_MORE_SRAM = 0x0010, AHC_CMD_CHAN = 0x0020, AHC_QUEUE_REGS = 0x0040, AHC_SG_PRELOAD = 0x0080, AHC_SPIOCAP = 0x0100, AHC_ULTRA3 = 0x0200, AHC_NEW_AUTOTERM = 0x0400, AHC_AIC7770_FE = AHC_FENONE, AHC_AIC7850_FE = AHC_SPIOCAP, AHC_AIC7860_FE = AHC_ULTRA|AHC_SPIOCAP, AHC_AIC7870_FE = AHC_FENONE, AHC_AIC7880_FE = AHC_ULTRA, AHC_AIC7890_FE, AHC_AIC7895_FE = AHC_MORE_SRAM|AHC_CMD_CHAN|AHC_ULTRA, AHC_AIC7896_FE = AHC_AIC7890_FE, AHC_AIC7892_FE = AHC_AIC7890_FE|AHC_ULTRA3, AHC_AIC7899_FE = AHC_AIC7890_FE|AHC_ULTRA3 } |
enum | ahc_bugs { AHC_BUG_NONE = 0x0000, AHC_BUG_TMODE_WIDEODD = 0x0001, AHC_BUG_AUTOFLUSH = 0x0002, AHC_BUG_CACHETHEN = 0x0004, AHC_BUG_CACHETHEN_DIS = 0x0008, AHC_BUG_PCI_2_1_RETRY = 0x0010, AHC_BUG_PCI_MWI = 0x0020, AHC_BUG_SCBCHAN_UPLOAD = 0x0040 } |
Functions | |
__setup ("aic7xxx=", aic7xxx_setup) | |
MODULE_LICENSE ("Dual BSD/GPL") | |
MODULE_VERSION (AIC7XXX_H_VERSION) | |
#define AHC_HID0 0x80 /* 0,1: msb of ID2, 2-7: ID1 */ |
Definition at line 418 of file aic7xxx_old.c.
#define AHC_HID1 0x81 /* 0-4: ID3, 5-7: LSB ID2 */ |
Definition at line 419 of file aic7xxx_old.c.
#define AHC_HID2 0x82 /* product */ |
Definition at line 420 of file aic7xxx_old.c.
#define AHC_HID3 0x83 /* firmware revision */ |
Definition at line 421 of file aic7xxx_old.c.
#define AHC_IN_ISR_BIT 28 |
Definition at line 706 of file aic7xxx_old.c.
#define AHC_SYNCRATE_CRC 0x40 |
Definition at line 1002 of file aic7xxx_old.c.
#define AHC_SYNCRATE_FAST 6 |
Definition at line 1001 of file aic7xxx_old.c.
#define AHC_SYNCRATE_SE 0x10 |
Definition at line 1003 of file aic7xxx_old.c.
#define AHC_SYNCRATE_ULTRA 3 |
Definition at line 1000 of file aic7xxx_old.c.
#define AHC_SYNCRATE_ULTRA2 1 |
Definition at line 999 of file aic7xxx_old.c.
#define AHC_SYNCRATE_ULTRA3 0 |
Definition at line 998 of file aic7xxx_old.c.
#define AHC_TRANS_ACTIVE 0x0002 |
Definition at line 848 of file aic7xxx_old.c.
#define AHC_TRANS_CUR 0x0001 |
Definition at line 847 of file aic7xxx_old.c.
#define AHC_TRANS_GOAL 0x0004 |
Definition at line 849 of file aic7xxx_old.c.
#define AHC_TRANS_QUITE 0x0010 |
Definition at line 851 of file aic7xxx_old.c.
#define AHC_TRANS_USER 0x0008 |
Definition at line 850 of file aic7xxx_old.c.
#define AIC7XXX_C_VERSION "5.2.6" |
Definition at line 251 of file aic7xxx_old.c.
#define AIC7XXX_CMDS_PER_DEVICE 32 |
Definition at line 274 of file aic7xxx_old.c.
#define aic7xxx_error | ( | cmd | ) | ((cmd)->SCp.Status) |
Definition at line 568 of file aic7xxx_old.c.
Definition at line 583 of file aic7xxx_old.c.
#define AIC7XXX_MAX_SG 128 |
Definition at line 608 of file aic7xxx_old.c.
#define AIC7XXX_MAXSCB 255 |
Definition at line 615 of file aic7xxx_old.c.
Definition at line 578 of file aic7xxx_old.c.
Definition at line 573 of file aic7xxx_old.c.
#define AIC7XXX_STRICT_PCI_SETUP |
Definition at line 202 of file aic7xxx_old.c.
Definition at line 588 of file aic7xxx_old.c.
#define ALL_CHANNELS -1 |
Definition at line 254 of file aic7xxx_old.c.
#define ALL_LUNS -1 |
Definition at line 255 of file aic7xxx_old.c.
#define ALL_TARGETS -1 |
Definition at line 253 of file aic7xxx_old.c.
Definition at line 413 of file aic7xxx_old.c.
#define BASECLASS 0xFF000000ul |
Definition at line 438 of file aic7xxx_old.c.
#define BERREN 0x00000008ul |
Definition at line 455 of file aic7xxx_old.c.
#define BUS_DEVICE_RESET_PENDING 0x01 |
Definition at line 883 of file aic7xxx_old.c.
#define CACHESIZE 0x0000003Ful /* only 5 bits */ |
Definition at line 441 of file aic7xxx_old.c.
#define CCSCBBADDR 0xf0 /* aic7895/6/7 */ |
Definition at line 461 of file aic7xxx_old.c.
#define CF284XEXTEND 0x0020 /* extended translation (284x cards) */ |
Definition at line 507 of file aic7xxx_old.c.
#define CF284XFIFO 0x000C /* FIFO Threshold (284x cards) */ |
Definition at line 519 of file aic7xxx_old.c.
#define CF284XSELTO 0x0003 /* Selection timeout (284x cards) */ |
Definition at line 518 of file aic7xxx_old.c.
#define CF284XSTERM 0x0020 /* SCSI low byte termination (284x cards) */ |
Definition at line 523 of file aic7xxx_old.c.
#define CFAUTOTERM 0x0001 /* Perform Auto termination */ |
Definition at line 516 of file aic7xxx_old.c.
#define CFBIOSEN 0x0004 /* BIOS enabled */ |
Definition at line 504 of file aic7xxx_old.c.
#define CFBPRIMARY 0x0100 /* Channel B primary on 7895 chipsets */ |
Definition at line 525 of file aic7xxx_old.c.
#define CFBRTIME 0xFF00 /* bus release time */ |
Definition at line 536 of file aic7xxx_old.c.
#define CFDISC 0x0010 /* enable disconnection */ |
Definition at line 486 of file aic7xxx_old.c.
#define CFEXTEND 0x0080 /* extended translation enabled */ |
Definition at line 509 of file aic7xxx_old.c.
#define CFINCBIOS 0x0200 /* include in BIOS scan */ |
Definition at line 491 of file aic7xxx_old.c.
#define CFLVDSTERM 0x0800 /* aic7890 LVD Termination */ |
Definition at line 527 of file aic7xxx_old.c.
#define CFMAXTARG 0x00FF /* maximum targets */ |
Definition at line 542 of file aic7xxx_old.c.
#define CFMULTILUN 0x0800 /* probe mult luns in BIOS scan */ |
Definition at line 493 of file aic7xxx_old.c.
#define CFNEWULTRAFORMAT 0x0080 /* Use the Ultra2 SEEPROM format */ |
Definition at line 489 of file aic7xxx_old.c.
#define CFRESETB 0x0040 /* reset SCSI bus at boot */ |
Definition at line 524 of file aic7xxx_old.c.
#define CFRNFOUND 0x0400 /* report even if not found */ |
Definition at line 492 of file aic7xxx_old.c.
#define CFSCSIID 0x000F /* host adapter SCSI ID */ |
Definition at line 534 of file aic7xxx_old.c.
#define CFSEAUTOTERM 0x0400 /* aic7890 Perform SE Auto Term */ |
Definition at line 526 of file aic7xxx_old.c.
#define CFSM2DRV 0x0010 /* support more than two drives */ |
Definition at line 506 of file aic7xxx_old.c.
#define CFSPARITY 0x0010 /* SCSI parity */ |
Definition at line 522 of file aic7xxx_old.c.
#define CFSTART 0x0100 /* send start unit SCSI command */ |
Definition at line 490 of file aic7xxx_old.c.
#define CFSTERM 0x0004 /* SCSI low byte termination */ |
Definition at line 520 of file aic7xxx_old.c.
#define CFSUPREM 0x0001 /* support all removable drives */ |
Definition at line 502 of file aic7xxx_old.c.
#define CFSUPREMB 0x0002 /* support removable drives for boot only */ |
Definition at line 503 of file aic7xxx_old.c.
#define CFSYNCH 0x0008 /* enable synchronous transfer */ |
Definition at line 485 of file aic7xxx_old.c.
#define CFSYNCHISULTRA 0x0040 /* CFSYNC is an ultra offset */ |
Definition at line 488 of file aic7xxx_old.c.
#define CFULTRAEN 0x0002 /* Ultra SCSI speed enable (Ultra cards) */ |
Definition at line 517 of file aic7xxx_old.c.
#define CFWBCACHENC 0xc000 /* Don't change W-Behind Cache */ |
Definition at line 495 of file aic7xxx_old.c.
#define CFWBCACHEYES 0x4000 /* Enable W-Behind Cache on drive */ |
Definition at line 494 of file aic7xxx_old.c.
#define CFWIDEB 0x0020 /* wide bus device (wide card) */ |
Definition at line 487 of file aic7xxx_old.c.
#define CFWSTERM 0x0008 /* SCSI high byte termination (wide card) */ |
Definition at line 521 of file aic7xxx_old.c.
#define CFXFER 0x0007 /* synchronous transfer rate */ |
Definition at line 484 of file aic7xxx_old.c.
#define CLASS_PROGIF_REVID 0x08 |
Definition at line 434 of file aic7xxx_old.c.
#define CLOCK_PULSE | ( | p | ) |
Definition at line 7004 of file aic7xxx_old.c.
#define CLOCK_PULSE | ( | p | ) |
Definition at line 7004 of file aic7xxx_old.c.
#define CSIZE_LATTIME 0x0C |
Definition at line 440 of file aic7xxx_old.c.
#define CTL_OF_CMD | ( | cmd | ) |
Definition at line 1033 of file aic7xxx_old.c.
#define CTL_OF_SCB | ( | scb | ) |
#define DACEN 0x00000004ul |
Definition at line 456 of file aic7xxx_old.c.
#define DEFAULT_TAG_COMMANDS |
Definition at line 285 of file aic7xxx_old.c.
#define DEVCONFIG 0x40 |
Definition at line 444 of file aic7xxx_old.c.
#define DEVICE_DTR_SCANNED 0x10 |
Definition at line 887 of file aic7xxx_old.c.
#define DEVICE_PRINT_DTR 0x04 |
Definition at line 885 of file aic7xxx_old.c.
#define DEVICE_RESET_DELAY 0x02 |
Definition at line 884 of file aic7xxx_old.c.
#define DEVICE_SCSI_3 0x20 |
Definition at line 888 of file aic7xxx_old.c.
#define DEVICE_WAS_BUSY 0x08 |
Definition at line 886 of file aic7xxx_old.c.
#define DEVREVID 0x000000FFul |
Definition at line 435 of file aic7xxx_old.c.
#define DID_RETRY_COMMAND DID_ERROR |
Definition at line 402 of file aic7xxx_old.c.
#define DID_UNDERFLOW DID_ERROR |
Definition at line 387 of file aic7xxx_old.c.
#define DIFACTNEGEN 0x00000001ul /* aic7870 only */ |
Definition at line 458 of file aic7xxx_old.c.
#define EXTSCBPEN 0x00000010ul /* aic7870 only */ |
Definition at line 454 of file aic7xxx_old.c.
#define EXTSCBTIME 0x00000020ul /* aic7870 only */ |
Definition at line 453 of file aic7xxx_old.c.
#define HSCSIID 0x07 |
Definition at line 404 of file aic7xxx_old.c.
Definition at line 1044 of file aic7xxx_old.c.
#define INTDEF 0x5C /* Interrupt Definition Register */ |
Definition at line 429 of file aic7xxx_old.c.
#define LATTIME 0x0000FF00ul |
Definition at line 442 of file aic7xxx_old.c.
#define MAX_LUNS 8 |
Definition at line 257 of file aic7xxx_old.c.
#define MAX_TARGETS 16 |
Definition at line 256 of file aic7xxx_old.c.
#define MAXREG 0xCFF |
Definition at line 427 of file aic7xxx_old.c.
#define MAXSLOT 15 |
Definition at line 411 of file aic7xxx_old.c.
#define MINREG 0xC00 |
Definition at line 426 of file aic7xxx_old.c.
#define MINSLOT 1 |
Definition at line 410 of file aic7xxx_old.c.
#define MPORTMODE 0x00000400ul /* aic7870 only */ |
Definition at line 446 of file aic7xxx_old.c.
#define MRDCEN 0x00000040ul |
Definition at line 452 of file aic7xxx_old.c.
#define MSG_TYPE_INITIATOR_MSGIN 0x02 |
Definition at line 956 of file aic7xxx_old.c.
#define MSG_TYPE_INITIATOR_MSGOUT 0x01 |
Definition at line 955 of file aic7xxx_old.c.
#define MSG_TYPE_NONE 0x00 |
Definition at line 954 of file aic7xxx_old.c.
#define PROGINFC 0x0000FF00ul |
Definition at line 436 of file aic7xxx_old.c.
#define RAMPSM 0x00000200ul /* aic7870 only */ |
Definition at line 447 of file aic7xxx_old.c.
#define RAMPSM_ULTRA2 0x00000004 |
Definition at line 448 of file aic7xxx_old.c.
#define SCAMCTL 0x1a /* Ultra2 only */ |
Definition at line 460 of file aic7xxx_old.c.
Definition at line 757 of file aic7xxx_old.c.
Definition at line 559 of file aic7xxx_old.c.
Definition at line 557 of file aic7xxx_old.c.
#define SCB_PIO_TRANSFER_SIZE |
Definition at line 634 of file aic7xxx_old.c.
Definition at line 555 of file aic7xxx_old.c.
#define SCBRAMSEL 0x00000080ul |
Definition at line 450 of file aic7xxx_old.c.
#define SCBRAMSEL_ULTRA2 0x00000008 |
Definition at line 451 of file aic7xxx_old.c.
#define SCBSIZE32 0x00010000ul /* aic789X only */ |
Definition at line 445 of file aic7xxx_old.c.
#define SCSI_RESET 0x040 |
Definition at line 405 of file aic7xxx_old.c.
#define SELBUS_MASK 0x0a |
Definition at line 550 of file aic7xxx_old.c.
#define SELBUSB 0x08 |
Definition at line 552 of file aic7xxx_old.c.
#define SELNARROW 0x00 |
Definition at line 551 of file aic7xxx_old.c.
#define SINGLE_BUS 0x00 |
Definition at line 553 of file aic7xxx_old.c.
Definition at line 412 of file aic7xxx_old.c.
#define STPWLEVEL 0x00000002ul |
Definition at line 457 of file aic7xxx_old.c.
#define SUBCLASS 0x00FF0000ul |
Definition at line 437 of file aic7xxx_old.c.
Definition at line 1037 of file aic7xxx_old.c.
#define ULTRA_SXFR 0x100 |
Definition at line 1006 of file aic7xxx_old.c.
#define VERBOSE_ABORT 0x0f00 |
Definition at line 1242 of file aic7xxx_old.c.
#define VERBOSE_ABORT_FIND 0x0200 |
Definition at line 1244 of file aic7xxx_old.c.
#define VERBOSE_ABORT_MID 0x0100 |
Definition at line 1243 of file aic7xxx_old.c.
#define VERBOSE_ABORT_PROCESS 0x0400 |
Definition at line 1245 of file aic7xxx_old.c.
#define VERBOSE_ABORT_RETURN 0x0800 |
Definition at line 1246 of file aic7xxx_old.c.
#define VERBOSE_MINOR_ERROR 0x0040 |
Definition at line 1240 of file aic7xxx_old.c.
#define VERBOSE_NEGOTIATION 0x0001 |
Definition at line 1234 of file aic7xxx_old.c.
#define VERBOSE_NEGOTIATION2 0x0020 |
Definition at line 1239 of file aic7xxx_old.c.
#define VERBOSE_NORMAL 0x0000 |
Definition at line 1233 of file aic7xxx_old.c.
#define VERBOSE_PROBE 0x0008 |
Definition at line 1237 of file aic7xxx_old.c.
#define VERBOSE_PROBE2 0x0010 |
Definition at line 1238 of file aic7xxx_old.c.
#define VERBOSE_RESET 0xf000 |
Definition at line 1247 of file aic7xxx_old.c.
#define VERBOSE_RESET_FIND 0x2000 |
Definition at line 1249 of file aic7xxx_old.c.
#define VERBOSE_RESET_MID 0x1000 |
Definition at line 1248 of file aic7xxx_old.c.
#define VERBOSE_RESET_PROCESS 0x4000 |
Definition at line 1250 of file aic7xxx_old.c.
#define VERBOSE_RESET_RETURN 0x8000 |
Definition at line 1251 of file aic7xxx_old.c.
#define VERBOSE_SCSIINT 0x0004 |
Definition at line 1236 of file aic7xxx_old.c.
#define VERBOSE_SEQINT 0x0002 |
Definition at line 1235 of file aic7xxx_old.c.
#define VERBOSE_TRACING 0x0080 |
Definition at line 1241 of file aic7xxx_old.c.
#define VOLSENSE 0x00000100ul |
Definition at line 449 of file aic7xxx_old.c.
#define WARN_LEAD KERN_WARNING "(scsi%d:%d:%d:%d) " |
Definition at line 1043 of file aic7xxx_old.c.
enum ahc_bugs |
AHC_BUG_NONE | |
AHC_BUG_TMODE_WIDEODD | |
AHC_BUG_AUTOFLUSH | |
AHC_BUG_CACHETHEN | |
AHC_BUG_CACHETHEN_DIS | |
AHC_BUG_PCI_2_1_RETRY | |
AHC_BUG_PCI_MWI | |
AHC_BUG_SCBCHAN_UPLOAD |
Definition at line 768 of file aic7xxx_old.c.
enum ahc_chip |
Definition at line 713 of file aic7xxx_old.c.
enum ahc_feature |
Definition at line 731 of file aic7xxx_old.c.
enum ahc_flag_type |
Definition at line 671 of file aic7xxx_old.c.
enum scb_flag_type |
Definition at line 647 of file aic7xxx_old.c.
enum seeprom_chip_type |
Definition at line 472 of file aic7xxx_old.c.
__setup | ( | ) |
MODULE_LICENSE | ( | "Dual BSD/GPL" | ) |
MODULE_VERSION | ( | AIC7XXX_H_VERSION | ) |
Definition at line 812 of file aic7xxx_old.c.
unsigned char errno |
Definition at line 811 of file aic7xxx_old.c.