linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Lee Jones <lee.jones@linaro.org>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	Arnd Bergmann <arnd@arndb.de>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org,
	STEricsson_nomadik_linux@list.st.com,
	linus.walleij@stericsson.com,
	Samuel Ortiz <sameo@linux.intel.com>
Subject: Re: [PATCH 5/8] mfd: Provide the PRCMU with its own IRQ domain
Date: Tue, 21 Aug 2012 11:54:14 +0100	[thread overview]
Message-ID: <20120821105413.GD26899@gmail.com> (raw)
In-Reply-To: <20120821095026.GU26991@opensource.wolfsonmicro.com>

On Tue, Aug 21, 2012 at 10:50:27AM +0100, Mark Brown wrote:
> On Tue, Aug 21, 2012 at 09:56:19AM +0100, Lee Jones wrote:
> 
> > Wherever we do this from to be able to obtain the IRQ domain pointer, 
> > which is where I'm currently struggling. Our options are:
> 
> > - If we're only talking MFD here, we can handle this stuff in the MFD
> > core, but we need more information. The IRQ domain subsystem only allows
> > domain look-up via a Device Tree node, so we need to get our hands on
> 
> What makes you say this?  This is just a convenience for finding a
> domain, irqdomains are *completely* indepentant of device tree.

How can you say that? I think you mean _can_ be independent of DT. If
that's what you mean then yes, that's true. All I'm saying is we need
another way to get hold of the domain, because the only way to obtain
it without having direct access is via a device node.
 
> > the domain another way in the case of non-DT enabled devices. Either we
> > add another parameter to mfd_add_device(irq_domain, ...), or we
> > standardise the 'irq_domain' variable name and use:
> >         irq_domain = container_of(parent, struct irq_domain, irq_domain);
> 
> Passing the domain into mfd seems like the obvious solution here - it's
> exactly what we currently do for legacy stuff (where we pass in the irq
> base), ideally what we'd end up with over time is that we could just
> remove the irq_base parameter entirely as everything would in time be
> moved over to using irqdomains.

Right. That's fine (and easy) then. You threw me when you said you wanted
it handled higher-up in the framework, as I didn't see how we could do 
this in the irqdomain itself.
 
> > - I know that you have interest in pushing the functionality into the
> > IRQ domain subsystem, but I'm struggling to see how. It's calling into
> > the IRQ domain where we're seeing issues in the first place, specifically
> > irq_create_mapping(). How about if we passed 'irq_domain' as a parameter
> > when requesting the IRQ? That way we can pass the correct IRQ without
> > worry of conversion. If 'irq_domain' is !NULL the IRQ management subsystem
> > can do the necessary conversions. If 'irq_domain' is NULL it continues to
> > use the requested IRQ as a virq.
> 
> This is totally orthogonal to doing the mapping in the MFD subsystem
> which is the issue here.

Again, I only mentioned this because you said you wanted it to be handled
by the irqdomain.

I'll code up the second suggestion now.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

  reply	other threads:[~2012-08-21 10:54 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-09 15:53 [PATCH 0/8] Changes surrounding IRQs and IRQ domains Lee Jones
2012-08-09 15:53 ` [PATCH 1/8] of/irq: Create stub for of_irq_find_parent when !CONFIG_OF Lee Jones
2012-08-09 16:20   ` Rob Herring
2012-08-09 19:44     ` Lee Jones
2012-08-09 19:53   ` Rob Herring
2012-08-14  8:17   ` Linus Walleij
2012-08-09 15:53 ` [PATCH 2/8] irqdomain: Take interrupt-parent property into account if specified Lee Jones
2012-08-14  8:19   ` Linus Walleij
2012-08-31  9:44     ` Lee Jones
2012-08-31 13:58       ` Rob Herring
2012-08-09 15:53 ` [PATCH 3/8] ARM: ux500: Identify the PRCMU as an interrupt controller Lee Jones
2012-08-14  8:19   ` Linus Walleij
2012-08-09 15:53 ` [PATCH 4/8] ARM: ux500: Force AB8500 to use the GIC as its " Lee Jones
2012-08-14  8:20   ` Linus Walleij
2012-08-09 15:53 ` [PATCH 5/8] mfd: Provide the PRCMU with its own IRQ domain Lee Jones
2012-08-14  8:29   ` Linus Walleij
2012-08-14  9:42     ` Arnd Bergmann
2012-08-14 10:44       ` Linus Walleij
2012-08-20  8:36         ` Lee Jones
2012-08-20 12:10           ` Mark Brown
2012-08-20 12:55             ` Lee Jones
2012-08-20 16:29               ` Mark Brown
2012-08-20 16:49                 ` Lee Jones
2012-08-20 17:51                   ` Mark Brown
2012-08-21  8:56                     ` Lee Jones
2012-08-21  9:50                       ` Mark Brown
2012-08-21 10:54                         ` Lee Jones [this message]
2012-08-21 11:03                           ` Mark Brown
2012-08-21 12:02                             ` Lee Jones
2012-08-21 16:52                               ` Mark Brown
2012-08-22  8:17                                 ` Lee Jones
2012-08-22 11:19                                   ` Mark Brown
2012-08-22 11:55                                     ` Lee Jones
2012-08-22 15:48                                       ` Mark Brown
2012-08-20  9:36     ` Lee Jones
2012-08-20 10:49     ` Lee Jones
2012-08-09 15:53 ` [PATCH 6/8] mfd: Use interrupt-parent as IRQ controller if specified in DT Lee Jones
2012-08-14  8:22   ` Linus Walleij
2012-08-09 15:53 ` [PATCH 7/8] mfd: Use the AB8500's IRQ domain to convert hwirq to virq Lee Jones
2012-08-14  8:25   ` Linus Walleij
2012-09-19  0:00   ` Samuel Ortiz
2012-08-09 15:53 ` [PATCH 8/8] input: ab8500-ponkey: Rely on MFD core to convert IRQs to virtual Lee Jones
2012-08-14  8:31   ` Linus Walleij
2012-08-21  9:23     ` Lee Jones
2012-08-21 16:42       ` Dmitry Torokhov
2012-08-30 13:12         ` Lee Jones
2012-08-30 23:02           ` Dmitry Torokhov
2012-08-30 23:03             ` Dmitry Torokhov
2012-08-31  7:31               ` Lee Jones
2012-08-31 14:50                 ` Dmitry Torokhov

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=20120821105413.GD26899@gmail.com \
    --to=lee.jones@linaro.org \
    --cc=STEricsson_nomadik_linux@list.st.com \
    --cc=arnd@arndb.de \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=linus.walleij@linaro.org \
    --cc=linus.walleij@stericsson.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sameo@linux.intel.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 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).