Commit 6e17f36b authored by Matthew Wilcox's avatar Matthew Wilcox Committed by Christoph Hellwig

[PATCH] Some parisc updates for SCSI

The config stanza for SCSI_ZALON was in the wrong place, so move it.
Make SCSI_NCR53C8XX conflict with SCSI_ZALON.
Give ncr53c8xx and sym53c8xx names
Fill in detach and release methods unconditionally.
Call pci_set_master() in sym53c8xx.
Both these drivers need interrupt.h, not sched.h
parent c09a5618
...@@ -946,16 +946,6 @@ config SCSI_SYM53C8XX_2 ...@@ -946,16 +946,6 @@ config SCSI_SYM53C8XX_2
Please read <file:drivers/scsi/sym53c8xx_2/Documentation.txt> for more Please read <file:drivers/scsi/sym53c8xx_2/Documentation.txt> for more
information. information.
config SCSI_ZALON
tristate "Zalon SCSI support"
depends on GSC && SCSI
help
The Zalon is a GSC/HSC bus interface chip that sits between the
PA-RISC processor and the NCR 53c720 SCSI controller on C100,
C110, J200, J210 and some D, K & R-class machines. It's also
used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
Say Y here if you have one of these machines or cards.
config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
int "DMA addressing mode" int "DMA addressing mode"
depends on SCSI_SYM53C8XX_2 depends on SCSI_SYM53C8XX_2
...@@ -1010,9 +1000,19 @@ config SCSI_SYM53C8XX_IOMAPPED ...@@ -1010,9 +1000,19 @@ config SCSI_SYM53C8XX_IOMAPPED
If you say Y here, the driver will preferently use normal IO rather than If you say Y here, the driver will preferently use normal IO rather than
memory mapped IO. memory mapped IO.
config SCSI_ZALON
tristate "Zalon SCSI support"
depends on GSC && SCSI
help
The Zalon is a GSC/HSC bus interface chip that sits between the
PA-RISC processor and the NCR 53c720 SCSI controller on C100,
C110, J200, J210 and some D, K & R-class machines. It's also
used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
Say Y here if you have one of these machines or cards.
config SCSI_NCR53C8XX config SCSI_NCR53C8XX
tristate "NCR53C8XX SCSI support" tristate "NCR53C8XX SCSI support"
depends on PCI && SCSI_SYM53C8XX_2!=y && SCSI depends on PCI && SCSI_SYM53C8XX_2!=y && SCSI_ZALON!=y && SCSI
---help--- ---help---
This is the BSD ncr driver adapted to Linux for the NCR53C8XX family This is the BSD ncr driver adapted to Linux for the NCR53C8XX family
of PCI-SCSI controllers. This driver supports parity checking, of PCI-SCSI controllers. This driver supports parity checking,
......
...@@ -5024,7 +5024,6 @@ static int ncr_abort_command (ncb_p np, Scsi_Cmnd *cmd) ...@@ -5024,7 +5024,6 @@ static int ncr_abort_command (ncb_p np, Scsi_Cmnd *cmd)
**========================================================== **==========================================================
*/ */
#ifdef MODULE
static int ncr_detach(ncb_p np) static int ncr_detach(ncb_p np)
{ {
ccb_p cp; ccb_p cp;
...@@ -5160,7 +5159,6 @@ static int ncr_detach(ncb_p np) ...@@ -5160,7 +5159,6 @@ static int ncr_detach(ncb_p np)
return 1; return 1;
} }
#endif
/*========================================================== /*==========================================================
** **
...@@ -8935,7 +8933,6 @@ int ncr53c8xx_abort(Scsi_Cmnd *cmd) ...@@ -8935,7 +8933,6 @@ int ncr53c8xx_abort(Scsi_Cmnd *cmd)
} }
#ifdef MODULE
int ncr53c8xx_release(struct Scsi_Host *host) int ncr53c8xx_release(struct Scsi_Host *host)
{ {
#ifdef DEBUG_NCR53C8XX #ifdef DEBUG_NCR53C8XX
...@@ -8945,7 +8942,6 @@ printk("ncr53c8xx : release\n"); ...@@ -8945,7 +8942,6 @@ printk("ncr53c8xx : release\n");
return 1; return 1;
} }
#endif
/* /*
......
...@@ -60,17 +60,12 @@ const char *ncr53c8xx_info(struct Scsi_Host *host); ...@@ -60,17 +60,12 @@ const char *ncr53c8xx_info(struct Scsi_Host *host);
int ncr53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); int ncr53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
int ncr53c8xx_reset(Scsi_Cmnd *, unsigned int); int ncr53c8xx_reset(Scsi_Cmnd *, unsigned int);
int ncr53c8xx_slave_configure(Scsi_Device *); int ncr53c8xx_slave_configure(Scsi_Device *);
#ifdef MODULE
int ncr53c8xx_release(struct Scsi_Host *); int ncr53c8xx_release(struct Scsi_Host *);
#else
#define ncr53c8xx_release NULL
#endif
#if LINUX_VERSION_CODE >= LinuxVersionCode(2,1,75) #if LINUX_VERSION_CODE >= LinuxVersionCode(2,1,75)
#define NCR53C8XX { .name = "", \ #define NCR53C8XX { .name = "ncr53c8xx", \
.detect = ncr53c8xx_detect, \ .detect = ncr53c8xx_detect, \
.release = ncr53c8xx_release, \ .release = ncr53c8xx_release, \
.info = ncr53c8xx_info, \ .info = ncr53c8xx_info, \
......
...@@ -112,8 +112,8 @@ ...@@ -112,8 +112,8 @@
#include <asm/spinlock.h> #include <asm/spinlock.h>
#endif #endif
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/pci.h> #include <linux/pci.h>
#include <linux/string.h> #include <linux/string.h>
...@@ -7214,7 +7214,6 @@ static int ncr_abort_command (ncb_p np, Scsi_Cmnd *cmd) ...@@ -7214,7 +7214,6 @@ static int ncr_abort_command (ncb_p np, Scsi_Cmnd *cmd)
**========================================================== **==========================================================
*/ */
#ifdef MODULE
static int ncr_detach(ncb_p np) static int ncr_detach(ncb_p np)
{ {
int i; int i;
...@@ -7260,7 +7259,6 @@ static int ncr_detach(ncb_p np) ...@@ -7260,7 +7259,6 @@ static int ncr_detach(ncb_p np)
return 1; return 1;
} }
#endif
/*========================================================== /*==========================================================
** **
...@@ -12958,6 +12956,7 @@ if (sym53c8xx) ...@@ -12958,6 +12956,7 @@ if (sym53c8xx)
} }
if (i != count) /* Ignore this device if we already have it */ if (i != count) /* Ignore this device if we already have it */
continue; continue;
pci_set_master(pcidev);
devp = &devtbl[count]; devp = &devtbl[count];
devp->host_id = driver_setup.host_id; devp->host_id = driver_setup.host_id;
devp->attach_done = 0; devp->attach_done = 0;
...@@ -13798,7 +13797,6 @@ int sym53c8xx_abort(Scsi_Cmnd *cmd) ...@@ -13798,7 +13797,6 @@ int sym53c8xx_abort(Scsi_Cmnd *cmd)
} }
#ifdef MODULE
int sym53c8xx_release(struct Scsi_Host *host) int sym53c8xx_release(struct Scsi_Host *host)
{ {
#ifdef DEBUG_SYM53C8XX #ifdef DEBUG_SYM53C8XX
...@@ -13808,7 +13806,6 @@ printk("sym53c8xx : release\n"); ...@@ -13808,7 +13806,6 @@ printk("sym53c8xx : release\n");
return 1; return 1;
} }
#endif
/* /*
......
...@@ -75,17 +75,11 @@ const char *sym53c8xx_info(struct Scsi_Host *host); ...@@ -75,17 +75,11 @@ const char *sym53c8xx_info(struct Scsi_Host *host);
int sym53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); int sym53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
int sym53c8xx_reset(Scsi_Cmnd *, unsigned int); int sym53c8xx_reset(Scsi_Cmnd *, unsigned int);
int sym53c8xx_slave_configure(Scsi_Device *); int sym53c8xx_slave_configure(Scsi_Device *);
#ifdef MODULE
int sym53c8xx_release(struct Scsi_Host *); int sym53c8xx_release(struct Scsi_Host *);
#else
#define sym53c8xx_release NULL
#endif
#if LINUX_VERSION_CODE >= LinuxVersionCode(2,1,75) #if LINUX_VERSION_CODE >= LinuxVersionCode(2,1,75)
#define SYM53C8XX { .name = "", \ #define SYM53C8XX { .name = "sym53c8xx", \
.detect = sym53c8xx_detect, \ .detect = sym53c8xx_detect, \
.release = sym53c8xx_release, \ .release = sym53c8xx_release, \
.info = sym53c8xx_info, \ .info = sym53c8xx_info, \
......
...@@ -151,7 +151,6 @@ int zalon7xx_detect(Scsi_Host_Template *tpnt) ...@@ -151,7 +151,6 @@ int zalon7xx_detect(Scsi_Host_Template *tpnt)
return (hosts_used != 0); return (hosts_used != 0);
} }
#ifdef MODULE
extern int ncr53c8xx_release(struct Scsi_Host *host); extern int ncr53c8xx_release(struct Scsi_Host *host);
int zalon7xx_release(struct Scsi_Host *host) int zalon7xx_release(struct Scsi_Host *host)
...@@ -160,4 +159,3 @@ int zalon7xx_release(struct Scsi_Host *host) ...@@ -160,4 +159,3 @@ int zalon7xx_release(struct Scsi_Host *host)
unregister_parisc_driver(&zalon_driver); unregister_parisc_driver(&zalon_driver);
return 1; return 1;
} }
#endif
...@@ -15,12 +15,7 @@ extern struct proc_dir_entry proc_scsi_zalon7xx; ...@@ -15,12 +15,7 @@ extern struct proc_dir_entry proc_scsi_zalon7xx;
int zalon7xx_detect(Scsi_Host_Template *tpnt); int zalon7xx_detect(Scsi_Host_Template *tpnt);
const char *ncr53c8xx_info(struct Scsi_Host *host); const char *ncr53c8xx_info(struct Scsi_Host *host);
int ncr53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); int ncr53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
#ifdef MODULE
int zalon7xx_release(struct Scsi_Host *); int zalon7xx_release(struct Scsi_Host *);
#else
#define zalon7xx_release NULL
#endif
#define GSC_SCSI_ZALON_OFFSET 0x800 #define GSC_SCSI_ZALON_OFFSET 0x800
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment