Messages in this thread | | | Date | Tue, 5 Jul 2011 14:22:46 +0300 | From | Felipe Balbi <> | Subject | Re: [PATCH 1/5] MFD: twl6040: Add irq variable for slave devices |
| |
Hi,
On Tue, Jul 05, 2011 at 12:14:22PM +0300, Peter Ujfalusi wrote: > Add new variable to pass the irq number for the slaves > devices of twl6040. > The irq number configuration is done in the twl6040-core > at probe time, so machine drivers do not need to be > modified. > > Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> > --- > drivers/mfd/twl6040-core.c | 2 ++ > include/linux/i2c/twl.h | 2 ++ > 2 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/drivers/mfd/twl6040-core.c b/drivers/mfd/twl6040-core.c > index cfaedb5..8607793 100644 > --- a/drivers/mfd/twl6040-core.c > +++ b/drivers/mfd/twl6040-core.c > @@ -501,6 +501,7 @@ static int __devinit twl6040_probe(struct platform_device *pdev) > if (pdata->codec) { > cell = &twl6040->cells[children]; > cell->name = "twl6040-codec"; > + pdata->codec->plug_irq = twl6040->irq_base + TWL6040_IRQ_PLUG;
are the slave devices platform_devices ?? If so, you could use struct resource to pass IRQs as that's the "approved" way to do so. Then, on child driver, you could either rely on a particular order of the resources or assign them names and use platform_get_irq_byname() to fetch the correct one (if you have more than one, that is).
-- balbi [unhandled content-type:application/pgp-signature] | |