Commit 5637d5b7 authored by Sergey Shtylyov's avatar Sergey Shtylyov Committed by Martin K. Petersen

scsi: aha1542: Clarify 'struct ccb' comments

This driver's original authors did pretty bad job of documenting the
Command Control Block (CCB) structure -- especially its 2nd byte, where the
bit numbers were completely left out. Sync up the 'struct ccb' comments to
the Adaptec AHA-154xA manual.

Link: https://lore.kernel.org/r/17a7be14-a9d2-9822-bb3e-1d7385f486b0@omprussia.ruReviewed-by: default avatarHannes Reinecke <hare@suse.de>
Signed-off-by: default avatarSergey Shtylyov <s.shtylyov@omprussia.ru>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent fb475b74
......@@ -78,23 +78,28 @@ static inline void any2scsi(u8 *p, u32 v)
#define MAX_CDB 12
#define MAX_SENSE 14
struct ccb { /* Command Control Block 5.3 */
u8 op; /* Command Control Block Operation Code */
u8 idlun; /* op=0,2:Target Id, op=1:Initiator Id */
/* Outbound data transfer, length is checked*/
/* Inbound data transfer, length is checked */
/* Logical Unit Number */
/* Command Control Block (CCB), 5.3 */
struct ccb {
u8 op; /* Command Control Block Operation Code: */
/* 0x00: SCSI Initiator CCB, 0x01: SCSI Target CCB, */
/* 0x02: SCSI Initiator CCB with Scatter/Gather, */
/* 0x81: SCSI Bus Device Reset CCB */
u8 idlun; /* Address and Direction Control: */
/* Bits 7-5: op=0, 2: Target ID, op=1: Initiator ID */
/* Bit 4: Outbound data transfer, length is checked */
/* Bit 3: Inbound data transfer, length is checked */
/* Bits 2-0: Logical Unit Number */
u8 cdblen; /* SCSI Command Length */
u8 rsalen; /* Request Sense Allocation Length/Disable */
u8 datalen[3]; /* Data Length (msb, .., lsb) */
u8 dataptr[3]; /* Data Pointer */
u8 linkptr[3]; /* Link Pointer */
u8 rsalen; /* Request Sense Allocation Length/Disable Auto Sense */
u8 datalen[3]; /* Data Length (MSB, ..., LSB) */
u8 dataptr[3]; /* Data Pointer (MSB, ..., LSB) */
u8 linkptr[3]; /* Link Pointer (MSB, ..., LSB) */
u8 commlinkid; /* Command Linking Identifier */
u8 hastat; /* Host Adapter Status (HASTAT) */
u8 tarstat; /* Target Device Status */
u8 hastat; /* Host Adapter Status (HASTAT) */
u8 tarstat; /* Target Device Status (TARSTAT) */
u8 reserved[2];
u8 cdb[MAX_CDB+MAX_SENSE]; /* SCSI Command Descriptor Block */
/* REQUEST SENSE */
u8 cdb[MAX_CDB + MAX_SENSE]; /* SCSI Command Descriptor Block */
/* followed by the Auto Sense data */
};
#define AHA1542_REGION_SIZE 4
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment