* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
@ 2014-05-20 10:42 Grygorii Strashko
2014-05-23 8:03 ` Grant Likely
0 siblings, 1 reply; 15+ messages in thread
From: Grygorii Strashko @ 2014-05-20 10:42 UTC (permalink / raw)
To: linux-arm-kernel
The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
"of/irq: do irq resolution in platform_get_irq" from Rob Herring -
moves resolving of the interrupt resources in platform_get_irq().
But this solution isn't complete because platform_get_irq_byname()
need to be modified the same way.
Hence, fix it by adding interrupt resolution code at the
platform_get_irq_byname() function too.
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Rob Herring <robh@kernel.org>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Grant Likely <grant.likely@linaro.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
---
Changes in v1:
- use of_property_match_string() to get IRQ index by name
- minor comments fixed
RFC:
https://lkml.org/lkml/2014/5/19/325
drivers/base/platform.c | 7 +++++--
drivers/of/irq.c | 22 ++++++++++++++++++++++
include/linux/of_irq.h | 5 +++++
3 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index 5b47210..9e9227e 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -131,9 +131,12 @@ EXPORT_SYMBOL_GPL(platform_get_resource_byname);
*/
int platform_get_irq_byname(struct platform_device *dev, const char *name)
{
- struct resource *r = platform_get_resource_byname(dev, IORESOURCE_IRQ,
- name);
+ struct resource *r;
+
+ if (IS_ENABLED(CONFIG_OF_IRQ) && dev->dev.of_node)
+ return of_irq_get_byname(dev->dev.of_node, name);
+ r = platform_get_resource_byname(dev, IORESOURCE_IRQ, name);
return r ? r->start : -ENXIO;
}
EXPORT_SYMBOL_GPL(platform_get_irq_byname);
diff --git a/drivers/of/irq.c b/drivers/of/irq.c
index 5aeb894..3e06a69 100644
--- a/drivers/of/irq.c
+++ b/drivers/of/irq.c
@@ -406,6 +406,28 @@ int of_irq_get(struct device_node *dev, int index)
}
/**
+ * of_irq_get_byname - Decode a node's IRQ and return it as a Linux irq number
+ * @dev: pointer to device tree node
+ * @name: irq name
+ *
+ * Returns Linux irq number on success, or -EPROBE_DEFER if the irq domain
+ * is not yet created, or error code in case of any other failure.
+ */
+int of_irq_get_byname(struct device_node *dev, const char *name)
+{
+ int index;
+
+ if (unlikely(!name))
+ return -EINVAL;
+
+ index = of_property_match_string(dev, "interrupt-names", name);
+ if (index < 0)
+ return index;
+
+ return of_irq_get(dev, index);
+}
+
+/**
* of_irq_count - Count the number of IRQs a node uses
* @dev: pointer to device tree node
*/
diff --git a/include/linux/of_irq.h b/include/linux/of_irq.h
index 6404253..bfec136 100644
--- a/include/linux/of_irq.h
+++ b/include/linux/of_irq.h
@@ -45,6 +45,7 @@ extern void of_irq_init(const struct of_device_id *matches);
#ifdef CONFIG_OF_IRQ
extern int of_irq_count(struct device_node *dev);
extern int of_irq_get(struct device_node *dev, int index);
+extern int of_irq_get_byname(struct device_node *dev, const char *name);
#else
static inline int of_irq_count(struct device_node *dev)
{
@@ -54,6 +55,10 @@ static inline int of_irq_get(struct device_node *dev, int index)
{
return 0;
}
+static inline int of_irq_get_byname(struct device_node *dev, const char *name)
+{
+ return 0;
+}
#endif
#if defined(CONFIG_OF)
--
1.7.9.5
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-20 10:42 [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname() Grygorii Strashko
@ 2014-05-23 8:03 ` Grant Likely
2014-05-27 20:23 ` Kevin Hilman
0 siblings, 1 reply; 15+ messages in thread
From: Grant Likely @ 2014-05-23 8:03 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
> moves resolving of the interrupt resources in platform_get_irq().
> But this solution isn't complete because platform_get_irq_byname()
> need to be modified the same way.
>
> Hence, fix it by adding interrupt resolution code at the
> platform_get_irq_byname() function too.
>
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Tony Lindgren <tony@atomide.com>
> Cc: Grant Likely <grant.likely@linaro.org>
> Cc: Thierry Reding <thierry.reding@gmail.com>
>
> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Applied, Thanks.
g.
> ---
> Changes in v1:
> - use of_property_match_string() to get IRQ index by name
> - minor comments fixed
>
> RFC:
> https://lkml.org/lkml/2014/5/19/325
>
> drivers/base/platform.c | 7 +++++--
> drivers/of/irq.c | 22 ++++++++++++++++++++++
> include/linux/of_irq.h | 5 +++++
> 3 files changed, 32 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/base/platform.c b/drivers/base/platform.c
> index 5b47210..9e9227e 100644
> --- a/drivers/base/platform.c
> +++ b/drivers/base/platform.c
> @@ -131,9 +131,12 @@ EXPORT_SYMBOL_GPL(platform_get_resource_byname);
> */
> int platform_get_irq_byname(struct platform_device *dev, const char *name)
> {
> - struct resource *r = platform_get_resource_byname(dev, IORESOURCE_IRQ,
> - name);
> + struct resource *r;
> +
> + if (IS_ENABLED(CONFIG_OF_IRQ) && dev->dev.of_node)
> + return of_irq_get_byname(dev->dev.of_node, name);
>
> + r = platform_get_resource_byname(dev, IORESOURCE_IRQ, name);
> return r ? r->start : -ENXIO;
> }
> EXPORT_SYMBOL_GPL(platform_get_irq_byname);
> diff --git a/drivers/of/irq.c b/drivers/of/irq.c
> index 5aeb894..3e06a69 100644
> --- a/drivers/of/irq.c
> +++ b/drivers/of/irq.c
> @@ -406,6 +406,28 @@ int of_irq_get(struct device_node *dev, int index)
> }
>
> /**
> + * of_irq_get_byname - Decode a node's IRQ and return it as a Linux irq number
> + * @dev: pointer to device tree node
> + * @name: irq name
> + *
> + * Returns Linux irq number on success, or -EPROBE_DEFER if the irq domain
> + * is not yet created, or error code in case of any other failure.
> + */
> +int of_irq_get_byname(struct device_node *dev, const char *name)
> +{
> + int index;
> +
> + if (unlikely(!name))
> + return -EINVAL;
> +
> + index = of_property_match_string(dev, "interrupt-names", name);
> + if (index < 0)
> + return index;
> +
> + return of_irq_get(dev, index);
> +}
> +
> +/**
> * of_irq_count - Count the number of IRQs a node uses
> * @dev: pointer to device tree node
> */
> diff --git a/include/linux/of_irq.h b/include/linux/of_irq.h
> index 6404253..bfec136 100644
> --- a/include/linux/of_irq.h
> +++ b/include/linux/of_irq.h
> @@ -45,6 +45,7 @@ extern void of_irq_init(const struct of_device_id *matches);
> #ifdef CONFIG_OF_IRQ
> extern int of_irq_count(struct device_node *dev);
> extern int of_irq_get(struct device_node *dev, int index);
> +extern int of_irq_get_byname(struct device_node *dev, const char *name);
> #else
> static inline int of_irq_count(struct device_node *dev)
> {
> @@ -54,6 +55,10 @@ static inline int of_irq_get(struct device_node *dev, int index)
> {
> return 0;
> }
> +static inline int of_irq_get_byname(struct device_node *dev, const char *name)
> +{
> + return 0;
> +}
> #endif
>
> #if defined(CONFIG_OF)
> --
> 1.7.9.5
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-23 8:03 ` Grant Likely
@ 2014-05-27 20:23 ` Kevin Hilman
2014-05-28 0:37 ` Rob Herring
0 siblings, 1 reply; 15+ messages in thread
From: Kevin Hilman @ 2014-05-27 20:23 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>> moves resolving of the interrupt resources in platform_get_irq().
>> But this solution isn't complete because platform_get_irq_byname()
>> need to be modified the same way.
>>
>> Hence, fix it by adding interrupt resolution code at the
>> platform_get_irq_byname() function too.
>>
>> Cc: Russell King <linux@arm.linux.org.uk>
>> Cc: Rob Herring <robh@kernel.org>
>> Cc: Tony Lindgren <tony@atomide.com>
>> Cc: Grant Likely <grant.likely@linaro.org>
>> Cc: Thierry Reding <thierry.reding@gmail.com>
>>
>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>
> Applied, Thanks.
As of next-20150526, the ST u8500 Snowball board has been failing boot
in linux-next, and was bisected down to this patch (commit
ad69674e73a1 in -next). Full boot failure attached.
I have not dug any deeper, but can confirm that next-20140526 with
this patch reverted boots again on the snowball board.
Kevin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: boot-ste-snowball.log
Type: text/x-log
Size: 41500 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140527/c1b80b03/attachment-0001.bin>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-27 20:23 ` Kevin Hilman
@ 2014-05-28 0:37 ` Rob Herring
2014-05-28 7:18 ` Lee Jones
` (2 more replies)
0 siblings, 3 replies; 15+ messages in thread
From: Rob Herring @ 2014-05-28 0:37 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
> On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
>> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>>> moves resolving of the interrupt resources in platform_get_irq().
>>> But this solution isn't complete because platform_get_irq_byname()
>>> need to be modified the same way.
>>>
>>> Hence, fix it by adding interrupt resolution code at the
>>> platform_get_irq_byname() function too.
>>>
>>> Cc: Russell King <linux@arm.linux.org.uk>
>>> Cc: Rob Herring <robh@kernel.org>
>>> Cc: Tony Lindgren <tony@atomide.com>
>>> Cc: Grant Likely <grant.likely@linaro.org>
>>> Cc: Thierry Reding <thierry.reding@gmail.com>
>>>
>>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>>
>> Applied, Thanks.
>
> As of next-20150526, the ST u8500 Snowball board has been failing boot
> in linux-next, and was bisected down to this patch (commit
> ad69674e73a1 in -next). Full boot failure attached.
>
> I have not dug any deeper, but can confirm that next-20140526 with
> this patch reverted boots again on the snowball board.
There's a patch on the list which fixes it. The problem is stmmac
driver was expecting only one error code.
Rob
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 0:37 ` Rob Herring
@ 2014-05-28 7:18 ` Lee Jones
2014-05-28 8:25 ` Linus Walleij
2014-05-28 8:39 ` Grant Likely
2014-05-28 9:49 ` Grygorii Strashko
2 siblings, 1 reply; 15+ messages in thread
From: Lee Jones @ 2014-05-28 7:18 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, 27 May 2014, Rob Herring wrote:
> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
> > On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
> >> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
> >>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
> >>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
> >>> moves resolving of the interrupt resources in platform_get_irq().
> >>> But this solution isn't complete because platform_get_irq_byname()
> >>> need to be modified the same way.
> >>>
> >>> Hence, fix it by adding interrupt resolution code at the
> >>> platform_get_irq_byname() function too.
> >>>
> >>> Cc: Russell King <linux@arm.linux.org.uk>
> >>> Cc: Rob Herring <robh@kernel.org>
> >>> Cc: Tony Lindgren <tony@atomide.com>
> >>> Cc: Grant Likely <grant.likely@linaro.org>
> >>> Cc: Thierry Reding <thierry.reding@gmail.com>
> >>>
> >>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
> >>
> >> Applied, Thanks.
> >
> > As of next-20150526, the ST u8500 Snowball board has been failing boot
> > in linux-next, and was bisected down to this patch (commit
> > ad69674e73a1 in -next). Full boot failure attached.
> >
> > I have not dug any deeper, but can confirm that next-20140526 with
> > this patch reverted boots again on the snowball board.
>
> There's a patch on the list which fixes it. The problem is stmmac
> driver was expecting only one error code.
Does Snowball even use stmmac?
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 7:18 ` Lee Jones
@ 2014-05-28 8:25 ` Linus Walleij
2014-05-28 8:49 ` Chen-Yu Tsai
0 siblings, 1 reply; 15+ messages in thread
From: Linus Walleij @ 2014-05-28 8:25 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, May 28, 2014 at 9:18 AM, Lee Jones <lee.jones@linaro.org> wrote:
> On Tue, 27 May 2014, Rob Herring wrote:
>
>> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
>> > On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
>> >> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>> >>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>> >>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>> >>> moves resolving of the interrupt resources in platform_get_irq().
>> >>> But this solution isn't complete because platform_get_irq_byname()
>> >>> need to be modified the same way.
>> >>>
>> >>> Hence, fix it by adding interrupt resolution code at the
>> >>> platform_get_irq_byname() function too.
>> >>>
>> >>> Cc: Russell King <linux@arm.linux.org.uk>
>> >>> Cc: Rob Herring <robh@kernel.org>
>> >>> Cc: Tony Lindgren <tony@atomide.com>
>> >>> Cc: Grant Likely <grant.likely@linaro.org>
>> >>> Cc: Thierry Reding <thierry.reding@gmail.com>
>> >>>
>> >>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>> >>
>> >> Applied, Thanks.
>> >
>> > As of next-20150526, the ST u8500 Snowball board has been failing boot
>> > in linux-next, and was bisected down to this patch (commit
>> > ad69674e73a1 in -next). Full boot failure attached.
>> >
>> > I have not dug any deeper, but can confirm that next-20140526 with
>> > this patch reverted boots again on the snowball board.
>>
>> There's a patch on the list which fixes it. The problem is stmmac
>> driver was expecting only one error code.
>
> Does Snowball even use stmmac?
No.
I don't get this...
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 0:37 ` Rob Herring
2014-05-28 7:18 ` Lee Jones
@ 2014-05-28 8:39 ` Grant Likely
2014-05-28 9:49 ` Grygorii Strashko
2 siblings, 0 replies; 15+ messages in thread
From: Grant Likely @ 2014-05-28 8:39 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, 27 May 2014 19:37:00 -0500, Rob Herring <robh@kernel.org> wrote:
> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
> > On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
> >> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
> >>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
> >>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
> >>> moves resolving of the interrupt resources in platform_get_irq().
> >>> But this solution isn't complete because platform_get_irq_byname()
> >>> need to be modified the same way.
> >>>
> >>> Hence, fix it by adding interrupt resolution code at the
> >>> platform_get_irq_byname() function too.
> >>>
> >>> Cc: Russell King <linux@arm.linux.org.uk>
> >>> Cc: Rob Herring <robh@kernel.org>
> >>> Cc: Tony Lindgren <tony@atomide.com>
> >>> Cc: Grant Likely <grant.likely@linaro.org>
> >>> Cc: Thierry Reding <thierry.reding@gmail.com>
> >>>
> >>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
> >>
> >> Applied, Thanks.
> >
> > As of next-20150526, the ST u8500 Snowball board has been failing boot
> > in linux-next, and was bisected down to this patch (commit
> > ad69674e73a1 in -next). Full boot failure attached.
> >
> > I have not dug any deeper, but can confirm that next-20140526 with
> > this patch reverted boots again on the snowball board.
>
> There's a patch on the list which fixes it. The problem is stmmac
> driver was expecting only one error code.
Can you send me a link to this patch? I cannot find it in my inbox.
g.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 8:25 ` Linus Walleij
@ 2014-05-28 8:49 ` Chen-Yu Tsai
2014-05-28 9:03 ` Grant Likely
2014-06-11 14:04 ` Linus Walleij
0 siblings, 2 replies; 15+ messages in thread
From: Chen-Yu Tsai @ 2014-05-28 8:49 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, May 28, 2014 at 4:25 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Wed, May 28, 2014 at 9:18 AM, Lee Jones <lee.jones@linaro.org> wrote:
>> On Tue, 27 May 2014, Rob Herring wrote:
>>
>>> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
>>> > On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
>>> >> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>>> >>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>>> >>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>>> >>> moves resolving of the interrupt resources in platform_get_irq().
>>> >>> But this solution isn't complete because platform_get_irq_byname()
>>> >>> need to be modified the same way.
>>> >>>
>>> >>> Hence, fix it by adding interrupt resolution code at the
>>> >>> platform_get_irq_byname() function too.
>>> >>>
>>> >>> Cc: Russell King <linux@arm.linux.org.uk>
>>> >>> Cc: Rob Herring <robh@kernel.org>
>>> >>> Cc: Tony Lindgren <tony@atomide.com>
>>> >>> Cc: Grant Likely <grant.likely@linaro.org>
>>> >>> Cc: Thierry Reding <thierry.reding@gmail.com>
>>> >>>
>>> >>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>>> >>
>>> >> Applied, Thanks.
>>> >
>>> > As of next-20150526, the ST u8500 Snowball board has been failing boot
>>> > in linux-next, and was bisected down to this patch (commit
>>> > ad69674e73a1 in -next). Full boot failure attached.
>>> >
>>> > I have not dug any deeper, but can confirm that next-20140526 with
>>> > this patch reverted boots again on the snowball board.
>>>
>>> There's a patch on the list which fixes it. The problem is stmmac
>>> driver was expecting only one error code.
>>
>> Does Snowball even use stmmac?
>
> No.
>
> I don't get this...
Log says musb is wrestling control over some pins with some other driver:
[ 1.441497] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
[ 1.453369] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
status -22
[ 1.460571] pinctrl-nomadik soc:pinctrl: could not request pin 256
(GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
[ 1.472076] musb-hdrc musb-hdrc.0.auto: Error applying setting,
reverse things back
[ 1.479827] HS USB OTG: no transceiver configured
[ 1.484558] musb-hdrc musb-hdrc.0.auto: musb_init_controller failed
with status -517
[ 1.492309] platform musb-hdrc.0.auto: Driver musb-hdrc requests
probe deferral
[ 1.500183] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
[ 1.512023] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
status -22
[ 1.519226] pinctrl-nomadik soc:pinctrl: could not request pin 256
(GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
[ 1.530731] musb-ux500 musb-hdrc.0.auto: Error applying setting,
reverse things back
[ 1.539184] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
requested by a03e0000.usb_per5; cannot claim for musb-hdrc.1.auto
[ 1.551025] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.1.auto)
status -22
[ 1.558258] pinctrl-nomadik soc:pinctrl: could not request pin 256
(GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
[ 1.569732] musb-hdrc musb-hdrc.1.auto: Error applying setting,
reverse things back
[ 1.577453] HS USB OTG: no transceiver configured
[ .. repeats until the end .. ]
I think this is not related to this patch.
ChenYu
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 8:49 ` Chen-Yu Tsai
@ 2014-05-28 9:03 ` Grant Likely
2014-05-28 10:07 ` Grygorii Strashko
2014-06-11 14:04 ` Linus Walleij
1 sibling, 1 reply; 15+ messages in thread
From: Grant Likely @ 2014-05-28 9:03 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, May 28, 2014 at 9:49 AM, Chen-Yu Tsai <wens@csie.org> wrote:
> On Wed, May 28, 2014 at 4:25 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
>> On Wed, May 28, 2014 at 9:18 AM, Lee Jones <lee.jones@linaro.org> wrote:
>>> On Tue, 27 May 2014, Rob Herring wrote:
>>>
>>>> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
>>>> > On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
>>>> >> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>>>> >>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>>>> >>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>>>> >>> moves resolving of the interrupt resources in platform_get_irq().
>>>> >>> But this solution isn't complete because platform_get_irq_byname()
>>>> >>> need to be modified the same way.
>>>> >>>
>>>> >>> Hence, fix it by adding interrupt resolution code at the
>>>> >>> platform_get_irq_byname() function too.
>>>> >>>
>>>> >>> Cc: Russell King <linux@arm.linux.org.uk>
>>>> >>> Cc: Rob Herring <robh@kernel.org>
>>>> >>> Cc: Tony Lindgren <tony@atomide.com>
>>>> >>> Cc: Grant Likely <grant.likely@linaro.org>
>>>> >>> Cc: Thierry Reding <thierry.reding@gmail.com>
>>>> >>>
>>>> >>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>>>> >>
>>>> >> Applied, Thanks.
>>>> >
>>>> > As of next-20150526, the ST u8500 Snowball board has been failing boot
>>>> > in linux-next, and was bisected down to this patch (commit
>>>> > ad69674e73a1 in -next). Full boot failure attached.
>>>> >
>>>> > I have not dug any deeper, but can confirm that next-20140526 with
>>>> > this patch reverted boots again on the snowball board.
>>>>
>>>> There's a patch on the list which fixes it. The problem is stmmac
>>>> driver was expecting only one error code.
>>>
>>> Does Snowball even use stmmac?
>>
>> No.
>>
>> I don't get this...
>
> Log says musb is wrestling control over some pins with some other driver:
>
> [ 1.441497] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
> [ 1.453369] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
> status -22
> [ 1.460571] pinctrl-nomadik soc:pinctrl: could not request pin 256
> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
> [ 1.472076] musb-hdrc musb-hdrc.0.auto: Error applying setting,
> reverse things back
> [ 1.479827] HS USB OTG: no transceiver configured
> [ 1.484558] musb-hdrc musb-hdrc.0.auto: musb_init_controller failed
> with status -517
> [ 1.492309] platform musb-hdrc.0.auto: Driver musb-hdrc requests
> probe deferral
> [ 1.500183] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
> [ 1.512023] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
> status -22
> [ 1.519226] pinctrl-nomadik soc:pinctrl: could not request pin 256
> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
> [ 1.530731] musb-ux500 musb-hdrc.0.auto: Error applying setting,
> reverse things back
> [ 1.539184] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.1.auto
> [ 1.551025] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.1.auto)
> status -22
> [ 1.558258] pinctrl-nomadik soc:pinctrl: could not request pin 256
> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
> [ 1.569732] musb-hdrc musb-hdrc.1.auto: Error applying setting,
> reverse things back
> [ 1.577453] HS USB OTG: no transceiver configured
>
> [ .. repeats until the end .. ]
>
> I think this is not related to this patch.
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.
g.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 0:37 ` Rob Herring
2014-05-28 7:18 ` Lee Jones
2014-05-28 8:39 ` Grant Likely
@ 2014-05-28 9:49 ` Grygorii Strashko
2 siblings, 0 replies; 15+ messages in thread
From: Grygorii Strashko @ 2014-05-28 9:49 UTC (permalink / raw)
To: linux-arm-kernel
Hi All,
On 05/28/2014 03:37 AM, Rob Herring wrote:
> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
>> On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
>>> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>>>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>>>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>>>> moves resolving of the interrupt resources in platform_get_irq().
>>>> But this solution isn't complete because platform_get_irq_byname()
>>>> need to be modified the same way.
>>>>
>>>> Hence, fix it by adding interrupt resolution code at the
>>>> platform_get_irq_byname() function too.
>>>>
>>>> Cc: Russell King <linux@arm.linux.org.uk>
>>>> Cc: Rob Herring <robh@kernel.org>
>>>> Cc: Tony Lindgren <tony@atomide.com>
>>>> Cc: Grant Likely <grant.likely@linaro.org>
>>>> Cc: Thierry Reding <thierry.reding@gmail.com>
>>>>
>>>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>>>
>>> Applied, Thanks.
>>
>> As of next-20150526, the ST u8500 Snowball board has been failing boot
>> in linux-next, and was bisected down to this patch (commit
>> ad69674e73a1 in -next). Full boot failure attached.
>>
>> I have not dug any deeper, but can confirm that next-20140526 with
>> this patch reverted boots again on the snowball board.
>
> There's a patch on the list which fixes it. The problem is stmmac
> driver was expecting only one error code.
>
Seems root cause of problem is hidden inside MFD ab8500-core.c :(
And it's related to simulations supporting of DT and non-DT devices.
For example:
----- Log file contains lines
[ 0.919677] ab8500-debug ab8500-debug.0: First irq not found, err -22
[ 0.926147] ab8500-debug: probe of ab8500-debug.0 failed with error -22
DT definition of ab8500-debug is specified as following (ste-dbx5x0.dtsi):
ab8500-debugfs {
compatible = "stericsson,ab8500-debug";
};
In code ab8500-debug is created using mfd_add_devices() API which fills
device's resources manually, but, in same time, It links ab8500-debug device
to DT node because MFD cell has of_compatible property set to:
.of_compatible = "stericsson,ab8500-debug",
Problem: both new versions of APIs platform_get_irq_byname() and
platform_get_irq() will fail to get IRQ.
Another problem is:
[ 1.038909] abx5x0-usb ab8500-usb.0: Link status irq not found
- looking on it now - it should work
Best regards,
-grygorii
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 9:03 ` Grant Likely
@ 2014-05-28 10:07 ` Grygorii Strashko
2014-06-02 14:48 ` Kevin Hilman
0 siblings, 1 reply; 15+ messages in thread
From: Grygorii Strashko @ 2014-05-28 10:07 UTC (permalink / raw)
To: linux-arm-kernel
Hi All,
On 05/28/2014 12:03 PM, Grant Likely wrote:
> On Wed, May 28, 2014 at 9:49 AM, Chen-Yu Tsai <wens@csie.org> wrote:
>> On Wed, May 28, 2014 at 4:25 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
>>> On Wed, May 28, 2014 at 9:18 AM, Lee Jones <lee.jones@linaro.org> wrote:
>>>> On Tue, 27 May 2014, Rob Herring wrote:
>>>>
>>>>> On Tue, May 27, 2014 at 3:23 PM, Kevin Hilman <khilman@linaro.org> wrote:
>>>>>> On Fri, May 23, 2014 at 1:03 AM, Grant Likely <grant.likely@linaro.org> wrote:
>>>>>>> On Tue, 20 May 2014 13:42:02 +0300, Grygorii Strashko <grygorii.strashko@ti.com> wrote:
>>>>>>>> The commit 9ec36cafe43bf835f8f29273597a5b0cbc8267ef
>>>>>>>> "of/irq: do irq resolution in platform_get_irq" from Rob Herring -
>>>>>>>> moves resolving of the interrupt resources in platform_get_irq().
>>>>>>>> But this solution isn't complete because platform_get_irq_byname()
>>>>>>>> need to be modified the same way.
>>>>>>>>
>>>>>>>> Hence, fix it by adding interrupt resolution code at the
>>>>>>>> platform_get_irq_byname() function too.
>>>>>>>>
>>>>>>>> Cc: Russell King <linux@arm.linux.org.uk>
>>>>>>>> Cc: Rob Herring <robh@kernel.org>
>>>>>>>> Cc: Tony Lindgren <tony@atomide.com>
>>>>>>>> Cc: Grant Likely <grant.likely@linaro.org>
>>>>>>>> Cc: Thierry Reding <thierry.reding@gmail.com>
>>>>>>>>
>>>>>>>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
>>>>>>>
>>>>>>> Applied, Thanks.
>>>>>>
>>>>>> As of next-20150526, the ST u8500 Snowball board has been failing boot
>>>>>> in linux-next, and was bisected down to this patch (commit
>>>>>> ad69674e73a1 in -next). Full boot failure attached.
>>>>>>
>>>>>> I have not dug any deeper, but can confirm that next-20140526 with
>>>>>> this patch reverted boots again on the snowball board.
>>>>>
>>>>> There's a patch on the list which fixes it. The problem is stmmac
>>>>> driver was expecting only one error code.
>>>>
>>>> Does Snowball even use stmmac?
>>>
>>> No.
>>>
>>> I don't get this...
>>
>> Log says musb is wrestling control over some pins with some other driver:
>>
>> [ 1.441497] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
>> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
>> [ 1.453369] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
>> status -22
>> [ 1.460571] pinctrl-nomadik soc:pinctrl: could not request pin 256
>> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
>> [ 1.472076] musb-hdrc musb-hdrc.0.auto: Error applying setting,
>> reverse things back
>> [ 1.479827] HS USB OTG: no transceiver configured
>> [ 1.484558] musb-hdrc musb-hdrc.0.auto: musb_init_controller failed
>> with status -517
>> [ 1.492309] platform musb-hdrc.0.auto: Driver musb-hdrc requests
>> probe deferral
>> [ 1.500183] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
>> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
>> [ 1.512023] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
>> status -22
>> [ 1.519226] pinctrl-nomadik soc:pinctrl: could not request pin 256
>> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
>> [ 1.530731] musb-ux500 musb-hdrc.0.auto: Error applying setting,
>> reverse things back
>> [ 1.539184] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
>> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.1.auto
>> [ 1.551025] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.1.auto)
>> status -22
>> [ 1.558258] pinctrl-nomadik soc:pinctrl: could not request pin 256
>> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
>> [ 1.569732] musb-hdrc musb-hdrc.1.auto: Error applying setting,
>> reverse things back
>> [ 1.577453] HS USB OTG: no transceiver configured
>>
>> [ .. repeats until the end .. ]
>>
>> I think this is not related to this patch.
>
> 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).
Regards,
-grygorii
--
From 4a41912dba648c935982274966426fa430fd5aa4 Mon Sep 17 00:00:00 2001
From: Grygorii Strashko <grygorii.strashko@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@ti.com>
---
drivers/mfd/ab8500-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/mfd/ab8500-core.c b/drivers/mfd/ab8500-core.c
index a8ee4a3..cf2e6a1 100644
--- a/drivers/mfd/ab8500-core.c
+++ b/drivers/mfd/ab8500-core.c
@@ -591,7 +591,7 @@ static int ab8500_irq_init(struct ab8500 *ab8500,
struct device_node *np)
num_irqs = AB8500_NR_IRQS;
/* If ->irq_base is zero this will give a linear mapping */
- ab8500->domain = irq_domain_add_simple(NULL,
+ ab8500->domain = irq_domain_add_simple(ab8500->dev->of_node,
num_irqs, 0,
&ab8500_irq_ops, ab8500);
--
1.7.9.5
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 10:07 ` Grygorii Strashko
@ 2014-06-02 14:48 ` Kevin Hilman
2014-06-03 9:20 ` Grant Likely
0 siblings, 1 reply; 15+ messages in thread
From: Kevin Hilman @ 2014-06-02 14:48 UTC (permalink / raw)
To: linux-arm-kernel
Grygorii Strashko <grygorii.strashko@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@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@ti.com>
Tested-by: Kevin Hilman <khilman@linaro.org>
Kevin
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-06-02 14:48 ` Kevin Hilman
@ 2014-06-03 9:20 ` Grant Likely
2014-06-03 11:12 ` Grygorii Strashko
0 siblings, 1 reply; 15+ messages in thread
From: Grant Likely @ 2014-06-03 9:20 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, 02 Jun 2014 07:48:59 -0700, Kevin Hilman <khilman@linaro.org> wrote:
> Grygorii Strashko <grygorii.strashko@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@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@ti.com>
>
> Tested-by: Kevin Hilman <khilman@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@linaro.org>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-06-03 9:20 ` Grant Likely
@ 2014-06-03 11:12 ` Grygorii Strashko
0 siblings, 0 replies; 15+ messages in thread
From: Grygorii Strashko @ 2014-06-03 11:12 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On 06/03/2014 12:20 PM, Grant Likely wrote:
> On Mon, 02 Jun 2014 07:48:59 -0700, Kevin Hilman <khilman@linaro.org> wrote:
>> Grygorii Strashko <grygorii.strashko@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@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@ti.com>
>>
>> Tested-by: Kevin Hilman <khilman@linaro.org>
Thanks for testing it.
>
> So is that it, or were there other problems? If it is then you can add
This is minimal solution and some sub-devices of ab8500 MFD may still
not work.
For example, ab8500-debugfs may not work (ste-dbx5x0.dtsi):
ab8500-debugfs {
compatible = "stericsson,ab8500-debug";
};
and its DT definition may need to be updated to explicitly define IRQs,
smth like this:
ab8500-debugfs {
compatible = "stericsson,ab8500-debug";
interrupts = <0 IRQ_TYPE_LEVEL_HIGH
111 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "IRQ_FIRST", "IRQ_LAST";
};
> my acked-by when applying.
>
> Acked-by: Grant Likely <grant.likely@linaro.org>
>
I've reposted this patch already:
https://lkml.org/lkml/2014/6/2/379
Regards,
-grygorii
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname()
2014-05-28 8:49 ` Chen-Yu Tsai
2014-05-28 9:03 ` Grant Likely
@ 2014-06-11 14:04 ` Linus Walleij
1 sibling, 0 replies; 15+ messages in thread
From: Linus Walleij @ 2014-06-11 14:04 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, May 28, 2014 at 10:49 AM, Chen-Yu Tsai <wens@csie.org> wrote:
> Log says musb is wrestling control over some pins with some other driver:
>
> [ 1.441497] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
> [ 1.453369] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
> status -22
> [ 1.460571] pinctrl-nomadik soc:pinctrl: could not request pin 256
> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
> [ 1.472076] musb-hdrc musb-hdrc.0.auto: Error applying setting,
> reverse things back
> [ 1.479827] HS USB OTG: no transceiver configured
> [ 1.484558] musb-hdrc musb-hdrc.0.auto: musb_init_controller failed
> with status -517
> [ 1.492309] platform musb-hdrc.0.auto: Driver musb-hdrc requests
> probe deferral
> [ 1.500183] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.0.auto
> [ 1.512023] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.0.auto)
> status -22
> [ 1.519226] pinctrl-nomadik soc:pinctrl: could not request pin 256
> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
> [ 1.530731] musb-ux500 musb-hdrc.0.auto: Error applying setting,
> reverse things back
> [ 1.539184] pinctrl-nomadik soc:pinctrl: pin GPIO256_AF28 already
> requested by a03e0000.usb_per5; cannot claim for musb-hdrc.1.auto
> [ 1.551025] pinctrl-nomadik soc:pinctrl: pin-256 (musb-hdrc.1.auto)
> status -22
> [ 1.558258] pinctrl-nomadik soc:pinctrl: could not request pin 256
> (GPIO256_AF28) from group usb_a_1 on device pinctrl-nomadik
> [ 1.569732] musb-hdrc musb-hdrc.1.auto: Error applying setting,
> reverse things back
> [ 1.577453] HS USB OTG: no transceiver configured
>
> [ .. repeats until the end .. ]
>
> I think this is not related to this patch.
No that is fixed i this patch:
http://marc.info/?l=linux-usb&m=140239049219096&w=2
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2014-06-11 14:04 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-20 10:42 [PATCH v1] of/irq: do irq resolution in platform_get_irq_byname() Grygorii Strashko
2014-05-23 8:03 ` Grant Likely
2014-05-27 20:23 ` Kevin Hilman
2014-05-28 0:37 ` Rob Herring
2014-05-28 7:18 ` Lee Jones
2014-05-28 8:25 ` Linus Walleij
2014-05-28 8:49 ` Chen-Yu Tsai
2014-05-28 9:03 ` Grant Likely
2014-05-28 10:07 ` Grygorii Strashko
2014-06-02 14:48 ` Kevin Hilman
2014-06-03 9:20 ` Grant Likely
2014-06-03 11:12 ` Grygorii Strashko
2014-06-11 14:04 ` Linus Walleij
2014-05-28 8:39 ` Grant Likely
2014-05-28 9:49 ` Grygorii Strashko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).