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

From: Kevin Hilman
Date: Mon Jun 02 2014 - 10:49:11 EST


Grygorii Strashko <grygorii.strashko@xxxxxx> 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@xxxxxx>
> 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@xxxxxx>

Tested-by: Kevin Hilman <khilman@xxxxxxxxxx>

Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/