mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-11 15:49:56 +00:00
scsi: nsp32: drop bus reset
bus reset is a host reset without nsp32hw_init(), and will always return SUCCESS, thus disabling the use of host reset. So drop bus reset in favour of host reset. Signed-off-by: Hannes Reinecke <hare@suse.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
a81ac3b046
commit
71b2e66336
@ -201,7 +201,6 @@ static int nsp32_release (struct Scsi_Host *);
|
|||||||
|
|
||||||
/* SCSI error handler */
|
/* SCSI error handler */
|
||||||
static int nsp32_eh_abort (struct scsi_cmnd *);
|
static int nsp32_eh_abort (struct scsi_cmnd *);
|
||||||
static int nsp32_eh_bus_reset (struct scsi_cmnd *);
|
|
||||||
static int nsp32_eh_host_reset(struct scsi_cmnd *);
|
static int nsp32_eh_host_reset(struct scsi_cmnd *);
|
||||||
|
|
||||||
/* generate SCSI message */
|
/* generate SCSI message */
|
||||||
@ -277,7 +276,6 @@ static struct scsi_host_template nsp32_template = {
|
|||||||
.this_id = NSP32_HOST_SCSIID,
|
.this_id = NSP32_HOST_SCSIID,
|
||||||
.use_clustering = DISABLE_CLUSTERING,
|
.use_clustering = DISABLE_CLUSTERING,
|
||||||
.eh_abort_handler = nsp32_eh_abort,
|
.eh_abort_handler = nsp32_eh_abort,
|
||||||
.eh_bus_reset_handler = nsp32_eh_bus_reset,
|
|
||||||
.eh_host_reset_handler = nsp32_eh_host_reset,
|
.eh_host_reset_handler = nsp32_eh_host_reset,
|
||||||
/* .highmem_io = 1, */
|
/* .highmem_io = 1, */
|
||||||
};
|
};
|
||||||
@ -2845,24 +2843,6 @@ static int nsp32_eh_abort(struct scsi_cmnd *SCpnt)
|
|||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int nsp32_eh_bus_reset(struct scsi_cmnd *SCpnt)
|
|
||||||
{
|
|
||||||
nsp32_hw_data *data = (nsp32_hw_data *)SCpnt->device->host->hostdata;
|
|
||||||
unsigned int base = SCpnt->device->host->io_port;
|
|
||||||
|
|
||||||
spin_lock_irq(SCpnt->device->host->host_lock);
|
|
||||||
|
|
||||||
nsp32_msg(KERN_INFO, "Bus Reset");
|
|
||||||
nsp32_dbg(NSP32_DEBUG_BUSRESET, "SCpnt=0x%x", SCpnt);
|
|
||||||
|
|
||||||
nsp32_write2(base, IRQ_CONTROL, IRQ_CONTROL_ALL_IRQ_MASK);
|
|
||||||
nsp32_do_bus_reset(data);
|
|
||||||
nsp32_write2(base, IRQ_CONTROL, 0);
|
|
||||||
|
|
||||||
spin_unlock_irq(SCpnt->device->host->host_lock);
|
|
||||||
return SUCCESS; /* SCSI bus reset is succeeded at any time. */
|
|
||||||
}
|
|
||||||
|
|
||||||
static void nsp32_do_bus_reset(nsp32_hw_data *data)
|
static void nsp32_do_bus_reset(nsp32_hw_data *data)
|
||||||
{
|
{
|
||||||
unsigned int base = data->BaseAddress;
|
unsigned int base = data->BaseAddress;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user