summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/fdomain.c
diff options
context:
space:
mode:
authorOndrej Zary <linux@zary.sk>2019-05-27 22:19:47 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2019-06-19 01:46:23 +0200
commit8674a8aa2c399cb4014052796ba4bd0fbd6f3c03 (patch)
treece150a192b61e546d167302128e391ad02690581 /drivers/scsi/fdomain.c
parentscsi: fdomain: Add register definitions (diff)
downloadlinux-8674a8aa2c399cb4014052796ba4bd0fbd6f3c03.tar.xz
linux-8674a8aa2c399cb4014052796ba4bd0fbd6f3c03.zip
scsi: fdomain: Add PCMCIA support
Add PCMCIA card support to Future Domain SCSI driver. Tested with IBM SCSI PCMCIA Adapter 40G1890. Signed-off-by: Ondrej Zary <linux@zary.sk> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/fdomain.c')
-rw-r--r--drivers/scsi/fdomain.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/scsi/fdomain.c b/drivers/scsi/fdomain.c
index 297ccc799436..b5e66971b6d9 100644
--- a/drivers/scsi/fdomain.c
+++ b/drivers/scsi/fdomain.c
@@ -510,6 +510,7 @@ struct Scsi_Host *fdomain_create(int base, int irq, int this_id,
static const char * const chip_names[] = {
"Unknown", "TMC-1800", "TMC-18C50", "TMC-18C30"
};
+ unsigned long irq_flags = 0;
chip = fdomain_identify(base);
if (!chip)
@@ -541,8 +542,10 @@ struct Scsi_Host *fdomain_create(int base, int irq, int this_id,
fd->chip = chip;
INIT_WORK(&fd->work, fdomain_work);
- if (request_irq(irq, fdomain_irq, dev_is_pci(dev) ? IRQF_SHARED : 0,
- "fdomain", fd))
+ if (dev_is_pci(dev) || !strcmp(dev->bus->name, "pcmcia"))
+ irq_flags = IRQF_SHARED;
+
+ if (request_irq(irq, fdomain_irq, irq_flags, "fdomain", fd))
goto fail_put;
shost_printk(KERN_INFO, sh, "%s chip at 0x%x irq %d SCSI ID %d\n",