summaryrefslogtreecommitdiff
path: root/sys/dev/ic/ncr53c9xvar.h
diff options
context:
space:
mode:
authorFederico G. Schwindt <fgsch@cvs.openbsd.org>2000-06-17 18:03:12 +0000
committerFederico G. Schwindt <fgsch@cvs.openbsd.org>2000-06-17 18:03:12 +0000
commit944785ea9ea0d0acfc51ebf684f957346346de6e (patch)
tree00b5db6e8e1aaa8ec8e50734fed0679f28da908f /sys/dev/ic/ncr53c9xvar.h
parent3486ceb04e66405b06be9d342c5c5b71f6d27bc6 (diff)
Add support for AMD 53c974.
>From NetBSD.
Diffstat (limited to 'sys/dev/ic/ncr53c9xvar.h')
-rw-r--r--sys/dev/ic/ncr53c9xvar.h41
1 files changed, 23 insertions, 18 deletions
diff --git a/sys/dev/ic/ncr53c9xvar.h b/sys/dev/ic/ncr53c9xvar.h
index 39c277ef60b..481bdf3af54 100644
--- a/sys/dev/ic/ncr53c9xvar.h
+++ b/sys/dev/ic/ncr53c9xvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ncr53c9xvar.h,v 1.5 1998/09/02 06:09:28 deraadt Exp $ */
+/* $OpenBSD: ncr53c9xvar.h,v 1.6 2000/06/17 18:03:11 fgsch Exp $ */
/* $NetBSD: ncr53c9xvar.h,v 1.13 1998/05/26 23:17:34 thorpej Exp $ */
/*-
@@ -87,7 +87,8 @@
#define NCR_VARIANT_ESP406 5
#define NCR_VARIANT_FAS408 6
#define NCR_VARIANT_FAS216 7
-#define NCR_VARIANT_MAX 8
+#define NCR_VARIANT_AM53C974 8
+#define NCR_VARIANT_MAX 9
/*
* ECB. Holds additional information for each SCSI command Comments: We
@@ -242,6 +243,9 @@ struct ncr53c9x_softc {
u_char sc_cfg1; /* Config 1 */
u_char sc_cfg2; /* Config 2, not ESP100 */
u_char sc_cfg3; /* Config 3, only ESP200 */
+ u_char sc_cfg3_fscsi; /* Chip specific FSCSI bit */
+ u_char sc_cfg4; /* Config 4 */
+ u_char sc_cfg5; /* Config 5 */
u_char sc_ccf; /* Clock Conversion */
u_char sc_timeout;
@@ -256,19 +260,19 @@ struct ncr53c9x_softc {
ready_list,
nexus_list;
- struct ncr53c9x_ecb *sc_nexus; /* current command */
- struct ncr53c9x_ecb sc_ecb[3*8]; /* three per target */
+ struct ncr53c9x_ecb *sc_nexus; /* Current command */
+ struct ncr53c9x_ecb sc_ecb[3*8]; /* Three per target */
struct ncr53c9x_tinfo sc_tinfo[8];
/* Data about the current nexus (updated for every cmd switch) */
- caddr_t sc_dp; /* Current data pointer */
- ssize_t sc_dleft; /* Data left to transfer */
+ caddr_t sc_dp; /* Current data pointer */
+ ssize_t sc_dleft; /* Data left to transfer */
/* Adapter state */
- int sc_phase; /* Copy of what bus phase we are in */
- int sc_prevphase; /* Copy of what bus phase we were in */
- u_char sc_state; /* State applicable to the adapter */
- u_char sc_flags;
+ int sc_phase; /* Copy of what bus phase we are in */
+ int sc_prevphase; /* Copy of what bus phase we were in */
+ u_char sc_state; /* State applicable to the adapter */
+ u_char sc_flags; /* See below */
u_char sc_selid;
u_char sc_lastcmd;
@@ -286,13 +290,13 @@ struct ncr53c9x_softc {
caddr_t sc_cmdp; /* Command pointer (for DMAed commands) */
size_t sc_cmdlen; /* Size of command in transit */
- /* hardware/openprom stuff */
- int sc_freq; /* Freq in MHz */
- int sc_id; /* our scsi id */
- int sc_rev; /* esp revision */
- int sc_features; /* chip features */
- int sc_minsync; /* minimum sync period / 4 */
- int sc_maxxfer; /* maximum transfer size */
+ /* Hardware attributes */
+ int sc_freq; /* SCSI bus frequency in MHz */
+ int sc_id; /* Our SCSI id */
+ int sc_rev; /* Chip revision */
+ int sc_features; /* Chip features */
+ int sc_minsync; /* Minimum sync period / 4 */
+ int sc_maxxfer; /* Maximum transfer size */
};
/* values for sc_state */
@@ -393,6 +397,7 @@ void ncr53c9x_attach __P((struct ncr53c9x_softc *,
struct scsi_adapter *, struct scsi_device *));
int ncr53c9x_scsi_cmd __P((struct scsi_xfer *));
void ncr53c9x_reset __P((struct ncr53c9x_softc *));
-int ncr53c9x_intr __P((struct ncr53c9x_softc *));
+int ncr53c9x_intr __P((void *));
+void ncr53c9x_init __P((struct ncr53c9x_softc *, int));
extern int ncr53c9x_dmaselect;