summaryrefslogtreecommitdiff
path: root/sys/dev/ic/amivar.h
diff options
context:
space:
mode:
authorMarco Peereboom <marco@cvs.openbsd.org>2005-05-27 20:39:31 +0000
committerMarco Peereboom <marco@cvs.openbsd.org>2005-05-27 20:39:31 +0000
commitdc9988317dddfffe8b1479bc40c90b7e2148faed (patch)
tree0e282d3d43e8e446982548e959cd40c3b423bee6 /sys/dev/ic/amivar.h
parent50bb62d17c51ad41f4b0c0c51a1d90fafca2b35a (diff)
step 1 in fixing bioctl commands intermixed with regular io.
- Added the magical sequence for polling IO - Created new polling function per hardware generation Lots and lots of constructive yelling mickey@ ok mickey@
Diffstat (limited to 'sys/dev/ic/amivar.h')
-rw-r--r--sys/dev/ic/amivar.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/dev/ic/amivar.h b/sys/dev/ic/amivar.h
index 2ffcfde6e60..77a5d86048f 100644
--- a/sys/dev/ic/amivar.h
+++ b/sys/dev/ic/amivar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: amivar.h,v 1.9 2005/05/09 19:50:48 marco Exp $ */
+/* $OpenBSD: amivar.h,v 1.10 2005/05/27 20:39:30 marco Exp $ */
/*
* Copyright (c) 2001 Michael Shalayeff
@@ -60,13 +60,15 @@ struct ami_softc {
struct scsi_link sc_link;
/* don't use 0x0001 */
-#define AMI_BROKEN 0x0002
+#define AMI_BROKEN 0x0002
+#define AMI_CMDWAIT 0x0004
u_int sc_flags;
/* low-level interface */
int (*sc_init)(struct ami_softc *sc);
int (*sc_exec)(struct ami_softc *sc, struct ami_iocmd *);
int (*sc_done)(struct ami_softc *sc, struct ami_iocmd *);
+ int (*sc_poll)(struct ami_softc *sc, struct ami_iocmd *);
bus_space_tag_t iot;
bus_space_handle_t ioh;
@@ -88,6 +90,7 @@ struct ami_softc {
int sc_timeout;
struct timeout sc_requeue_tmo;
struct timeout sc_poll_tmo;
+ int sc_dis_poll;
char sc_fwver[16];
char sc_biosver[16];
@@ -120,10 +123,12 @@ int ami_intr(void *);
int ami_quartz_init(struct ami_softc *sc);
int ami_quartz_exec(struct ami_softc *sc, struct ami_iocmd *);
int ami_quartz_done(struct ami_softc *sc, struct ami_iocmd *);
+int ami_quartz_poll(struct ami_softc *sc, struct ami_iocmd *);
int ami_schwartz_init(struct ami_softc *sc);
int ami_schwartz_exec(struct ami_softc *sc, struct ami_iocmd *);
int ami_schwartz_done(struct ami_softc *sc, struct ami_iocmd *);
+int ami_schwartz_poll(struct ami_softc *sc, struct ami_iocmd *);
#ifdef AMI_DEBUG
void ami_print_mbox(struct ami_iocmd *);