summaryrefslogtreecommitdiffstats
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.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/dev/isp/ispvar.h b/sys/dev/isp/ispvar.h
index 39f0f58..de9b3fa 100644
--- a/sys/dev/isp/ispvar.h
+++ b/sys/dev/isp/ispvar.h
@@ -576,6 +576,7 @@ typedef enum {
ISPCTL_PDB_SYNC, /* Synchronize Port Database */
ISPCTL_SEND_LIP, /* Send a LIP */
ISPCTL_GET_POSMAP, /* Get FC-AL position map */
+ ISPCTL_RUN_MBOXCMD, /* run a mailbox command */
ISPCTL_TOGGLE_TMODE /* toggle target mode */
} ispctl_t;
int isp_control __P((struct ispsoftc *, ispctl_t, void *));
@@ -614,6 +615,12 @@ int isp_control __P((struct ispsoftc *, ispctl_t, void *));
* valid tag is set or not says whether something has arrived or departed.
* The name refers to a favorite pastime of many city dwellers- watching
* people come and go, talking of Michaelangelo, and so on..
+ *
+ * ISPASYNC_UNHANDLED_RESPONSE gives outer layers a chance to parse a
+ * response queue entry not otherwise handled. The outer layer should
+ * return non-zero if it handled it. The 'arg' points to a (possibly only
+ * partially) massaged response queue entry (see the platform's
+ * ISP_UNSWIZZLE_RESPONSE macro).
*/
typedef enum {
@@ -627,7 +634,8 @@ typedef enum {
ISPASYNC_TARGET_MESSAGE, /* target message */
ISPASYNC_TARGET_EVENT, /* target asynchronous event */
ISPASYNC_TARGET_ACTION, /* other target command action */
- ISPASYNC_CONF_CHANGE /* Platform Configuration Change */
+ ISPASYNC_CONF_CHANGE, /* Platform Configuration Change */
+ ISPASYNC_UNHANDLED_RESPONSE /* Unhandled Response Entry */
} ispasync_t;
int isp_async __P((struct ispsoftc *, ispasync_t, void *));
OpenPOWER on IntegriCloud