diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2011-02-14 19:08:53 +0100 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2011-02-14 19:08:53 +0100 |
commit | b214b7bbffca8ac6a6f1dad46408f7a9d4219098 (patch) | |
tree | 2ef03e062e2a04ea9f2d5439b0daea5274a1bc98 /drivers/gpio/langwell_gpio.c | |
parent | spi/spidev: Add 32 bit compat ioctl() (diff) | |
parent | Linux 2.6.38-rc4 (diff) | |
download | linux-b214b7bbffca8ac6a6f1dad46408f7a9d4219098.tar.xz linux-b214b7bbffca8ac6a6f1dad46408f7a9d4219098.zip |
Merge commit 'v2.6.38-rc4' into spi/next
Diffstat (limited to 'drivers/gpio/langwell_gpio.c')
-rw-r--r-- | drivers/gpio/langwell_gpio.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/gpio/langwell_gpio.c b/drivers/gpio/langwell_gpio.c index d81cc748e77f..54d70a47afc1 100644 --- a/drivers/gpio/langwell_gpio.c +++ b/drivers/gpio/langwell_gpio.c @@ -187,7 +187,7 @@ MODULE_DEVICE_TABLE(pci, lnw_gpio_ids); static void lnw_irq_handler(unsigned irq, struct irq_desc *desc) { - struct lnw_gpio *lnw = (struct lnw_gpio *)get_irq_data(irq); + struct lnw_gpio *lnw = get_irq_data(irq); u32 base, gpio; void __iomem *gedr; u32 gedr_v; @@ -206,7 +206,12 @@ static void lnw_irq_handler(unsigned irq, struct irq_desc *desc) /* clear the edge detect status bit */ writel(gedr_v, gedr); } - desc->chip->eoi(irq); + + if (desc->chip->irq_eoi) + desc->chip->irq_eoi(irq_get_irq_data(irq)); + else + dev_warn(lnw->chip.dev, "missing EOI handler for irq %d\n", irq); + } static int __devinit lnw_gpio_probe(struct pci_dev *pdev, |