diff options
author | Jeff Garzik <jeff@garzik.org> | 2007-05-27 08:52:12 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2007-05-27 12:59:28 -0500 |
commit | 6cad75a61d802c5f4f4299103b8f95aeb3ee9876 (patch) | |
tree | 27893a562bd5a968335ee3f77d9b084a6fbbc2ff /drivers/scsi/fdomain.c | |
parent | 565bae6a4a8f16459e179ebf4421c1291cf88aa5 (diff) | |
download | op-kernel-dev-6cad75a61d802c5f4f4299103b8f95aeb3ee9876.zip op-kernel-dev-6cad75a61d802c5f4f4299103b8f95aeb3ee9876.tar.gz |
[SCSI] fdomain: fix PCMCIA-related warnings
fdomain is one of those drivers that is compiled twice, once for PCMCIA
and once for non-PCMCIA. The resultant two-driver setup leaves a bit of
dead code and data in the non-PCMCIA case, which gcc complains about.
Shuffle ifdefs a bit to eliminate the conditionally-dead code, and
the compiler warnings.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/fdomain.c')
-rw-r--r-- | drivers/scsi/fdomain.c | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/drivers/scsi/fdomain.c b/drivers/scsi/fdomain.c index 0d1661a..36169d5 100644 --- a/drivers/scsi/fdomain.c +++ b/drivers/scsi/fdomain.c @@ -410,6 +410,8 @@ static irqreturn_t do_fdomain_16x0_intr( int irq, void *dev_id ); static char * fdomain = NULL; module_param(fdomain, charp, 0); +#ifndef PCMCIA + static unsigned long addresses[] = { 0xc8000, 0xca000, @@ -426,6 +428,8 @@ static unsigned short ports[] = { 0x140, 0x150, 0x160, 0x170 }; static unsigned short ints[] = { 3, 5, 10, 11, 12, 14, 15, 0 }; +#endif /* !PCMCIA */ + /* READ THIS BEFORE YOU ADD A SIGNATURE! @@ -458,6 +462,8 @@ static unsigned short ints[] = { 3, 5, 10, 11, 12, 14, 15, 0 }; */ +#ifndef PCMCIA + static struct signature { const char *signature; int sig_offset; @@ -503,6 +509,8 @@ static struct signature { #define SIGNATURE_COUNT ARRAY_SIZE(signatures) +#endif /* !PCMCIA */ + static void print_banner( struct Scsi_Host *shpnt ) { if (!shpnt) return; /* This won't ever happen */ @@ -633,6 +641,8 @@ static int fdomain_test_loopback( void ) return 0; } +#ifndef PCMCIA + /* fdomain_get_irq assumes that we have a valid MCA ID for a TMC-1660/TMC-1680 Future Domain board. Now, check to be sure the bios_base matches these ports. If someone was unlucky enough to have @@ -667,7 +677,6 @@ static int fdomain_get_irq( int base ) static int fdomain_isa_detect( int *irq, int *iobase ) { -#ifndef PCMCIA int i, j; int base = 0xdeadbeef; int flag = 0; @@ -786,11 +795,22 @@ found: *iobase = base; return 1; /* success */ -#else - return 0; -#endif } +#else /* PCMCIA */ + +static int fdomain_isa_detect( int *irq, int *iobase ) +{ + if (irq) + *irq = 0; + if (iobase) + *iobase = 0; + return 0; +} + +#endif /* !PCMCIA */ + + /* PCI detection function: int fdomain_pci_bios_detect(int* irq, int* iobase) This function gets the Interrupt Level and I/O base address from the PCI configuration registers. */ |