Thread (64 messages) flat view 64 messages, 14 authors, 2012-02-23

Re: [PATCH v3 00/25] irq_domain generalization and refinement

From: Russell King - ARM Linux <hidden>
Date: 2012-02-05 16:14:19
Also in: linux-arm-kernel, linux-devicetree, lkml

On Sat, Feb 04, 2012 at 05:38:53PM -0800, Tony Lindgren wrote:
* Russell King - ARM Linux [off-list ref] [120204 14:00]:
quoted
Actually, it turns out to be not that hard, because twl doesn't actually
make use of the IRQ domain stuff:

commit aeb5032b3f8b9ab69daa545777433fa94b3494c4
Author:     Benoit Cousson [off-list ref]
AuthorDate: Mon Aug 29 16:20:23 2011 +0200
Commit:     Samuel Ortiz [off-list ref]
CommitDate: Mon Jan 9 00:37:40 2012 +0100

    mfd: twl-core: Add initial DT support for twl4030/twl6030

    [grant.likely@secretlab.ca: Fix IRQ_DOMAIN dependency in kconfig]

Adding any dependency - especially one which wouldn't be enabled - for
a new feature which wasn't required before is going to break existing
users, so this shouldn't have been done in the first place.

A better fix to preserve existing users would've been as below - yes
it means more ifdefs, but if irq domain is to remain a DT only thing
then we're going to end up with _lots_ of this stuff.

I'd much prefer to see irq domain become more widely available so it
doesn't require these ifdefs everywhere.
Your patch below looks like a correct fix to me to the problem
you and Grazvydas are seeing:

Acked-by: Tony Lindgren <tony@atomide.com>
It's not quite correct, because OMAP4 has issues in this area as well
(which does select IRQ_DOMAIN but can be without OF.)  The result is
an oops from irq_domain_add() because domain->ops is NULL.

The right solution is three fold:

1. Wrap the bits of code in CONFIG_IRQ_DOMAIN
2. Get rid of the #ifdef CONFIG_OF there, so the 'ops' member can be
   initialized.
3. Fix the OMAP vp code not to oops when voltdm->pmic is NULL

which I have in my combined patch for fixing OMAP so far.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help