[PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()

Grant Likely grant.likely at linaro.org
Tue Jun 3 02:20:50 PDT 2014


On Mon, 02 Jun 2014 07:48:59 -0700, Kevin Hilman <khilman at linaro.org> wrote:
> Grygorii Strashko <grygorii.strashko at ti.com> writes:
> 
> > Hi All,
> >
> > On 05/28/2014 12:03 PM, Grant Likely wrote:
> 
> [...]
> 
> >> The bisected patch causes platform_get_irq() to always parse the
> >> devicetree to obtain the irq instead of using a precalculated value in
> >> the platform_device. There are two possible scenarios for this problem
> >> that I can think of:
> >> 1) Platform_get_irq() is getting called multiple times (which would
> >> happen on a deferred probe) but the setup code isn't handling it
> >> properly, like trying to request the GPIO more than once
> >> 2) the platform_device was preloaded with an irq number that differs
> >> from what is determined when parsing the tree. This would happen if a
> >> platform_device was created manually.
> >>
> >
> > Could anyone try attached patch? It has to improve situation, but it
> > might not fix all problems (see my previous e-mail).
> 
> I can confirm it makes the STE Snowball boot again on top of next-20150602.
> 
> > From 4a41912dba648c935982274966426fa430fd5aa4 Mon Sep 17 00:00:00 2001
> > From: Grygorii Strashko <grygorii.strashko at ti.com>
> > Date: Wed, 28 May 2014 12:53:34 +0300
> > Subject: [PATCH] mfd: ab8500: fix dt irq mapping
> >
> > The AD8500 defines itself as interrupt-controller in DT,
> > but it doesn't assign DT node to IRQ domain when creates it.
> > As result, of_irq_xx() helpers don't work because they can't
> > find necessary IRQ domain.
> >
> > Hence, fix it by assigning AD8500 core device DT node to IRQ
> > domain when it's created.
> >
> > Signed-off-by: Grygorii Strashko <grygorii.strashko at ti.com>
> 
> Tested-by: Kevin Hilman <khilman at linaro.org>

So is that it, or were there other problems? If it is then you can add
my acked-by when applying.

Acked-by: Grant Likely <grant.likely at linaro.org>




More information about the linux-arm-kernel mailing list