[alsa-devel] [PATCH] Allow passing platform_data to devices attached to AC97 bus
Marek Vasut
marek.vasut at gmail.com
Wed Jul 22 00:39:00 CEST 2009
Dne St 22. července 2009 00:33:34 Russell King - ARM Linux napsal(a):
> On Wed, Jul 22, 2009 at 12:13:12AM +0200, Marek Vasut wrote:
> > + ret = set_irq_type(gpio_to_irq(pdata->charge_gpio),
> > + IRQ_TYPE_EDGE_BOTH);
> > + if (ret)
> > + goto err2;
> > + ret = request_irq(gpio_to_irq(pdata->charge_gpio),
> > + wm97xx_chrg_irq, IRQF_DISABLED,
> > + "AC Detect", 0);
>
> This should be done as one call to request_irq().
>
> Why?
>
> If the IRQ is already in use by something else, calling set_irq_type()
> will stamp on that other user, enforcing the change of configuration.
> request_irq() will then fail, leaving the IRQ configuration buggered.
>
> Combining the two allows request_irq() to fail if the IRQ line is busy.
> If it isn't busy, it will configure the IRQ line prior to enabling the
> IRQ. If the IRQ is shared and sharing is permitted, it will fail if
> the configuration is not compatible with the existing IRQ configuration.
>
> set_irq_type() should only be used very sparingly and when there's no
> other option.
Sorry, I removed that, this patch should be OK.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Convert-WM97xx-driver-to-use-platform_data.patch
Type: text/x-patch
Size: 8102 bytes
Desc: not available
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20090722/e4bdbc9a/attachment-0001.patch
More information about the Alsa-devel
mailing list