patch-2.0.13 linux/drivers/scsi/aic7xxx_reg.h
Next file: linux/drivers/scsi/eata_dma.c
Previous file: linux/drivers/scsi/aic7xxx_proc.c
Back to the patch index
Back to the overall index
- Lines: 217
- Date:
Sat Aug 10 10:44:18 1996
- Orig file:
v2.0.12/linux/drivers/scsi/aic7xxx_reg.h
- Orig date:
Sat Apr 20 20:59:10 1996
diff -u --recursive --new-file v2.0.12/linux/drivers/scsi/aic7xxx_reg.h linux/drivers/scsi/aic7xxx_reg.h
@@ -18,7 +18,9 @@
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: aic7xxx_reg.h,v 3.0 1996/04/16 08:52:23 deang Exp $
+ * This version corresponds to version 1.12 of FreeBSDs aic7xxx_reg.h
+ *
+ * $Id: aic7xxx_reg.h,v 3.1 1996/07/23 03:37:26 deang Exp $
*-M*************************************************************************/
/*
@@ -331,7 +333,6 @@
#define HCNT0 0x08c
#define HCNT1 0x08d
#define HCNT2 0x08e
-
/*
* SCB Pointer (p. 3-49)
* Gate one of the four SCBs into the SCBARRAY window.
@@ -363,7 +364,6 @@
#define BUSTIME 0x085
#define BOFF 0xf0
#define BON 0x0f
-#define BOFF_60BCLKS 0xf0
/*
* Bus Speed (p. 3-45)
@@ -387,6 +387,7 @@
#define PAUSE 0x04
#define INTEN 0x02
#define CHIPRST 0x01
+#define CHIPRSTACK 0x01
/*
* Interrupt Status (p. 3-50)
@@ -425,6 +426,11 @@
* when we were expecting
* another msgin byte.
*/
+#define DATA_OVERRUN 0xe1 /*
+ * Target attempted to write
+ * beyond the bounds of its
+ * command.
+ */
#define BRKADRINT 0x08
#define SCSIINT 0x04
#define CMDCMPLT 0x02
@@ -548,7 +554,9 @@
#define SCB_CMDPTR2 0x0b6
#define SCB_CMDPTR3 0x0b7
#define SCB_CMDLEN 0x0b8
-#define SCB_NEXT_WAITING 0x0b9
+#define SCB_TAG 0x0b9
+#define SCB_NEXT 0x0ba
+#define SCB_PREV 0x0bb
#ifdef linux
#define SG_SIZEOF 0x0c /* sizeof(struct scatterlist) */
@@ -629,10 +637,12 @@
#define TARG_SCRATCH 0x020
/*
- * The sequencer will stick the first byte of any rejected message here so
- * we can see what is getting thrown away.
+ * The sequencer will stick the frist byte of any rejected message here so
+ * we can see what is getting thrown away. Extended messages put the
+ * extended message type in REJBYTE_EXT.
*/
-#define REJBYTE 0x031
+#define REJBYTE 0x030
+#define REJBYTE_EXT 0x031
/*
* Bit vector of targets that have disconnection disabled.
@@ -646,6 +656,7 @@
*/
#define MSG_LEN 0x034
+/* We reserve 8bytes to store outgoing messages */
#define MSG0 0x035
#define COMP_MSG0 0xcb /* 2's complement of MSG0 */
#define MSG1 0x036
@@ -653,70 +664,90 @@
#define MSG3 0x038
#define MSG4 0x039
#define MSG5 0x03a
+#define MSG6 0x03b
+#define MSG7 0x03c
/*
* These are offsets into the card's scratch ram. Some of the values are
* specified in the AHA2742 technical reference manual and are initialized
* by the BIOS at boot time.
*/
-#define LASTPHASE 0x049
-#define ARG_1 0x04a
-#define RETURN_1 0x04a
-#define SEND_SENSE 0x80
+#define LASTPHASE 0x03d
+#define ARG_1 0x03e
+#define MAXOFFSET 0x01
+#define RETURN_1 0x03f
#define SEND_WDTR 0x80
-#define SEND_SDTR 0x80
-#define SEND_REJ 0x40
-
-#define SIGSTATE 0x04b
-
-#define DMAPARAMS 0x04c /* Parameters for DMA Logic */
+#define SEND_SDTR 0x60
+#define SEND_SENSE 0x40
+#define SEND_REJ 0x20
+#define SCB_PAGEDIN 0x10
+
+#define SIGSTATE 0x040
+
+#define DMAPARAMS 0x041 /* Parameters for DMA Logic */
+
+#define SG_COUNT 0x042
+#define SG_NEXT 0x043 /* working value of SG pointer */
+#define SG_NEXT0 0x043
+#define SG_NEXT1 0x044
+#define SG_NEXT2 0x045
+#define SG_NEXT3 0x046
-#define SG_COUNT 0x04d
-#define SG_NEXT 0x04e /* working value of SG pointer */
-#define SG_NEXT0 0x04e
-#define SG_NEXT1 0x04f
-#define SG_NEXT2 0x050
-#define SG_NEXT3 0x051
-
-#define SCBCOUNT 0x052 /*
+#define SCBCOUNT 0x047 /*
* Number of SCBs supported by
* this card.
*/
-#define FLAGS 0x053
+#define COMP_SCBCOUNT 0x048 /*
+ * Two's compliment of SCBCOUNT
+ */
+#define QCNTMASK 0x049 /*
+ * Mask of bits to test against
+ * when looking at the Queue Count
+ * registers. Works around a bug
+ * on aic7850 chips.
+ */
+#define FLAGS 0x04a
#define SINGLE_BUS 0x00
#define TWIN_BUS 0x01
#define WIDE_BUS 0x02
-#define DPHASE 0x04
-#define MAXOFFSET 0x08
+#define PAGESCBS 0x04
+#define DPHASE 0x10
+#define SELECTED 0x20
#define IDENTIFY_SEEN 0x40
#define RESELECTED 0x80
-#define ACTIVE_A 0x054
-#define ACTIVE_B 0x055
-#define SAVED_TCL 0x056 /*
+#define SAVED_TCL 0x04b /*
* Temporary storage for the
* target/channel/lun of a
* reconnecting target
*/
-#define WAITING_SCBH 0x057 /*
+#define ACTIVE_A 0x04c
+#define ACTIVE_B 0x04d
+#define WAITING_SCBH 0x04e /*
* head of list of SCBs awaiting
* selection
*/
-#define QCNTMASK 0x058 /*
- * Mask of bits to test against
- * when looking at the Queue Count
- * registers. Works around a bug
- * on aic7850 chips.
+#define DISCONNECTED_SCBH 0x04f /*
+ * head of list of SCBs that are
+ * disconnected. Used for SCB
+ * paging.
*/
-#define COMP_SCBCOUNT 0x059
#define SCB_LIST_NULL 0xff
+#define SAVED_LINKPTR 0x050
+#define SAVED_SCBPTR 0x051
+#define ULTRA_ENB 0x052
+#define ULTRA_ENB_B 0x053
+
#define SCSICONF 0x05a
+#define RESET_SCSI 0x40
+
#define HOSTCONF 0x05d
#define HA_274_BIOSCTRL 0x05f
#define BIOSMODE 0x30
#define BIOSDISABLED 0x30
+#define CHANNEL_B_PRIMARY 0x08
/* Message codes */
#define MSG_EXTENDED 0x01
@@ -731,6 +762,7 @@
#define MSG_NOP 0x08
#define MSG_MSG_PARITY_ERROR 0x09
#define MSG_BUS_DEVICE_RESET 0x0c
+#define MSG_ABORT_TAG 0x0d
#define MSG_SIMPLE_TAG 0x20
#define MSG_IDENTIFY 0x80
@@ -741,4 +773,3 @@
#define MAX_OFFSET_8BIT 0x0f
#define MAX_OFFSET_16BIT 0x08
-
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov