[SCSI] qlogicpti: convert to accessors and !use_sg cleanup

- convert to accessors and !use_sg cleanup

Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
Boaz Harrosh 2007-09-09 21:21:35 +03:00 committed by James Bottomley
parent ee0ae92793
commit dfb104ff5d
1 changed files with 7 additions and 22 deletions

View File

@ -871,11 +871,12 @@ static inline int load_cmd(struct scsi_cmnd *Cmnd, struct Command_Entry *cmd,
struct scatterlist *sg, *s; struct scatterlist *sg, *s;
int i, n; int i, n;
if (Cmnd->use_sg) { if (scsi_bufflen(Cmnd)) {
int sg_count; int sg_count;
sg = (struct scatterlist *) Cmnd->request_buffer; sg = scsi_sglist(Cmnd);
sg_count = sbus_map_sg(qpti->sdev, sg, Cmnd->use_sg, Cmnd->sc_data_direction); sg_count = sbus_map_sg(qpti->sdev, sg, scsi_sg_count(Cmnd),
Cmnd->sc_data_direction);
ds = cmd->dataseg; ds = cmd->dataseg;
cmd->segment_cnt = sg_count; cmd->segment_cnt = sg_count;
@ -914,16 +915,6 @@ static inline int load_cmd(struct scsi_cmnd *Cmnd, struct Command_Entry *cmd,
} }
sg_count -= n; sg_count -= n;
} }
} else if (Cmnd->request_bufflen) {
Cmnd->SCp.ptr = (char *)(unsigned long)
sbus_map_single(qpti->sdev,
Cmnd->request_buffer,
Cmnd->request_bufflen,
Cmnd->sc_data_direction);
cmd->dataseg[0].d_base = (u32) ((unsigned long)Cmnd->SCp.ptr);
cmd->dataseg[0].d_count = Cmnd->request_bufflen;
cmd->segment_cnt = 1;
} else { } else {
cmd->dataseg[0].d_base = 0; cmd->dataseg[0].d_base = 0;
cmd->dataseg[0].d_count = 0; cmd->dataseg[0].d_count = 0;
@ -1159,17 +1150,11 @@ static struct scsi_cmnd *qlogicpti_intr_handler(struct qlogicpti *qpti)
else else
Cmnd->result = DID_ERROR << 16; Cmnd->result = DID_ERROR << 16;
if (Cmnd->use_sg) { if (scsi_bufflen(Cmnd))
sbus_unmap_sg(qpti->sdev, sbus_unmap_sg(qpti->sdev,
(struct scatterlist *)Cmnd->request_buffer, scsi_sglist(Cmnd), scsi_sg_count(Cmnd),
Cmnd->use_sg,
Cmnd->sc_data_direction); Cmnd->sc_data_direction);
} else if (Cmnd->request_bufflen) {
sbus_unmap_single(qpti->sdev,
(__u32)((unsigned long)Cmnd->SCp.ptr),
Cmnd->request_bufflen,
Cmnd->sc_data_direction);
}
qpti->cmd_count[Cmnd->device->id]--; qpti->cmd_count[Cmnd->device->id]--;
sbus_writew(out_ptr, qpti->qregs + MBOX5); sbus_writew(out_ptr, qpti->qregs + MBOX5);
Cmnd->host_scribble = (unsigned char *) done_queue; Cmnd->host_scribble = (unsigned char *) done_queue;