i2outil.h (87826) | i2outil.h (96551) |
---|---|
1/**************************************************************** 2 * Copyright (c) 1996-2000 Distributed Processing Technology Corporation 3 * Copyright (c) 2000 Adaptec Corporation. 4 * All rights reserved. 5 * 6 * Copyright 1999 I2O Special Interest Group (I2O SIG). All rights reserved. 7 * All rights reserved 8 * --- 62 unchanged lines hidden (view full) --- 71 * 72 * The I2O SIG Web site can be found at: http://www.i2osig.org 73 * 74 * The I2O SIG encourages you to deposit derivative works based on this 75 * header file at the I2O SIG Web site. Furthermore, to become a Registered 76 * Developer of the I2O SIG, sign up at the Web site or call 415.750.8352 77 * (United States). 78 * | 1/**************************************************************** 2 * Copyright (c) 1996-2000 Distributed Processing Technology Corporation 3 * Copyright (c) 2000 Adaptec Corporation. 4 * All rights reserved. 5 * 6 * Copyright 1999 I2O Special Interest Group (I2O SIG). All rights reserved. 7 * All rights reserved 8 * --- 62 unchanged lines hidden (view full) --- 71 * 72 * The I2O SIG Web site can be found at: http://www.i2osig.org 73 * 74 * The I2O SIG encourages you to deposit derivative works based on this 75 * header file at the I2O SIG Web site. Furthermore, to become a Registered 76 * Developer of the I2O SIG, sign up at the Web site or call 415.750.8352 77 * (United States). 78 * |
79 * $FreeBSD: head/sys/dev/asr/i2outil.h 87826 2001-12-13 23:48:34Z obrien $ | 79 * $FreeBSD: head/sys/dev/asr/i2outil.h 96551 2002-05-14 00:53:08Z obrien $ |
80 * 81 ****************************************************************/ 82 83/********************************************************************* 84 * I2OUtil.h -- I2O Utility Class Message defintion file 85 * 86 * This file contains information presented in Chapter 6 of the I2O 87 * Specification. 88 **********************************************************************/ 89 90#if !defined(I2O_UTILITY_HDR) | 80 * 81 ****************************************************************/ 82 83/********************************************************************* 84 * I2OUtil.h -- I2O Utility Class Message defintion file 85 * 86 * This file contains information presented in Chapter 6 of the I2O 87 * Specification. 88 **********************************************************************/ 89 90#if !defined(I2O_UTILITY_HDR) |
91#define I2O_UTILITY_HDR | 91#define I2O_UTILITY_HDR |
92 | 92 |
93#define I2OUTIL_REV 1_5_4 /* I2OUtil header file revision string */ | 93#define I2OUTIL_REV 1_5_4 /* I2OUtil header file revision string */ |
94 95#if ((defined(KERNEL) || defined(_KERNEL)) && defined(__FreeBSD__)) 96# if (KERN_VERSION < 3) 97# include "i386/pci/i2omsg.h" /* Include the Base Message file */ 98# else 99# include "dev/asr/i2omsg.h" 100# endif 101#else --- 22 unchanged lines hidden (view full) --- 124*/ 125 126PRAGMA_ALIGN_PUSH 127 128PRAGMA_PACK_PUSH 129 130/* Utility Message class functions. */ 131 | 94 95#if ((defined(KERNEL) || defined(_KERNEL)) && defined(__FreeBSD__)) 96# if (KERN_VERSION < 3) 97# include "i386/pci/i2omsg.h" /* Include the Base Message file */ 98# else 99# include "dev/asr/i2omsg.h" 100# endif 101#else --- 22 unchanged lines hidden (view full) --- 124*/ 125 126PRAGMA_ALIGN_PUSH 127 128PRAGMA_PACK_PUSH 129 130/* Utility Message class functions. */ 131 |
132#define I2O_UTIL_NOP 0x00 133#define I2O_UTIL_ABORT 0x01 134#define I2O_UTIL_CLAIM 0x09 135#define I2O_UTIL_CLAIM_RELEASE 0x0B 136#define I2O_UTIL_CONFIG_DIALOG 0x10 137#define I2O_UTIL_DEVICE_RESERVE 0x0D 138#define I2O_UTIL_DEVICE_RELEASE 0x0F 139#define I2O_UTIL_EVENT_ACKNOWLEDGE 0x14 140#define I2O_UTIL_EVENT_REGISTER 0x13 141#define I2O_UTIL_LOCK 0x17 142#define I2O_UTIL_LOCK_RELEASE 0x19 143#define I2O_UTIL_PARAMS_GET 0x06 144#define I2O_UTIL_PARAMS_SET 0x05 145#define I2O_UTIL_REPLY_FAULT_NOTIFY 0x15 | 132#define I2O_UTIL_NOP 0x00 133#define I2O_UTIL_ABORT 0x01 134#define I2O_UTIL_CLAIM 0x09 135#define I2O_UTIL_CLAIM_RELEASE 0x0B 136#define I2O_UTIL_CONFIG_DIALOG 0x10 137#define I2O_UTIL_DEVICE_RESERVE 0x0D 138#define I2O_UTIL_DEVICE_RELEASE 0x0F 139#define I2O_UTIL_EVENT_ACKNOWLEDGE 0x14 140#define I2O_UTIL_EVENT_REGISTER 0x13 141#define I2O_UTIL_LOCK 0x17 142#define I2O_UTIL_LOCK_RELEASE 0x19 143#define I2O_UTIL_PARAMS_GET 0x06 144#define I2O_UTIL_PARAMS_SET 0x05 145#define I2O_UTIL_REPLY_FAULT_NOTIFY 0x15 |
146 147/****************************************************************************/ 148 149/* ABORT Abort type defines. */ 150 | 146 147/****************************************************************************/ 148 149/* ABORT Abort type defines. */ 150 |
151#define I2O_ABORT_TYPE_EXACT_ABORT 0x00 152#define I2O_ABORT_TYPE_FUNCTION_ABORT 0x01 153#define I2O_ABORT_TYPE_TRANSACTION_ABORT 0x02 154#define I2O_ABORT_TYPE_WILD_ABORT 0x03 155#define I2O_ABORT_TYPE_CLEAN_EXACT_ABORT 0x04 156#define I2O_ABORT_TYPE_CLEAN_FUNCTION_ABORT 0x05 157#define I2O_ABORT_TYPE_CLEAN_TRANSACTION_ABORT 0x06 158#define I2O_ABORT_TYPE_CLEAN_WILD_ABORT 0x07 | 151#define I2O_ABORT_TYPE_EXACT_ABORT 0x00 152#define I2O_ABORT_TYPE_FUNCTION_ABORT 0x01 153#define I2O_ABORT_TYPE_TRANSACTION_ABORT 0x02 154#define I2O_ABORT_TYPE_WILD_ABORT 0x03 155#define I2O_ABORT_TYPE_CLEAN_EXACT_ABORT 0x04 156#define I2O_ABORT_TYPE_CLEAN_FUNCTION_ABORT 0x05 157#define I2O_ABORT_TYPE_CLEAN_TRANSACTION_ABORT 0x06 158#define I2O_ABORT_TYPE_CLEAN_WILD_ABORT 0x07 |
159 160/* UtilAbort Function Message Frame structure. */ 161 162typedef struct _I2O_UTIL_ABORT_MESSAGE { 163 I2O_MESSAGE_FRAME StdMessageFrame; 164 I2O_TRANSACTION_CONTEXT TransactionContext; 165# if (defined(_DPT_BIG_ENDIAN) || defined(sparc)) 166 U32 reserved; --- 12 unchanged lines hidden (view full) --- 179 U32 CountOfAbortedMessages; 180} I2O_UTIL_ABORT_REPLY, *PI2O_UTIL_ABORT_REPLY; 181 182 183/****************************************************************************/ 184 185/* Claim Flag defines */ 186 | 159 160/* UtilAbort Function Message Frame structure. */ 161 162typedef struct _I2O_UTIL_ABORT_MESSAGE { 163 I2O_MESSAGE_FRAME StdMessageFrame; 164 I2O_TRANSACTION_CONTEXT TransactionContext; 165# if (defined(_DPT_BIG_ENDIAN) || defined(sparc)) 166 U32 reserved; --- 12 unchanged lines hidden (view full) --- 179 U32 CountOfAbortedMessages; 180} I2O_UTIL_ABORT_REPLY, *PI2O_UTIL_ABORT_REPLY; 181 182 183/****************************************************************************/ 184 185/* Claim Flag defines */ 186 |
187#define I2O_CLAIM_FLAGS_EXCLUSIVE 0x0001 /* Reserved */ 188#define I2O_CLAIM_FLAGS_RESET_SENSITIVE 0x0002 189#define I2O_CLAIM_FLAGS_STATE_SENSITIVE 0x0004 190#define I2O_CLAIM_FLAGS_CAPACITY_SENSITIVE 0x0008 191#define I2O_CLAIM_FLAGS_PEER_SERVICE_DISABLED 0x0010 192#define I2O_CLAIM_FLAGS_MGMT_SERVICE_DISABLED 0x0020 | 187#define I2O_CLAIM_FLAGS_EXCLUSIVE 0x0001 /* Reserved */ 188#define I2O_CLAIM_FLAGS_RESET_SENSITIVE 0x0002 189#define I2O_CLAIM_FLAGS_STATE_SENSITIVE 0x0004 190#define I2O_CLAIM_FLAGS_CAPACITY_SENSITIVE 0x0008 191#define I2O_CLAIM_FLAGS_PEER_SERVICE_DISABLED 0x0010 192#define I2O_CLAIM_FLAGS_MGMT_SERVICE_DISABLED 0x0020 |
193 194/* Claim Type defines */ 195 | 193 194/* Claim Type defines */ 195 |
196#define I2O_CLAIM_TYPE_PRIMARY_USER 0x01 197#define I2O_CLAIM_TYPE_AUTHORIZED_USER 0x02 198#define I2O_CLAIM_TYPE_SECONDARY_USER 0x03 199#define I2O_CLAIM_TYPE_MANAGEMENT_USER 0x04 | 196#define I2O_CLAIM_TYPE_PRIMARY_USER 0x01 197#define I2O_CLAIM_TYPE_AUTHORIZED_USER 0x02 198#define I2O_CLAIM_TYPE_SECONDARY_USER 0x03 199#define I2O_CLAIM_TYPE_MANAGEMENT_USER 0x04 |
200 201/* UtilClaim Function Message Frame structure. */ 202 203typedef struct _I2O_UTIL_CLAIM_MESSAGE { 204 I2O_MESSAGE_FRAME StdMessageFrame; 205 I2O_TRANSACTION_CONTEXT TransactionContext; 206 U16 ClaimFlags; 207 U8 reserved; 208 U8 ClaimType; 209} I2O_UTIL_CLAIM_MESSAGE, *PI2O_UTIL_CLAIM_MESSAGE; 210 211 212/****************************************************************************/ 213 214/* Claim Release Flag defines */ 215 | 200 201/* UtilClaim Function Message Frame structure. */ 202 203typedef struct _I2O_UTIL_CLAIM_MESSAGE { 204 I2O_MESSAGE_FRAME StdMessageFrame; 205 I2O_TRANSACTION_CONTEXT TransactionContext; 206 U16 ClaimFlags; 207 U8 reserved; 208 U8 ClaimType; 209} I2O_UTIL_CLAIM_MESSAGE, *PI2O_UTIL_CLAIM_MESSAGE; 210 211 212/****************************************************************************/ 213 214/* Claim Release Flag defines */ 215 |
216#define I2O_RELEASE_FLAGS_CONDITIONAL 0x0001 | 216#define I2O_RELEASE_FLAGS_CONDITIONAL 0x0001 |
217 218/* UtilClaimRelease Function Message Frame structure. */ 219 220typedef struct _I2O_UTIL_CLAIM_RELEASE_MESSAGE { 221 I2O_MESSAGE_FRAME StdMessageFrame; 222 I2O_TRANSACTION_CONTEXT TransactionContext; 223 U16 ReleaseFlags; 224 U8 reserved; --- 33 unchanged lines hidden (view full) --- 258 U32 EventData[1]; 259} I2O_UTIL_EVENT_ACK_REPLY, *PI2O_UTIL_EVENT_ACK_REPLY; 260 261 262/****************************************************************************/ 263 264/* Event Indicator Mask Flags */ 265 | 217 218/* UtilClaimRelease Function Message Frame structure. */ 219 220typedef struct _I2O_UTIL_CLAIM_RELEASE_MESSAGE { 221 I2O_MESSAGE_FRAME StdMessageFrame; 222 I2O_TRANSACTION_CONTEXT TransactionContext; 223 U16 ReleaseFlags; 224 U8 reserved; --- 33 unchanged lines hidden (view full) --- 258 U32 EventData[1]; 259} I2O_UTIL_EVENT_ACK_REPLY, *PI2O_UTIL_EVENT_ACK_REPLY; 260 261 262/****************************************************************************/ 263 264/* Event Indicator Mask Flags */ 265 |
266#define I2O_EVENT_IND_STATE_CHANGE 0x80000000 267#define I2O_EVENT_IND_GENERAL_WARNING 0x40000000 268#define I2O_EVENT_IND_CONFIGURATION_FLAG 0x20000000 269/* #define I2O_EVENT_IND_RESERVE_RELEASE 0x10000000 */ 270#define I2O_EVENT_IND_LOCK_RELEASE 0x10000000 271#define I2O_EVENT_IND_CAPABILITY_CHANGE 0x08000000 272#define I2O_EVENT_IND_DEVICE_RESET 0x04000000 273#define I2O_EVENT_IND_EVENT_MASK_MODIFIED 0x02000000 274#define I2O_EVENT_IND_FIELD_MODIFIED 0x01000000 275#define I2O_EVENT_IND_VENDOR_EVENT 0x00800000 276#define I2O_EVENT_IND_DEVICE_STATE 0x00400000 | 266#define I2O_EVENT_IND_STATE_CHANGE 0x80000000 267#define I2O_EVENT_IND_GENERAL_WARNING 0x40000000 268#define I2O_EVENT_IND_CONFIGURATION_FLAG 0x20000000 269/* #define I2O_EVENT_IND_RESERVE_RELEASE 0x10000000 */ 270#define I2O_EVENT_IND_LOCK_RELEASE 0x10000000 271#define I2O_EVENT_IND_CAPABILITY_CHANGE 0x08000000 272#define I2O_EVENT_IND_DEVICE_RESET 0x04000000 273#define I2O_EVENT_IND_EVENT_MASK_MODIFIED 0x02000000 274#define I2O_EVENT_IND_FIELD_MODIFIED 0x01000000 275#define I2O_EVENT_IND_VENDOR_EVENT 0x00800000 276#define I2O_EVENT_IND_DEVICE_STATE 0x00400000 |
277 278/* Event Data for generic Events */ 279 | 277 278/* Event Data for generic Events */ 279 |
280#define I2O_EVENT_STATE_CHANGE_NORMAL 0x00 281#define I2O_EVENT_STATE_CHANGE_SUSPENDED 0x01 282#define I2O_EVENT_STATE_CHANGE_RESTART 0x02 283#define I2O_EVENT_STATE_CHANGE_NA_RECOVER 0x03 284#define I2O_EVENT_STATE_CHANGE_NA_NO_RECOVER 0x04 285#define I2O_EVENT_STATE_CHANGE_QUIESCE_REQUEST 0x05 286#define I2O_EVENT_STATE_CHANGE_FAILED 0x10 287#define I2O_EVENT_STATE_CHANGE_FAULTED 0x11 | 280#define I2O_EVENT_STATE_CHANGE_NORMAL 0x00 281#define I2O_EVENT_STATE_CHANGE_SUSPENDED 0x01 282#define I2O_EVENT_STATE_CHANGE_RESTART 0x02 283#define I2O_EVENT_STATE_CHANGE_NA_RECOVER 0x03 284#define I2O_EVENT_STATE_CHANGE_NA_NO_RECOVER 0x04 285#define I2O_EVENT_STATE_CHANGE_QUIESCE_REQUEST 0x05 286#define I2O_EVENT_STATE_CHANGE_FAILED 0x10 287#define I2O_EVENT_STATE_CHANGE_FAULTED 0x11 |
288 | 288 |
289#define I2O_EVENT_GEN_WARNING_NORMAL 0x00 290#define I2O_EVENT_GEN_WARNING_ERROR_THRESHOLD 0x01 291#define I2O_EVENT_GEN_WARNING_MEDIA_FAULT 0x02 | 289#define I2O_EVENT_GEN_WARNING_NORMAL 0x00 290#define I2O_EVENT_GEN_WARNING_ERROR_THRESHOLD 0x01 291#define I2O_EVENT_GEN_WARNING_MEDIA_FAULT 0x02 |
292 | 292 |
293#define I2O_EVENT_CAPABILITY_OTHER 0x01 294#define I2O_EVENT_CAPABILITY_CHANGED 0x02 | 293#define I2O_EVENT_CAPABILITY_OTHER 0x01 294#define I2O_EVENT_CAPABILITY_CHANGED 0x02 |
295 | 295 |
296#define I2O_EVENT_SENSOR_STATE_CHANGED 0x01 | 296#define I2O_EVENT_SENSOR_STATE_CHANGED 0x01 |
297 298 299/* UtilEventRegister Function Message Frame structure */ 300 301typedef struct _I2O_UTIL_EVENT_REGISTER_MESSAGE { 302 I2O_MESSAGE_FRAME StdMessageFrame; 303 I2O_TRANSACTION_CONTEXT TransactionContext; 304 U32 EventMask; --- 116 unchanged lines hidden --- | 297 298 299/* UtilEventRegister Function Message Frame structure */ 300 301typedef struct _I2O_UTIL_EVENT_REGISTER_MESSAGE { 302 I2O_MESSAGE_FRAME StdMessageFrame; 303 I2O_TRANSACTION_CONTEXT TransactionContext; 304 U32 EventMask; --- 116 unchanged lines hidden --- |