Messages in this thread | | | From | David Brownell <> | Subject | Re: [PATCH] at91_mci: use generic GPIO calls | Date | Tue, 5 Feb 2008 02:07:44 -0800 |
| |
On Tuesday 05 February 2008, Marc Pignat wrote: > Hi all! > > > /* > > @@ -946,9 +986,10 @@ static int __exit at91_mci_remove(struct > > host = mmc_priv(mmc); > > > > if (host->board->det_pin) { > > + if (device_can_wakeup(&pdev->dev)) > > + free_irq(gpio_to_irq(host->board->det_pin), host); > > Seems strange to use device_can_wakeup(&pdev->dev) as > have_we_requested_this_irq(gpio_to_irq(host->board->det_pin))... but seems to > work.
Yeah ... it only works because the device_init_wakeup() is done in the driver (sigh) instead of the device setup code. Now that's only done if that IRQ was correctly requested, so that bit does double duty.
Previously the driver always freeed that IRQ, even if it hadn't actually managed to request it ... ;)
| |