summaryrefslogtreecommitdiff
path: root/sys/dev/ic/aic7xxxreg.h
diff options
context:
space:
mode:
authorSteve Murphree <smurph@cvs.openbsd.org>2002-02-16 04:36:34 +0000
committerSteve Murphree <smurph@cvs.openbsd.org>2002-02-16 04:36:34 +0000
commit2fda0f547528c28c4079e1a7e0ae5302ce7e71ca (patch)
treea2787ca49818f01b4ede919387cadb7cb30c8bf5 /sys/dev/ic/aic7xxxreg.h
parent9e8307bd1d6169bbdad4887400e0660f6d26e1ea (diff)
New port of FreeBSD's ahc driver
Diffstat (limited to 'sys/dev/ic/aic7xxxreg.h')
-rw-r--r--sys/dev/ic/aic7xxxreg.h276
1 files changed, 161 insertions, 115 deletions
diff --git a/sys/dev/ic/aic7xxxreg.h b/sys/dev/ic/aic7xxxreg.h
index 36ae18f9d06..c02d3aac96f 100644
--- a/sys/dev/ic/aic7xxxreg.h
+++ b/sys/dev/ic/aic7xxxreg.h
@@ -1,5 +1,10 @@
+/* $OpenBSD: aic7xxxreg.h,v 1.8 2002/02/16 04:36:33 smurph Exp $ */
/*
- * DO NOT EDIT - This file is automatically generated.
+ * DO NOT EDIT - This file is automatically generated
+ * from the following source files:
+ *
+ * $Id: aic7xxxreg.h,v 1.8 2002/02/16 04:36:33 smurph Exp $
+ * $Id: aic7xxxreg.h,v 1.8 2002/02/16 04:36:33 smurph Exp $
*/
#define SCSISEQ 0x00
@@ -23,6 +28,15 @@
#define ACTNEGEN 0x02
#define STPWEN 0x01
+#define SCSISIGI 0x03
+#define P_DATAIN_DT 0x60
+#define P_DATAOUT_DT 0x20
+#define ATNI 0x10
+#define SELI 0x08
+#define BSYI 0x04
+#define REQI 0x02
+#define ACKI 0x01
+
#define SCSISIGO 0x03
#define CDO 0x80
#define IOO 0x40
@@ -33,20 +47,13 @@
#define REQO 0x02
#define ACKO 0x01
-#define SCSISIGI 0x03
-#define ATNI 0x10
-#define SELI 0x08
-#define BSYI 0x04
-#define REQI 0x02
-#define ACKI 0x01
-
#define SCSIRATE 0x04
#define WIDEXFER 0x80
#define SXFR 0x70
#define ENABLE_CRC 0x40
#define SINGLE_EDGE 0x10
-#define SOFS 0x0f
#define SXFR_ULTRA2 0x0f
+#define SOFS 0x0f
#define SCSIID 0x05
#define SCSIOFFSET 0x05
@@ -56,8 +63,6 @@
#define SCSIDATH 0x07
-#define STCNT 0x08
-
#define OPTIONMODE 0x08
#define AUTORATEEN 0x80
#define AUTOACKEN 0x40
@@ -69,12 +74,15 @@
#define AUTO_MSGOUT_DE 0x02
#define DIS_MSGIN_DUALEDGE 0x01
+#define STCNT 0x08
+
#define TARGCRCCNT 0x0a
#define CLRSINT0 0x0b
#define CLRSELDO 0x40
#define CLRSELDI 0x20
#define CLRSELINGO 0x10
+#define CLRIOERR 0x08
#define CLRSWRAP 0x08
#define CLRSPIORDY 0x02
@@ -110,15 +118,19 @@
#define SSTAT2 0x0d
#define OVERRUN 0x80
+#define SHVALID 0x40
#define SFCNT 0x1f
#define EXP_ACTIVE 0x10
+#define CRCVALERR 0x08
+#define CRCENDERR 0x04
+#define CRCREQERR 0x02
+#define DUAL_EDGE_ERR 0x01
#define SSTAT3 0x0e
#define SCSICNT 0xf0
#define OFFCNT 0x0f
#define SCSIID_ULTRA2 0x0f
-#define OID 0x0f
#define SIMODE0 0x10
#define ENSELDO 0x40
@@ -184,12 +196,12 @@
#define BRDDAT5 0x20
#define BRDDAT4 0x10
#define BRDSTB 0x10
-#define BRDCS 0x08
#define BRDDAT3 0x08
+#define BRDCS 0x08
#define BRDDAT2 0x04
#define BRDRW 0x04
-#define BRDRW_ULTRA2 0x02
#define BRDCTL1 0x02
+#define BRDRW_ULTRA2 0x02
#define BRDCTL0 0x01
#define BRDSTB_ULTRA2 0x01
@@ -208,36 +220,44 @@
#define DIAGLEDON 0x40
#define AUTOFLUSHDIS 0x20
#define ENAB40 0x08
+#define SELBUSB 0x08
#define ENAB20 0x04
#define SELWIDE 0x02
#define XCVR 0x01
#define SRAM_BASE 0x20
+#define BUSY_TARGETS 0x20
#define TARG_SCSIRATE 0x20
-#define CMDSIZE_TABLE 0x20
#define ULTRA_ENB 0x30
+#define CMDSIZE_TABLE 0x30
#define DISC_DSB 0x32
-#define MSG_OUT 0x34
+#define CMDSIZE_TABLE_TAIL 0x34
+
+#define MWI_RESIDUAL 0x38
-#define DMAPARAMS 0x35
+#define NEXT_QUEUED_SCB 0x39
+
+#define MSG_OUT 0x3a
+
+#define DMAPARAMS 0x3b
#define PRELOADEN 0x80
#define WIDEODD 0x40
#define SCSIEN 0x20
#define SDMAENACK 0x10
#define SDMAEN 0x10
-#define HDMAEN 0x08
#define HDMAENACK 0x08
+#define HDMAEN 0x08
#define DIRECTION 0x04
#define FIFOFLUSH 0x02
#define FIFORESET 0x01
-#define SEQ_FLAGS 0x36
+#define SEQ_FLAGS 0x3c
#define IDENTIFY_SEEN 0x80
-#define SCBPTR_VALID 0x40
+#define TARGET_CMD_IS_TAGGED 0x40
#define DPHASE 0x20
#define TARG_CMD_PENDING 0x10
#define CMDPHASE_PENDING 0x08
@@ -245,15 +265,13 @@
#define SPHASE_PENDING 0x02
#define NO_DISCONNECT 0x01
-#define SAVED_TCL 0x37
-
-#define SG_COUNT 0x38
+#define SAVED_SCSIID 0x3d
-#define SG_NEXT 0x39
+#define SAVED_LUN 0x3e
-#define LASTPHASE 0x3d
-#define P_MESGIN 0xe0
+#define LASTPHASE 0x3f
#define PHASE_MASK 0xe0
+#define P_MESGIN 0xe0
#define P_STATUS 0xc0
#define P_MESGOUT 0xa0
#define P_COMMAND 0x80
@@ -264,30 +282,30 @@
#define P_BUSFREE 0x01
#define P_DATAOUT 0x00
-#define WAITING_SCBH 0x3e
+#define WAITING_SCBH 0x40
-#define DISCONNECTED_SCBH 0x3f
+#define DISCONNECTED_SCBH 0x41
-#define FREE_SCBH 0x40
+#define FREE_SCBH 0x42
-#define HSCB_ADDR 0x41
+#define COMPLETE_SCBH 0x43
-#define SCBID_ADDR 0x45
+#define HSCB_ADDR 0x44
-#define TMODE_CMDADDR 0x49
+#define SHARED_DATA_ADDR 0x48
-#define KERNEL_QINPOS 0x4d
+#define KERNEL_QINPOS 0x4c
-#define QINPOS 0x4e
+#define QINPOS 0x4d
-#define QOUTPOS 0x4f
+#define QOUTPOS 0x4e
-#define KERNEL_TQINPOS 0x50
+#define KERNEL_TQINPOS 0x4f
-#define TQINPOS 0x51
+#define TQINPOS 0x50
-#define ARG_1 0x52
-#define RETURN_1 0x52
+#define ARG_1 0x51
+#define RETURN_1 0x51
#define SEND_MSG 0x80
#define SEND_SENSE 0x40
#define SEND_REJ 0x20
@@ -296,16 +314,12 @@
#define CONT_MSG_LOOP 0x04
#define CONT_TARG_SESSION 0x02
-#define ARG_2 0x53
-#define RETURN_2 0x53
-
-#define LAST_MSG 0x54
-
-#define PREFETCH_CNT 0x55
+#define ARG_2 0x52
+#define RETURN_2 0x52
-#define TARGET_MSG_REQUEST 0x56
+#define LAST_MSG 0x53
-#define SCSISEQ_TEMPLATE 0x58
+#define SCSISEQ_TEMPLATE 0x54
#define ENSELO 0x40
#define ENSELI 0x20
#define ENRSELI 0x10
@@ -313,7 +327,12 @@
#define ENAUTOATNI 0x04
#define ENAUTOATNP 0x02
-#define DATA_COUNT_ODD 0x59
+#define DATA_COUNT_ODD 0x55
+
+#define INITIATOR_TAG 0x56
+
+#define SEQ_FLAGS2 0x57
+#define SCB_DMA 0x01
#define SCSICONF 0x5a
#define TERM_ENB 0x80
@@ -322,7 +341,9 @@
#define HWSCSIID 0x0f
#define HSCSIID 0x07
-#define INITIATOR_TAG 0x5a
+#define INTDEF 0x5c
+#define EDGE_TRIG 0x80
+#define VECTOR 0x0f
#define HOSTCONF 0x5d
@@ -356,10 +377,10 @@
#define ALLONES 0x69
-#define ALLZEROS 0x6a
-
#define NONE 0x6a
+#define ALLZEROS 0x6a
+
#define FLAGS 0x6b
#define ZERO 0x02
#define CARRY 0x01
@@ -392,8 +413,14 @@
#define BOFF 0xf0
#define BON 0x0f
+#define DSCOMMAND1 0x85
+#define DSLATT 0xfc
+#define HADDLDSEL1 0x02
+#define HADDLDSEL0 0x01
+
#define BUSSPD 0x86
#define DFTHRSH 0xc0
+#define DFTHRSH_75 0x80
#define STBOFF 0x38
#define STBON 0x07
@@ -412,8 +439,8 @@
#define IRQMS 0x08
#define PAUSE 0x04
#define INTEN 0x02
-#define CHIPRST 0x01
#define CHIPRSTACK 0x01
+#define CHIPRST 0x01
#define HADDR 0x88
@@ -423,15 +450,17 @@
#define INTSTAT 0x91
#define SEQINT_MASK 0xf1
-#define DATA_OVERRUN 0xf1
-#define MSGIN_PHASEMIS 0xe1
-#define TRACEPOINT 0xd1
-#define PERR_DETECTED 0xb1
-#define HOST_MSG_LOOP 0xa1
-#define TRACE_POINT 0x91
-#define RESIDUAL 0x81
+#define OUT_OF_RANGE 0xe1
+#define NO_FREE_SCB 0xd1
+#define SCB_MISMATCH 0xc1
+#define MISSED_BUSFREE 0xb1
+#define MKMSG_FAILED 0xa1
+#define DATA_OVERRUN 0x91
+#define PERR_DETECTED 0x81
#define BAD_STATUS 0x71
-#define UPDATE_TMSG_REQ 0x61
+#define HOST_MSG_LOOP 0x61
+#define PDATA_REINIT 0x51
+#define IGN_WIDE_RES 0x41
#define NO_MATCH 0x31
#define NO_IDENT 0x21
#define SEND_REJECT 0x11
@@ -439,15 +468,8 @@
#define BRKADRINT 0x08
#define SCSIINT 0x04
#define CMDCMPLT 0x02
-#define BAD_PHASE 0x01
#define SEQINT 0x01
-
-#define CLRINT 0x92
-#define CLRPARERR 0x10
-#define CLRBRKADRINT 0x08
-#define CLRSCSIINT 0x04
-#define CLRCMDINT 0x02
-#define CLRSEQINT 0x01
+#define BAD_PHASE 0x01
#define ERROR 0x92
#define CIOPARERR 0x80
@@ -459,11 +481,19 @@
#define ILLSADDR 0x02
#define ILLHADDR 0x01
+#define CLRINT 0x92
+#define CLRPARERR 0x10
+#define CLRBRKADRINT 0x08
+#define CLRSCSIINT 0x04
+#define CLRCMDINT 0x02
+#define CLRSEQINT 0x01
+
#define DFCNTRL 0x93
#define DFSTATUS 0x94
#define PRELOAD_AVAIL 0x80
-#define DWORDEMP 0x20
+#define DFCACHETH 0x40
+#define FIFOQWDEMP 0x20
#define MREQPEND 0x10
#define HDONE 0x08
#define DFTHRESH 0x04
@@ -501,75 +531,79 @@
#define COMMAND_PHASE 0x10
#define MSG_IN_PHASE 0x08
#define MSG_OUT_PHASE 0x04
+#define DATA_PHASE_MASK 0x03
#define DATA_IN_PHASE 0x02
#define DATA_OUT_PHASE 0x01
#define SFUNCT 0x9f
#define ALT_MODE 0x80
-#define SCB_CONTROL 0xa0
-#define TARGET_SCB 0x80
-#define DISCENB 0x40
-#define TAG_ENB 0x20
-#define MK_MESSAGE 0x10
-#define ULTRAENB 0x08
-#define DISCONNECTED 0x04
-#define SCB_TAG_TYPE 0x03
+#define SCB_CDB_PTR 0xa0
+#define SCB_TARGET_INFO 0xa0
+#define SCB_RESIDUAL_DATACNT 0xa0
+#define SCB_CDB_STORE 0xa0
#define SCB_BASE 0xa0
-#define SCB_TCL 0xa1
-#define TID 0xf0
-#define SELBUSB 0x08
-#define LID 0x07
-
-#define SCB_TARGET_STATUS 0xa2
+#define SCB_RESIDUAL_SGPTR 0xa4
-#define SCB_SGCOUNT 0xa3
+#define SCB_SCSI_STATUS 0xa8
-#define SCB_SGPTR 0xa4
-
-#define SCB_RESID_SGCNT 0xa8
-
-#define SCB_RESID_DCNT 0xa9
+#define SCB_CDB_STORE_PAD 0xa9
#define SCB_DATAPTR 0xac
#define SCB_DATACNT 0xb0
+#define SG_LAST_SEG 0x80
+#define SG_HIGH_ADDR_BITS 0x7f
+
+#define SCB_SGPTR 0xb4
+#define SG_RESID_VALID 0x04
+#define SG_FULL_RESID 0x02
+#define SG_LIST_NULL 0x01
-#define SCB_CMDPTR 0xb4
-#define SCB_TARGET_PHASES 0xb4
-#define TARGET_DATA_IN 0x01
+#define SCB_CONTROL 0xb8
+#define TARGET_SCB 0x80
+#define DISCENB 0x40
+#define TAG_ENB 0x20
+#define MK_MESSAGE 0x10
+#define ULTRAENB 0x08
+#define DISCONNECTED 0x04
+#define SCB_TAG_TYPE 0x03
-#define SCB_CMDLEN 0xb8
-#define SCB_INITIATOR_TAG 0xb8
+#define SCB_SCSIID 0xb9
+#define TID 0xf0
+#define TWIN_CHNLB 0x80
+#define TWIN_TID 0x70
+#define OID 0x0f
-#define SCB_TAG 0xb9
+#define SCB_LUN 0xba
+#define LID 0xff
-#define SCB_NEXT 0xba
+#define SCB_TAG 0xbb
-#define SCB_SCSIRATE 0xbb
+#define SCB_CDB_LEN 0xbc
-#define SCB_SCSIOFFSET 0xbc
+#define SCB_SCSIRATE 0xbd
-#define SCB_SPARE 0xbd
+#define SCB_SCSIOFFSET 0xbe
-#define SCB_CMDSTORE 0xc0
+#define SCB_NEXT 0xbf
#define SEECTL_2840 0xc0
#define CS_2840 0x04
#define CK_2840 0x02
#define DO_2840 0x01
+#define SCB_64_SPARE 0xc0
+
#define STATUS_2840 0xc1
#define EEPROM_TF 0x80
#define BIOS_SEL 0x60
#define ADSEL 0x1e
#define DI_2840 0x01
-#define SCB_CMDSTORE_BUSADDR 0xd0
-
-#define SCB_64BYTE_SPARE 0xd4
+#define SCB_64_BTT 0xd0
#define CCHADDR 0xe0
@@ -582,7 +616,7 @@
#define CCSGCTL 0xeb
#define CCSGDONE 0x80
#define CCSGEN 0x08
-#define FLAG 0x02
+#define SG_FETCH_NEEDED 0x02
#define CCSGRESET 0x01
#define CCSCBRAM 0xec
@@ -636,36 +670,48 @@
#define RD_DFTHRSH_MIN 0x00
#define WR_DFTHRSH_MIN 0x00
-#define SG_CACHEPTR 0xfc
-#define SG_USER_DATA 0xfc
+#define SG_CACHE_SHADOW 0xfc
+#define SG_ADDR_MASK 0xf8
+#define ODD_SEG 0x04
#define LAST_SEG 0x02
#define LAST_SEG_DONE 0x01
+#define SG_CACHE_PRE 0xfc
+
+#define HOST_MSG 0xff
+#define BUS_32_BIT 0x02
#define CMD_GROUP_CODE_SHIFT 0x05
#define BUS_8_BIT 0x00
-#define QOUTFIFO_OFFSET 0x00
#define CCSGRAM_MAXSEGS 0x10
-#define SCB_64BYTE_SIZE 0x30
+#define TARGET_DATA_IN 0x01
#define STATUS_QUEUE_FULL 0x28
#define STATUS_BUSY 0x08
-#define TQINFIFO_UPDATE_CNT 0x20
-#define TCL_TARGET_SHIFT 0x04
#define MAX_OFFSET_8BIT 0x0f
#define BUS_16_BIT 0x01
-#define QINFIFO_OFFSET 0x01
-#define SCB_32BYTE_SIZE 0x1c
+#define TID_SHIFT 0x04
+#define SCB_DOWNLOAD_SIZE_64 0x30
+#define SCB_UPLOAD_SIZE 0x20
#define HOST_MAILBOX_SHIFT 0x04
+#define SCB_INITIATOR_TAG 0x03
+#define SCB_TARGET_STATUS 0x02
+#define SCB_TARGET_DATA_DIR 0x01
+#define SCB_TARGET_PHASES 0x00
#define MAX_OFFSET_ULTRA2 0x7f
#define MAX_OFFSET_16BIT 0x08
-#define UNTAGGEDSCB_OFFSET 0x02
#define TARGET_CMD_CMPLT 0xfe
#define SCB_LIST_NULL 0xff
#define SG_SIZEOF 0x08
+#define SCB_DOWNLOAD_SIZE 0x20
#define SEQ_MAILBOX_SHIFT 0x00
-#define HOST_MSG 0xff
-#define BUS_32_BIT 0x02
#define CCSGADDR_MAX 0x80
/* Downloaded Constant Definitions */
+#define SG_PREFETCH_ADDR_MASK 0x06
+#define SG_PREFETCH_ALIGN_MASK 0x05
+#define QOUTFIFO_OFFSET 0x00
+#define SG_PREFETCH_CNT 0x04
+#define INVERTED_CACHESIZE_MASK 0x03
+#define CACHESIZE_MASK 0x02
+#define QINFIFO_OFFSET 0x01