summaryrefslogtreecommitdiff
path: root/sys/dev/ic/siopvar_common.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/ic/siopvar_common.h')
-rw-r--r--sys/dev/ic/siopvar_common.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/dev/ic/siopvar_common.h b/sys/dev/ic/siopvar_common.h
index 6ed6c6a63e1..c9db45647d3 100644
--- a/sys/dev/ic/siopvar_common.h
+++ b/sys/dev/ic/siopvar_common.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: siopvar_common.h,v 1.20 2005/10/08 17:30:18 krw Exp $ */
+/* $OpenBSD: siopvar_common.h,v 1.21 2005/10/10 16:27:23 krw Exp $ */
/* $NetBSD: siopvar_common.h,v 1.32 2005/02/27 00:27:02 perry Exp $ */
/*
@@ -86,6 +86,7 @@ struct siop_common_cmd {
int status;
int flags;
int tag; /* tag used for tagged command queuing */
+ int resid; /* valid when CMDFL_RESID is set */
};
/* status defs */
@@ -99,6 +100,7 @@ struct siop_common_cmd {
/* flags defs */
#define CMDFL_TIMEOUT 0x0001 /* cmd timed out */
#define CMDFL_TAG 0x0002 /* tagged cmd */
+#define CMDFL_RESID 0x0004 /* current offset in table is partial */
/* per-target struct */
struct siop_common_target {
@@ -192,12 +194,15 @@ void siop_sdtr_msg(struct siop_common_cmd *, int, int, int);
void siop_wdtr_msg(struct siop_common_cmd *, int, int);
void siop_ppr_msg(struct siop_common_cmd *, int, int, int);
void siop_update_xfer_mode(struct siop_common_softc *, int);
+int siop_iwr(struct siop_common_cmd *);
/* actions to take at return of siop_wdtr_neg() and siop_sdtr_neg() */
#define SIOP_NEG_NOP 0x0
#define SIOP_NEG_MSGOUT 0x1
#define SIOP_NEG_ACK 0x2
void siop_minphys(struct buf *);
-void siop_sdp(struct siop_common_cmd *);
+void siop_ma(struct siop_common_cmd *);
+void siop_sdp(struct siop_common_cmd *, int);
+void siop_update_resid(struct siop_common_cmd *, int);
void siop_clearfifo(struct siop_common_softc *);
void siop_resetbus(struct siop_common_softc *);