X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fscsi%2Fmac_scsi.c;h=a942a21dd87eaf78610e04f86933ce76b0ef7815;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=f343fc7042841b3eeaeb6935ec11988409e8358e;hpb=9bf4aaab3e101692164d49b7ca357651eb691cb6;p=linux-2.6.git diff --git a/drivers/scsi/mac_scsi.c b/drivers/scsi/mac_scsi.c index f343fc704..a942a21dd 100644 --- a/drivers/scsi/mac_scsi.c +++ b/drivers/scsi/mac_scsi.c @@ -65,9 +65,6 @@ #define RESET_BOOT #define DRIVER_SETUP -#define ENABLE_IRQ() mac_enable_irq( IRQ_MAC_SCSI ); -#define DISABLE_IRQ() mac_disable_irq( IRQ_MAC_SCSI ); - extern void via_scsi_clear(void); #ifdef RESET_BOOT @@ -222,7 +219,7 @@ static struct Scsi_Host *default_instance; #endif /* - * Function : int macscsi_detect(Scsi_Host_Template * tpnt) + * Function : int macscsi_detect(struct scsi_host_template * tpnt) * * Purpose : initializes mac NCR5380 driver based on the * command line / compile time port and irq definitions. @@ -233,7 +230,7 @@ static struct Scsi_Host *default_instance; * */ -int macscsi_detect(Scsi_Host_Template * tpnt) +int macscsi_detect(struct scsi_host_template * tpnt) { static int called = 0; int flags = 0; @@ -302,7 +299,7 @@ int macscsi_detect(Scsi_Host_Template * tpnt) if (instance->irq != SCSI_IRQ_NONE) if (request_irq(instance->irq, NCR5380_intr, IRQ_FLG_SLOW, - "ncr5380", NCR5380_intr)) { + "ncr5380", instance)) { printk(KERN_WARNING "scsi%d: IRQ%d not free, interrupts disabled\n", instance->host_no, instance->irq); instance->irq = SCSI_IRQ_NONE; @@ -326,6 +323,7 @@ int macscsi_release (struct Scsi_Host *shpnt) { if (shpnt->irq != SCSI_IRQ_NONE) free_irq (shpnt->irq, NCR5380_intr); + NCR5380_exit(shpnt); return 0; } @@ -350,7 +348,7 @@ static void mac_scsi_reset_boot(struct Scsi_Host *instance) printk(KERN_INFO "Macintosh SCSI: resetting the SCSI bus..." ); /* switch off SCSI IRQ - catch an interrupt without IRQ bit set else */ - mac_disable_irq(IRQ_MAC_SCSI); + disable_irq(IRQ_MAC_SCSI); /* get in phase */ NCR5380_write( TARGET_COMMAND_REG, @@ -368,7 +366,7 @@ static void mac_scsi_reset_boot(struct Scsi_Host *instance) barrier(); /* switch on SCSI IRQ again */ - mac_enable_irq(IRQ_MAC_SCSI); + enable_irq(IRQ_MAC_SCSI); printk(KERN_INFO " done\n" ); } @@ -580,7 +578,7 @@ static int macscsi_pwrite (struct Scsi_Host *instance, #include "NCR5380.c" -static Scsi_Host_Template driver_template = { +static struct scsi_host_template driver_template = { .proc_name = "Mac5380", .proc_info = macscsi_proc_info, .name = "Macintosh NCR5380 SCSI", @@ -590,8 +588,6 @@ static Scsi_Host_Template driver_template = { .queuecommand = macscsi_queue_command, .eh_abort_handler = macscsi_abort, .eh_bus_reset_handler = macscsi_bus_reset, - .eh_device_reset_handler = macscsi_device_reset, - .eh_host_reset_handler = macscsi_host_reset, .can_queue = CAN_QUEUE, .this_id = 7, .sg_tablesize = SG_ALL,