From fb4ed589523cbef1ec6e70ca394671a274e02299 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Fri, 7 Aug 2009 19:24:26 +0100 Subject: [PATCH] Staging: sep: Fix PCI irq usage Don't read the IRQ from the device, the device has no idea what is going on in the full bus topology and remapping above PCI. Use the pdev->irq field. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman --- drivers/staging/sep/sep_dev.h | 3 --- drivers/staging/sep/sep_driver.c | 8 +------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/drivers/staging/sep/sep_dev.h b/drivers/staging/sep/sep_dev.h index 27248eb956a9e..48286639e6c92 100644 --- a/drivers/staging/sep/sep_dev.h +++ b/drivers/staging/sep/sep_dev.h @@ -54,9 +54,6 @@ struct sep_device { unsigned long resident_size; void *resident_addr; - /* device interrupt (as retrieved from PCI) */ - int sep_irq; - unsigned long rar_region_addr; /* start address of the access to the SEP registers from driver */ diff --git a/drivers/staging/sep/sep_driver.c b/drivers/staging/sep/sep_driver.c index af2d6c929ce76..837b82884a82b 100644 --- a/drivers/staging/sep/sep_driver.c +++ b/drivers/staging/sep/sep_driver.c @@ -2494,15 +2494,9 @@ static int __devinit sep_probe(struct pci_dev *pdev, const struct pci_device_id /* set the IMR register - open only GPR 2 */ sep_write_reg(sep_dev, HW_HOST_IMR_REG_ADDR, (~(0x1 << 13))); - /* figure out our irq */ - /* FIXME: */ - error = pci_read_config_byte(pdev, PCI_INTERRUPT_LINE, (u8 *) & sep_dev->irq); - - edbg("SEP Driver: my irq is %d\n", sep_dev->irq); - edbg("SEP Driver: about to call request_irq\n"); /* get the interrupt line */ - error = request_irq(sep_dev->irq, sep_inthandler, IRQF_SHARED, "sep_driver", &sep_dev->reg_addr); + error = request_irq(pdev->irq, sep_inthandler, IRQF_SHARED, "sep_driver", &sep_dev->reg_addr); if (error) goto end_function; -- 2.39.5