diff options
Diffstat (limited to 'drivers/scsi/atp870u.c')
-rw-r--r-- | drivers/scsi/atp870u.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/drivers/scsi/atp870u.c b/drivers/scsi/atp870u.c index 9d179cd15bb8..dcd6fae65a88 100644 --- a/drivers/scsi/atp870u.c +++ b/drivers/scsi/atp870u.c @@ -512,7 +512,7 @@ static irqreturn_t atp870u_intr_handle(int irq, void *dev_id) scsi_dma_unmap(workreq); spin_lock_irqsave(dev->host->host_lock, flags); - (*workreq->scsi_done) (workreq); + scsi_done(workreq); #ifdef ED_DBGP printk("workreq->scsi_done\n"); #endif @@ -618,9 +618,9 @@ static irqreturn_t atp870u_intr_handle(int irq, void *dev_id) * * Queue a command to the ATP queue. Called with the host lock held. */ -static int atp870u_queuecommand_lck(struct scsi_cmnd *req_p, - void (*done) (struct scsi_cmnd *)) +static int atp870u_queuecommand_lck(struct scsi_cmnd *req_p) { + void (*done)(struct scsi_cmnd *) = scsi_done; unsigned char c; unsigned int m; struct atp_unit *dev; @@ -654,17 +654,6 @@ static int atp870u_queuecommand_lck(struct scsi_cmnd *req_p, return 0; } - if (done) { - req_p->scsi_done = done; - } else { -#ifdef ED_DBGP - printk( "atp870u_queuecommand: done can't be NULL\n"); -#endif - req_p->result = 0; - done(req_p); - return 0; - } - /* * Count new command */ |