summaryrefslogtreecommitdiff
path: root/sys/dev/isp/ispvar.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/isp/ispvar.h')
-rw-r--r--sys/dev/isp/ispvar.h80
1 files changed, 15 insertions, 65 deletions
diff --git a/sys/dev/isp/ispvar.h b/sys/dev/isp/ispvar.h
index 222f77e9e9051..d1aeade78e4c9 100644
--- a/sys/dev/isp/ispvar.h
+++ b/sys/dev/isp/ispvar.h
@@ -1,5 +1,4 @@
-/* $Id: ispvar.h,v 1.7 1998/12/28 19:22:27 mjacob Exp $ */
-/* release_12_28_98_A+ */
+/* $FreeBSD$ */
/*
* Soft Definitions for for Qlogic ISP SCSI adapters.
*
@@ -44,11 +43,11 @@
#include <dev/isp/ispmbox.h>
#endif
#ifdef __linux__
-#include "ispmbox.h"
+#include <ispmbox.h>
#endif
#define ISP_CORE_VERSION_MAJOR 1
-#define ISP_CORE_VERSION_MINOR 5
+#define ISP_CORE_VERSION_MINOR 3
/*
* Vector for MD code to provide specific services.
@@ -78,7 +77,6 @@ struct ispmdvec {
#define MAX_TARGETS 16
#define MAX_FC_TARG 126
-#define DEFAULT_LOOPID 113
/* queue length must be a power of two */
#define QENTRY_LEN 64
@@ -99,7 +97,7 @@ typedef struct {
isp_data_line_active_neg: 1,
isp_cmd_dma_burst_enable: 1,
isp_data_dma_burst_enabl: 1,
- isp_fifo_threshold : 3,
+ isp_fifo_threshold : 2,
isp_diffmode : 1,
isp_fast_mttr : 1,
isp_initiator_id : 4,
@@ -177,42 +175,6 @@ typedef struct {
#define FW_REINIT 0x0006
#define FW_NON_PART 0x0007
-#ifdef ISP_TARGET_MODE
-/*
- * Some temporary Target Mode definitions
- */
-typedef struct tmd_cmd {
- u_int8_t cd_iid; /* initiator */
- u_int8_t cd_tgt; /* target */
- u_int8_t cd_lun; /* LUN for this command */
- u_int8_t cd_state;
- u_int8_t cd_cdb[16]; /* command bytes */
- u_int8_t cd_sensedata[20];
- u_int16_t cd_rxid;
- u_int32_t cd_datalen;
- u_int32_t cd_totbytes;
- void * cd_hba;
-} tmd_cmd_t;
-
-/*
- * Async Target Mode Event Definitions
- */
-#define TMD_BUS_RESET 0
-#define TMD_BDR 1
-
-/*
- * Immediate Notify data structure.
- */
-#define NOTIFY_MSGLEN 5
-typedef struct {
- u_int8_t nt_iid; /* initiator */
- u_int8_t nt_tgt; /* target */
- u_int8_t nt_lun; /* LUN for this command */
- u_int8_t nt_msg[NOTIFY_MSGLEN]; /* SCSI message byte(s) */
-} tmd_notify_t;
-
-#endif
-
/*
* Soft Structure per host adapter
*/
@@ -228,7 +190,7 @@ struct ispsoftc {
struct ispmdvec * isp_mdvec;
/*
- * Mostly nonvolatile state, debugging, etc..
+ * State, debugging, etc..
*/
u_int : 8,
@@ -281,28 +243,6 @@ struct ispsoftc {
volatile caddr_t isp_result;
u_int32_t isp_rquest_dma;
u_int32_t isp_result_dma;
-
-#ifdef ISP_TARGET_MODE
- /*
- * Vectors for handling target mode support.
- *
- * isp_tmd_newcmd is for feeding a newly arrived command to some
- * upper layer.
- *
- * isp_tmd_event is for notifying some upper layer that an event has
- * occurred that is not necessarily tied to any target (e.g., a SCSI
- * Bus Reset).
- *
- * isp_tmd_notify is for notifying some upper layer that some
- * event is now occurring that is either pertinent for a specific
- * device or for a specific command (e.g., BDR or ABORT TAG).
- *
- * It is left undefined (for now) how pools of commands are managed.
- */
- void (*isp_tmd_newcmd) __P((void *, tmd_cmd_t *));
- void (*isp_tmd_event) __P((void *, int));
- void (*isp_tmd_notify) __P((void *, tmd_notify_t *));
-#endif
};
/*
@@ -388,6 +328,11 @@ void isp_reset __P((struct ispsoftc *));
void isp_init __P((struct ispsoftc *));
/*
+ * Free any associated resources prior to decommissioning.
+ */
+void isp_uninit __P((struct ispsoftc *));
+
+/*
* Reset the ISP and call completion for any orphaned commands.
*/
void isp_restart __P((struct ispsoftc *));
@@ -398,6 +343,11 @@ void isp_restart __P((struct ispsoftc *));
int isp_intr __P((void *));
/*
+ * Watchdog Routine
+ */
+void isp_watch __P((void *));
+
+/*
* Command Entry Point
*/
int32_t ispscsicmd __P((ISP_SCSI_XFER_T *));