Messages in this thread | | | Date | Mon, 14 May 2012 23:11:38 +0200 | From | Samuel Ortiz <> | Subject | Re: [PATCH] mfd: wm831x: Convert to irq_domain |
| |
Hi Mark,
On Sun, May 13, 2012 at 10:18:56PM +0100, Mark Brown wrote: > The modern idiom is to use irq_domain to allocate interrupts. This is > useful partly to allow further infrastructure to be based on the domains > and partly because it makes it much easier to allocate virtual interrupts > to devices as we don't need to allocate a contiguous range of interrupt > numbers. > > Convert the wm831x driver over to this infrastructure, using a legacy > IRQ mapping if an irq_base is specified in platform data and otherwise > using a linear mapping, always registering the interrupts even if they > won't ever be used. Only boards which need to use the GPIOs as > interrupts should need to use an irq_base. > > This means that we can't use the MFD irq_base management since the > unless we're using an explicit irq_base from platform data we can't rely > on a linear mapping of interrupts. Instead we need to map things via > the irq_domain - provide a conveniencem function wm831x_irq() to save a > small amount of typing when doing so. Looking at this I couldn't clearly > see anything the MFD core could do to make this nicer. > > Since we're not supporting device tree yet there's no meaningful > advantage if we don't do this conversion in one, the fact that the > interrupt resources are used for repeated IP blocks makes accessor > functions for the irq_domain more trouble to do than they're worth. I applied this one manually, let's see which merge conflicts we get during the merge window.
Cheers, Samuel.
-- Intel Open Source Technology Centre http://oss.intel.com/
| |