X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fscsi%2Fultrastor.c;h=e681681ab7a2c91e88efc933eb66c8b0e807fd02;hb=43bc926fffd92024b46cafaf7350d669ba9ca884;hp=3d0a0f2f7f89da12ee3894b4b51f90cf96d309f5;hpb=6a77f38946aaee1cd85eeec6cf4229b204c15071;p=linux-2.6.git diff --git a/drivers/scsi/ultrastor.c b/drivers/scsi/ultrastor.c index 3d0a0f2f7..e681681ab 100644 --- a/drivers/scsi/ultrastor.c +++ b/drivers/scsi/ultrastor.c @@ -259,7 +259,7 @@ static struct ultrastor_config } config = {0}; /* Set this to 1 to reset the SCSI bus on error. */ -int ultrastor_bus_reset; +static int ultrastor_bus_reset; /* Allowed BIOS base addresses (NULL indicates reserved) */ @@ -343,7 +343,7 @@ static void log_ultrastor_abort(struct ultrastor_config *config, } #endif -static int ultrastor_14f_detect(Scsi_Host_Template * tpnt) +static int ultrastor_14f_detect(struct scsi_host_template * tpnt) { size_t i; unsigned char in_byte, version_byte = 0; @@ -525,7 +525,7 @@ out_release_port: return FALSE; } -static int ultrastor_24f_detect(Scsi_Host_Template * tpnt) +static int ultrastor_24f_detect(struct scsi_host_template * tpnt) { int i; struct Scsi_Host * shpnt = NULL; @@ -637,7 +637,7 @@ static int ultrastor_24f_detect(Scsi_Host_Template * tpnt) return FALSE; } -static int ultrastor_detect(Scsi_Host_Template * tpnt) +static int ultrastor_detect(struct scsi_host_template * tpnt) { tpnt->proc_name = "ultrastor"; return ultrastor_14f_detect(tpnt) || ultrastor_24f_detect(tpnt); @@ -879,7 +879,7 @@ static int ultrastor_abort(Scsi_Cmnd *SCpnt) ogm_addr = (unsigned int)isa_bus_to_virt(inl(port0 + 23)); icm_status = inb(port0 + 27); icm_addr = (unsigned int)isa_bus_to_virt(inl(port0 + 28)); - spin_lock_irqsave(host->host_lock, flags); + spin_unlock_irqrestore(host->host_lock, flags); } /* First check to see if an interrupt is pending. I suspect the SiS @@ -945,7 +945,7 @@ static int ultrastor_abort(Scsi_Cmnd *SCpnt) config.mscp[mscp_index].SCint, SCpnt); #endif if (config.mscp[mscp_index].SCint == 0) - return SCSI_ABORT_NOT_RUNNING; + return FAILED; if (config.mscp[mscp_index].SCint != SCpnt) panic("Bad abort"); config.mscp[mscp_index].SCint = NULL; @@ -954,9 +954,7 @@ static int ultrastor_abort(Scsi_Cmnd *SCpnt) SCpnt->result = DID_ABORT << 16; /* Take the host lock to guard against scsi layer re-entry */ - spin_lock_irqsave(host->host_lock, flags); done(SCpnt); - spin_unlock_irqrestore(host->host_lock, flags); /* Need to set a timeout here in case command never completes. */ return SUCCESS; @@ -1020,7 +1018,7 @@ static int ultrastor_host_reset(Scsi_Cmnd * SCpnt) #endif spin_unlock_irqrestore(host->host_lock, flags); - return SCSI_RESET_SUCCESS; + return SUCCESS; } @@ -1186,7 +1184,7 @@ static irqreturn_t do_ultrastor_interrupt(int irq, void *dev_id, MODULE_LICENSE("GPL"); -static Scsi_Host_Template driver_template = { +static struct scsi_host_template driver_template = { .name = "UltraStor 14F/24F/34F", .detect = ultrastor_detect, .release = ultrastor_release,