All of lore.kernel.org
 help / color / mirror / Atom feed
From: Grant Likely <grant.likely@linaro.org>
To: Tony Lindgren <tony@atomide.com>, Rob Herring <robherring2@gmail.com>
Cc: Russell King <linux@arm.linux.org.uk>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	Jean-Jacques Hiblot <jjhiblot@traphandler.com>,
	thierry.reding@gmail.com, Rob Herring <robh@kernel.org>
Subject: Re: [PATCH 2/2] of/irq: do irq resolution in platform_get_irq
Date: Thu, 24 Apr 2014 17:10:39 +0100	[thread overview]
Message-ID: <20140424161039.CF96CC40921@trevor.secretlab.ca> (raw)
In-Reply-To: <20140423234213.GE6053@atomide.com>

On Wed, 23 Apr 2014 16:42:13 -0700, Tony Lindgren <tony@atomide.com> wrote:
> * Rob Herring <robherring2@gmail.com> [140423 15:58]:
> > From: Rob Herring <robh@kernel.org>
> > 
> > Currently we get the following kind of errors if we try to use interrupt
> > phandles to irqchips that have not yet initialized:
> > 
> > irq: no irq domain found for /ocp/pinmux@48002030 !
> > ------------[ cut here ]------------
> > WARNING: CPU: 0 PID: 1 at drivers/of/platform.c:171 of_device_alloc+0x144/0x184()
> > Modules linked in:
> > CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.12.0-00038-g42a9708 #1012
> > (show_stack+0x14/0x1c)
> > (dump_stack+0x6c/0xa0)
> > (warn_slowpath_common+0x64/0x84)
> > (warn_slowpath_null+0x1c/0x24)
> > (of_device_alloc+0x144/0x184)
> > (of_platform_device_create_pdata+0x44/0x9c)
> > (of_platform_bus_create+0xd0/0x170)
> > (of_platform_bus_create+0x12c/0x170)
> > (of_platform_populate+0x60/0x98)
> > 
> > This is because we're wrongly trying to populate resources that are not
> > yet available. It's perfectly valid to create irqchips dynamically, so
> > let's fix up the issue by resolving the interrupt resources when
> > platform_get_irq is called.
> > 
> > And then we also need to accept the fact that some irqdomains do not
> > exist that early on, and only get initialized later on. So we can
> > make the current WARN_ON into just into a pr_debug().
> > 
> > We still attempt to populate irq resources when we create the devices.
> > This allows current drivers which don't use platform_get_irq to continue
> > to function. Once all drivers are fixed, this code can be removed.
> > 
> > Suggested-by: Russell King <linux@arm.linux.org.uk>
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > Signed-off-by: Tony Lindgren <tony@atomide.com>
> 
> Great, works for me. Hopefully this patch is non-intrusive enough for
> people for the -rc cycle too?

Both patches look good. I've put them in my tree and will push it out
shortly. I want to make sure there are no regressions on PowerPC, so
I'll give it a few days in linux-next before asking Linus to pull.

Tony, how far back does this need to be backported?

g.


WARNING: multiple messages have this Message-ID (diff)
From: grant.likely@linaro.org (Grant Likely)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/2] of/irq: do irq resolution in platform_get_irq
Date: Thu, 24 Apr 2014 17:10:39 +0100	[thread overview]
Message-ID: <20140424161039.CF96CC40921@trevor.secretlab.ca> (raw)
In-Reply-To: <20140423234213.GE6053@atomide.com>

On Wed, 23 Apr 2014 16:42:13 -0700, Tony Lindgren <tony@atomide.com> wrote:
> * Rob Herring <robherring2@gmail.com> [140423 15:58]:
> > From: Rob Herring <robh@kernel.org>
> > 
> > Currently we get the following kind of errors if we try to use interrupt
> > phandles to irqchips that have not yet initialized:
> > 
> > irq: no irq domain found for /ocp/pinmux at 48002030 !
> > ------------[ cut here ]------------
> > WARNING: CPU: 0 PID: 1 at drivers/of/platform.c:171 of_device_alloc+0x144/0x184()
> > Modules linked in:
> > CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.12.0-00038-g42a9708 #1012
> > (show_stack+0x14/0x1c)
> > (dump_stack+0x6c/0xa0)
> > (warn_slowpath_common+0x64/0x84)
> > (warn_slowpath_null+0x1c/0x24)
> > (of_device_alloc+0x144/0x184)
> > (of_platform_device_create_pdata+0x44/0x9c)
> > (of_platform_bus_create+0xd0/0x170)
> > (of_platform_bus_create+0x12c/0x170)
> > (of_platform_populate+0x60/0x98)
> > 
> > This is because we're wrongly trying to populate resources that are not
> > yet available. It's perfectly valid to create irqchips dynamically, so
> > let's fix up the issue by resolving the interrupt resources when
> > platform_get_irq is called.
> > 
> > And then we also need to accept the fact that some irqdomains do not
> > exist that early on, and only get initialized later on. So we can
> > make the current WARN_ON into just into a pr_debug().
> > 
> > We still attempt to populate irq resources when we create the devices.
> > This allows current drivers which don't use platform_get_irq to continue
> > to function. Once all drivers are fixed, this code can be removed.
> > 
> > Suggested-by: Russell King <linux@arm.linux.org.uk>
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > Signed-off-by: Tony Lindgren <tony@atomide.com>
> 
> Great, works for me. Hopefully this patch is non-intrusive enough for
> people for the -rc cycle too?

Both patches look good. I've put them in my tree and will push it out
shortly. I want to make sure there are no regressions on PowerPC, so
I'll give it a few days in linux-next before asking Linus to pull.

Tony, how far back does this need to be backported?

g.

  reply	other threads:[~2014-04-24 16:10 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-23 22:57 [PATCH 0/2] DT irq deferred probe support Rob Herring
2014-04-23 22:57 ` Rob Herring
2014-04-23 22:57 ` Rob Herring
2014-04-23 22:57 ` [PATCH 1/2] of: selftest: add deferred probe interrupt test Rob Herring
2014-04-23 22:57   ` Rob Herring
2014-04-23 22:57 ` [PATCH 2/2] of/irq: do irq resolution in platform_get_irq Rob Herring
2014-04-23 22:57   ` Rob Herring
2014-04-23 22:57   ` Rob Herring
2014-04-23 23:42   ` Tony Lindgren
2014-04-23 23:42     ` Tony Lindgren
2014-04-24 16:10     ` Grant Likely [this message]
2014-04-24 16:10       ` Grant Likely
2014-04-24 17:19       ` Tony Lindgren
2014-04-24 17:19         ` Tony Lindgren
2014-04-24 17:19         ` Tony Lindgren
2014-04-24 18:42   ` Thierry Reding
2014-04-24 18:42     ` Thierry Reding
2014-04-24 18:42     ` Thierry Reding
2014-04-24 20:47     ` Grant Likely
2014-04-24 20:47       ` Grant Likely
2014-04-24 20:47       ` Grant Likely
2014-04-23 23:43 ` [PATCH 0/2] DT irq deferred probe support Tony Lindgren
2014-04-23 23:43   ` Tony Lindgren
2014-04-23 23:43   ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140424161039.CF96CC40921@trevor.secretlab.ca \
    --to=grant.likely@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jjhiblot@traphandler.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=robh@kernel.org \
    --cc=robherring2@gmail.com \
    --cc=thierry.reding@gmail.com \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.