The Channel Status Word (CSW) is used to provide the status of an I/O device or the status of the last I/O operation completed. The CSW is updated when an I/O interruption occurs or as a result of an I/O command. The CSW is available for use until the next I/O interrupt occurs or until another I/O command causes it to be replaced.
When an I/O interruption updates the CSW the I/O device causing the interruption is identified in the Old PSW as the interruption code when operating in BC mode.
The CSW has the following format:
Protection Key (Bits 0-3) indicates the protection key used for the I/O operation.
Logout Pending (L) (Bit 5) When set to one it indicates that an I/O instruction cannot be executed until a pending logout condition has been cleared.
Deferred Condition Code (CC) (Bits 6-7) Indicate a different condition code available for a Start I/O Fast Release after a condition code of zero was returned.
CCW Address (Bits 8-31) Indicate an address eight bytes greater than the last CCW used.
Status (Bits 32-47) These bits identify the condition that caused the CSW to be stored.
- 32 Attention – The device has detected an asynchronous condition significant to the program
- 33 Status Modifier – Indicates the device cannot provide its current status in response to a TEST I/O, when the control unit is busy, when the normal sequence of commands has to be modified or when command retry is to be initiated.
- 34 Control Unit End – Indicates the control unit has become available for use for another operation.
- 35 Busy – Indicates the I/O device cannot execute the command because it is executing a previously initiated operation or because there is a pending interrupt condition.
- 36 Channel End – Indicates completion of the portion of an I/O operation involving the transfer of data or control information between the I/O device and the channel. When command chaining is used Channel End is generated only for the last operation.
- 37 Device End – Indicates the completion of an I/O operation by the device. When command chaining is used only the Device End condition for the last operation in the chain is reported.
- 38 Unit Check – Indicates the I/O device or control unit has detected an unusual condition and additional detail information is available to a sense command.
- 39 Unit Exception – Indicates a condition reported by an I/O device that does not usually occur.
- 40 Program Controlled Interruption – This condition is generated when a channel fetches a CCW with the PCI flag set.
- 41 Incorrect Length – Indicates the number of bytes in storage assigned to the I/O operation is not equal to the number of bytes requested by the device.
- 42 Program Check – Indicates a programming error in the channel program. Can occur as a result of an invalid address in the CAW or a TIC CCW, an invalid command code, an invalid count in a CCW, an invalid data address, an invalid CAW format, an invalid CCW format or an invalid sequence of CCWs.
- 43 Protection Exception – Indicates the channel attempted to access storage that is prohibited by storage protection.
- 44 Channel Data Check – Indicates a machine error has occurred causing a parity error.
- 45 Channel Control Check – Indicates a machine error.
- 46 Interface Control Check – Indicates an invalid signal occurred on the I/O interface.
- 47 Chaining Check – Indicates a channel overrun during data chaining operations.
Count (Bits 48-63) Contain the residual count for the last CCW.