diff options
author | Jaroslav Kysela | 2005-06-21 07:39:41 -0700 |
---|---|---|
committer | Jaroslav Kysela | 2005-06-21 07:39:41 -0700 |
commit | fae6ec69c84d71b1d5bda9ede1a262c1681684aa (patch) | |
tree | eb4aff9a5c2b7d04ce09a3717bb1dd4a79fe7595 /drivers/scsi/mac53c94.c | |
parent | bbc0274e9bb2e3f1d724d445a2bd32566b9b66f7 (diff) | |
parent | 1d345dac1f30af1cd9f3a1faa12f9f18f17f236e (diff) |
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'drivers/scsi/mac53c94.c')
-rw-r--r-- | drivers/scsi/mac53c94.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/scsi/mac53c94.c b/drivers/scsi/mac53c94.c index 3ef2a1443996..edd47d1f0b17 100644 --- a/drivers/scsi/mac53c94.c +++ b/drivers/scsi/mac53c94.c @@ -98,16 +98,14 @@ static int mac53c94_queue(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd * return 0; } -static int mac53c94_abort(struct scsi_cmnd *cmd) -{ - return FAILED; -} - static int mac53c94_host_reset(struct scsi_cmnd *cmd) { struct fsc_state *state = (struct fsc_state *) cmd->device->host->hostdata; struct mac53c94_regs __iomem *regs = state->regs; struct dbdma_regs __iomem *dma = state->dma; + unsigned long flags; + + spin_lock_irqsave(cmd->device->host->host_lock, flags); writel((RUN|PAUSE|FLUSH|WAKE) << 16, &dma->control); writeb(CMD_SCSI_RESET, ®s->command); /* assert RST */ @@ -116,6 +114,8 @@ static int mac53c94_host_reset(struct scsi_cmnd *cmd) udelay(20); mac53c94_init(state); writeb(CMD_NOP, ®s->command); + + spin_unlock_irqrestore(cmd->device->host->host_lock, flags); return SUCCESS; } @@ -416,7 +416,6 @@ static struct scsi_host_template mac53c94_template = { .proc_name = "53c94", .name = "53C94", .queuecommand = mac53c94_queue, - .eh_abort_handler = mac53c94_abort, .eh_host_reset_handler = mac53c94_host_reset, .can_queue = 1, .this_id = 7, |