|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1992 NeXT Computer, Inc. ! 3: * ! 4: * Generic SCSI data structures. ! 5: * ! 6: * HISTORY ! 7: * ! 8: * 13 Apr 1993 Doug Mitchell ! 9: * Standalone version for Loadable Adaptec driver. ! 10: * 6 July 1992 David E. Bohman at NeXT ! 11: * Created from m68k version. ! 12: */ ! 13: ! 14: /* ! 15: * SCSI bus constants used only by driver (not exported) ! 16: */ ! 17: ! 18: /* ! 19: * message codes ! 20: */ ! 21: #define MSG_CMDCMPLT 0x00 /* to host: command complete */ ! 22: #define MSG_SAVEPTRS 0x02 /* to host: save data pointers */ ! 23: #define MSG_RESTOREPTRS 0x03 /* to host: restore pointers */ ! 24: #define MSG_DISCONNECT 0x04 /* to host: disconnect */ ! 25: #define MSG_IDETERR 0x05 /* to disk: initiator detected error */ ! 26: #define MSG_ABORT 0x06 /* to disk: abort op, go to bus free */ ! 27: #define MSG_MSGREJECT 0x07 /* both ways: last msg unimplemented */ ! 28: #define MSG_NOP 0x08 /* to disk: no-op message */ ! 29: #define MSG_MSGPARERR 0x09 /* to disk: parity error last message */ ! 30: #define MSG_LNKCMDCMPLT 0x0a /* to host: linked command complete */ ! 31: #define MSG_LNKCMDCMPLTFLAG 0x0b /* to host: flagged linked cmd cmplt */ ! 32: #define MSG_DEVICERESET 0x0c /* to disk: reset and go to bus free */ ! 33: ! 34: #define MSG_IDENTIFYMASK 0x80 /* both ways: thread identification */ ! 35: #define MSG_ID_DISCONN 0x40 /* can disconnect/reconnect */ ! 36: #define MSG_ID_LUNMASK 0x07 /* target LUN */ ! 37: ! 38: /* ! 39: * opcode groups ! 40: */ ! 41: #define SCSI_OPGROUP(opcode) ((opcode) & 0xe0) ! 42: ! 43: #define OPGROUP_0 0x00 /* six byte commands */ ! 44: #define OPGROUP_1 0x20 /* ten byte commands */ ! 45: #define OPGROUP_2 0x40 /* ten byte commands */ ! 46: #define OPGROUP_5 0xa0 /* twelve byte commands */ ! 47: #define OPGROUP_6 0xc0 /* six byte, vendor unique commands */ ! 48: #define OPGROUP_7 0xe0 /* ten byte, vendor unique commands */ ! 49: ! 50: /* ! 51: * scsi bus phases ! 52: */ ! 53: #define PHASE_DATAOUT 0x0 ! 54: #define PHASE_DATAIN 0x1 ! 55: #define PHASE_COMMAND 0x2 ! 56: #define PHASE_STATUS 0x3 ! 57: #define PHASE_MSGOUT 0x6 ! 58: #define PHASE_MSGIN 0x7 ! 59: ! 60:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.