document X3T9.2/90-003 R0 TO: X3T9.2 Committee (SCSI) FROM: Gerry Houlder (Seagate) SUBJECT: SCSI-1 and CCS Implementation on SCSI-2 Target While trying to decide what SCSI-2 features had to be deleted from a SCSI-2 target when its "operating definition" is changed to SCSI-1, I realized that the SCSI-1 wording "A reserved bit, byte, or field shall be set to zero or in accordance with a future extension to this standard" allows any SCSI-2 feature to legally be present in a SCSI-1 implementation. We need to choose "de facto" definitions of CCS and SCSI-1. The following table attempts to list the new SCSI-2 features (compared to SCSI-1) and whether implementing that feature is allowed in a CCS or SCSI-1 emulation. If such a list can be agreed upon by the committee, perhaps it can be included in the SCSI-2 standard in an appendix. FEATURE SCSI1 _CCS SCSI2 SECTIONS 3, 4, 5: Single Bit Selection Y Y Y Selection without ATN Y Y Y Fast SCSI data rate agreement during Y Y Y SYNCHRONOUS DATA TRANSFER REQUEST msg Target initiated SDTR message N N Y Command Queuing messages: ABORT TAG, N N Y SIMPLE QUEUE TAG, HEAD OF QUEUE TAG, ORDERED QUEUE TAG, CLEAR QUEUE Other new messages: INITIATE RECOVERY, RELEASE RECOVERY N N Y IGNORE WIDE RESIDUE N N Y TERMINATE I/O PROCESS N N Y IDENTIFY with non-zero LUNTAR bit N N Y DISCONNECT sent by initiator N N Y WIDE DATA TRANSFER REQUEST N N Y SECTION 6 - SCSI COMMANDS AND STATUS New UNIT ATTENTION conditions Y Y Y STATUS Byte - "QUEUE FULL" code N N Y "CMD TERMINATED" code N N Y Abort both cmds if receive redundant cmd Y Y Y Asynchronous Event Notification N N Y CONTINGENT ALLEGIANCE Condition Y Y Y EXTENDED CONTINGENT ALLEGIANCE Condition N N Y Queued I/O Processes: Untagged Y Y Y Tagged N N Y FEATURE SCSI1 _CCS SCSI2 SECTION 7 - COMMANDS, ALL DEVICE TYPES CHANGE DEFINITION CMD (NEW) Y Y Y COMPARE CMD - PAD BIT N N Y COPY/ COPY AND VERIFY CMDS - IMAGE COPY N N Y - PAD BIT N N Y - DC BIT N N Y - CAT BIT N N Y INQUIRY CMD - EVPD BIT (VITAL PRODUCT DATA) N N Y - VPD PAGE CODE N N Y - PERIPHERAL QUALIFIER BITS Y Y Y - FEATURE SUPPORTED BITS: N N Y AENC, TRMIOP, RELADR, WBUS32, WBUS16, SYNC, LINKED, CMDQUE, SFTRES - ANSI VERSION FIELD 1 1 2 - RESPONSE DATA FORMAT FIELD 0 1 2 LOG SELECT, LOG SENSE CMDS Y Y Y 10 BYTE MODE SELECT, MODE SENSE CMDS Y Y Y 6 BYTE MODE SELECT, MODE SENSE CMDS - DBD (DISABLE BLOCK DESCRIPTOR) BIT Y Y Y MODE SEL/SENSE (6 & 10 BYTE) PAGES: - CACHE BIT IN HEADER Y Y Y - PAGE 00 (VENDOR UNIQUE) Y Y Y - PAGE 01 (RD/WR ERROR RECOV, LEN = 6) Y Y N (RD/WR ERROR RECOV, LEN = 10) N N Y - PAGE 02 (DISCON/RECON, LEN = 10) Y Y N (DISCON/RECON, LEN = 14) N N Y - PAGE 03 (FORMAT PARAMETERS, LEN = 22) Y Y Y - PAGE 04 (RIGID DRIVE GEOMETRY, LEN = 18) Y Y N (RIGID DRIVE GEOMETRY, LEN = 22) N N Y - PAGE 05 (FLOPPY DRIVE GEOM, LEN = 30) Y Y Y - PAGE 07 (VERIFY ERROR RECOV, LEN = 10) N N Y - PAGE 08 (CACHING PARAMETERS, LEN = 10) N N Y - PAGE 09 (PERIPHERAL DEVICE PAGE) N N Y - PAGE 0A (CONTROL MODE, LEN = 6) N N Y - PAGE 0B (MEDIUM TYPES SUPPORT, LEN = 6) N N Y - PAGE 0C (NOTCH & PARTITION, LEN = 22) N N Y - VENDOR UNIQUE PAGES Y Y Y - CHECK status if change unchgable parm N N Y or GOOD status (ignore change) Y Y N - CHECK status if round chgable parm N N Y or GOOD status (round anyway) Y Y N FEATURE SCSI1 _CCS SCSI2 READ DATA BUFFER CMD Y Y Y RECEIVE DIAGNOSTIC RESULTS CMD - PAGE FORMAT CAPABILITY Y Y Y REQUEST SENSE CMD - ERROR CODE 71 FOR DEFERRED ERRORS Y Y Y - EXTENDED SENSE FORMAT ONLY Y Y Y SEND DIAGNOSTIC CMD - PAGE FORMAT BIT Y Y Y - PAGE CODES Y Y Y - VENDOR UNIQUE DIAGNOSTIC DATA (PF = 0) Y Y Y WRITE BUFFER CMD - MODE 000 (COMBINED HEADER & DATA) Y Y Y OTHER MODES (INCLUDING DOWNLOAD CODE) Y Y Y SECTION 8 - COMMANDS, DIRECT ACCESS DEVICE TYPE FORMAT CMD - DEFECT LIST HEADER ADDL BITS: FOV, DPRY, DCRT, STPF BITS Y Y Y IP, DSP, IMMED BITS Y Y Y LOCK/UNLOCK CACHE, PREFETCH CMDS Y Y Y READ CMD (10 BYTE) - DPO (DISABLE PAGE OUT) BIT Y Y Y - FUA (FORCE UNIT ACCESS) BIT Y Y Y READ LONG, WRITE LONG CMDS Y Y Y START STOP UNIT CMD - LOEJ (LOAD EJECT) BIT Y Y Y SYNCHRONIZE CACHE CMD (NEW) Y Y Y VERIFY CMD - DPO (DISABLE PAGE OUT) BIT Y Y Y WRITE CMD (10 BYTE) - DPO (DISABLE PAGE OUT) BIT Y Y Y - FUA (FORCE UNIT ACCESS) BIT Y Y Y WRITE AND VERIFY CMD - DPO (DISABLE PAGE OUT) BIT Y Y Y WRITE SAME CMD (NEW) Y Y Y