Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * This file is in the public domain.
0003  * $FreeBSD: src/sys/cam/scsi/scsi_message.h,v 1.2 2000/05/01 20:21:29 peter Exp $
0004  */
0005 
0006 /* Messages (1 byte) */          /* I/T (M)andatory or (O)ptional */
0007 #define MSG_SAVEDATAPOINTER 0x02 /* O/O */
0008 #define MSG_RESTOREPOINTERS 0x03 /* O/O */
0009 #define MSG_DISCONNECT      0x04 /* O/O */
0010 #define MSG_MESSAGE_REJECT  0x07 /* M/M */
0011 #define MSG_NOOP        0x08 /* M/M */
0012 
0013 /* Messages (2 byte) */
0014 #define MSG_SIMPLE_Q_TAG    0x20 /* O/O */
0015 #define MSG_IGN_WIDE_RESIDUE    0x23 /* O/O */
0016 
0017 /* Identify message */           /* M/M */  
0018 #define MSG_IDENTIFYFLAG    0x80 
0019 #define MSG_IDENTIFY_DISCFLAG   0x40 
0020 #define MSG_IDENTIFY(lun, disc) (((disc) ? 0xc0 : MSG_IDENTIFYFLAG) | (lun))
0021 #define MSG_ISIDENTIFY(m)   ((m) & MSG_IDENTIFYFLAG)
0022 #define MSG_IDENTIFY_LUNMASK    0x3F 
0023 
0024 /* Extended messages (opcode and length) */
0025 #define MSG_EXT_SDTR_LEN    0x03
0026 
0027 #define MSG_EXT_WDTR_LEN    0x02
0028 #define MSG_EXT_WDTR_BUS_8_BIT  0x00
0029 #define MSG_EXT_WDTR_BUS_16_BIT 0x01
0030 #define MSG_EXT_WDTR_BUS_32_BIT 0x02 /* Deprecated in SPI3 */
0031 
0032 #define MSG_EXT_PPR_LEN     0x06
0033 #define MSG_EXT_PPR_PCOMP_EN    0x80
0034 #define MSG_EXT_PPR_RTI     0x40
0035 #define MSG_EXT_PPR_RD_STRM 0x20
0036 #define MSG_EXT_PPR_WR_FLOW 0x10
0037 #define MSG_EXT_PPR_HOLD_MCS    0x08
0038 #define MSG_EXT_PPR_QAS_REQ 0x04
0039 #define MSG_EXT_PPR_DT_REQ  0x02
0040 #define MSG_EXT_PPR_IU_REQ  0x01