Add support for READ6

This commit is contained in:
Ronnie Sahlberg
2011-04-16 08:06:16 +10:00
parent b6782dd7c8
commit 07ad0572f2
6 changed files with 139 additions and 2 deletions

View File

@@ -572,6 +572,11 @@ iscsi_synchronizecache10_task(struct iscsi_context *iscsi, int lun,
int immed, iscsi_command_cb cb,
void *private_data);
struct scsi_task *
iscsi_read6_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
uint32_t datalen, int blocksize, iscsi_command_cb cb,
void *private_data);
struct scsi_task *
iscsi_read10_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
uint32_t datalen, int blocksize, iscsi_command_cb cb,
void *private_data);
@@ -605,6 +610,10 @@ struct scsi_task *
iscsi_inquiry_sync(struct iscsi_context *iscsi, int lun, int evpd,
int page_code, int maxsize);
struct scsi_task *
iscsi_read6_sync(struct iscsi_context *iscsi, int lun, uint32_t lba,
uint32_t datalen, int blocksize);
struct scsi_task *
iscsi_read10_sync(struct iscsi_context *iscsi, int lun, uint32_t lba,
uint32_t datalen, int blocksize);

View File

@@ -21,6 +21,7 @@
enum scsi_opcode {
SCSI_OPCODE_TESTUNITREADY = 0x00,
SCSI_OPCODE_READ6 = 0x08,
SCSI_OPCODE_INQUIRY = 0x12,
SCSI_OPCODE_MODESENSE6 = 0x1a,
SCSI_OPCODE_READCAPACITY10 = 0x25,
@@ -69,6 +70,10 @@ enum scsi_xfer_dir {
struct scsi_reportluns_params {
int report_type;
};
struct scsi_read6_params {
uint32_t lba;
uint32_t num_blocks;
};
struct scsi_read10_params {
uint32_t lba;
uint32_t num_blocks;
@@ -122,6 +127,7 @@ struct scsi_task {
int expxferlen;
unsigned char cdb[SCSI_CDB_MAX_SIZE];
union {
struct scsi_read6_params read6;
struct scsi_read10_params read10;
struct scsi_write10_params write10;
struct scsi_readcapacity10_params readcapacity10;