From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: linux-kernel@vger.kernel.org, Milton Miller <miltonm@bga.com>,
Paul Mundt <lethal@linux-sh.org>,
Thomas Gleixner <tglx@linutronix.de>,
Rob Herring <rob.herring@calxeda.com>
Subject: Re: [PATCH 07/12] irqdomain: Make ops->map hook optional
Date: Sat, 16 Jun 2012 15:59:45 +1000 [thread overview]
Message-ID: <1339826385.9220.222.camel@pasglop> (raw)
In-Reply-To: <1339822897-15840-8-git-send-email-grant.likely@secretlab.ca>
On Fri, 2012-06-15 at 23:01 -0600, Grant Likely wrote:
> There isn't a really compelling reason to force ->map to be populated,
> so allow it to be left unset.
>
> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
> Cc: Paul Mundt <lethal@linux-sh.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Rob Herring <rob.herring@calxeda.com>
> ---
> kernel/irq/irqdomain.c | 14 ++++----------
> 1 file changed, 4 insertions(+), 10 deletions(-)
>
> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> index 00c383b..e88a7b0 100644
> --- a/kernel/irq/irqdomain.c
> +++ b/kernel/irq/irqdomain.c
> @@ -205,7 +205,8 @@ struct irq_domain *irq_domain_add_legacy(struct device_node *of_node,
> * one can then use irq_create_mapping() to
> * explicitly change them
> */
> - ops->map(domain, irq, hwirq);
> + if (ops->map)
> + ops->map(domain, irq, hwirq);
>
> /* Clear norequest flags */
> irq_clear_status_flags(irq, IRQ_NOREQUEST);
> @@ -402,8 +403,8 @@ int irq_domain_associate_many(struct irq_domain *domain, unsigned int irq_base,
>
> irq_data->hwirq = hwirq;
> irq_data->domain = domain;
> - if (domain->ops->map(domain, virq, hwirq)) {
> - pr_debug("irq-%i==>hwirq-0x%lx mapping failed\n", virq, hwirq);
> + if (domain->ops->map && domain->ops->map(domain, virq, hwirq)) {
> + pr_err("irq-%i==>hwirq-0x%lx mapping failed\n", virq, hwirq);
> irq_data->domain = NULL;
> irq_data->hwirq = 0;
> goto err_unmap;
> @@ -783,12 +784,6 @@ static int __init irq_debugfs_init(void)
> __initcall(irq_debugfs_init);
> #endif /* CONFIG_IRQ_DOMAIN_DEBUG */
>
> -static int irq_domain_simple_map(struct irq_domain *d, unsigned int irq,
> - irq_hw_number_t hwirq)
> -{
> - return 0;
> -}
> -
> /**
> * irq_domain_xlate_onecell() - Generic xlate for direct one cell bindings
> *
> @@ -851,7 +846,6 @@ int irq_domain_xlate_onetwocell(struct irq_domain *d,
> EXPORT_SYMBOL_GPL(irq_domain_xlate_onetwocell);
>
> const struct irq_domain_ops irq_domain_simple_ops = {
> - .map = irq_domain_simple_map,
> .xlate = irq_domain_xlate_onetwocell,
> };
> EXPORT_SYMBOL_GPL(irq_domain_simple_ops);
next prev parent reply other threads:[~2012-06-16 6:00 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-16 5:01 [PATCH 00/12] irqdomain cleanup and refactoring Grant Likely
2012-06-16 5:01 ` [PATCH 01/12] irqdomain: Split disassociating code into separate function Grant Likely
2012-06-16 5:57 ` Benjamin Herrenschmidt
2012-06-16 5:01 ` [PATCH 02/12] irqdomain: Always update revmap when setting up a virq Grant Likely
2012-06-16 5:57 ` Benjamin Herrenschmidt
2012-06-16 5:01 ` [PATCH 03/12] irqdomain: Support for static IRQ mapping and association Grant Likely
2012-06-16 5:58 ` Benjamin Herrenschmidt
2012-06-17 22:16 ` Grant Likely
2012-06-16 5:01 ` [PATCH 04/12] irqdomain: Eliminate dedicated radix lookup functions Grant Likely
2012-06-16 5:56 ` Benjamin Herrenschmidt
2012-06-16 6:12 ` Grant Likely
2012-06-17 21:58 ` Grant Likely
2012-06-16 5:01 ` [PATCH 05/12] irqdomain: Fix irq_create_direct_mapping() to test irq_domain type Grant Likely
2012-06-16 5:01 ` [PATCH 06/12] irqdomain: eliminate slow-path revmap lookups Grant Likely
2012-06-16 5:01 ` [PATCH 07/12] irqdomain: Make ops->map hook optional Grant Likely
2012-06-16 5:59 ` Benjamin Herrenschmidt [this message]
2012-06-16 5:01 ` [PATCH 08/12] irqdomain: Replace LEGACY mapping with LINEAR Grant Likely
2012-06-16 6:01 ` Benjamin Herrenschmidt
2012-06-16 6:16 ` Grant Likely
2012-06-18 12:23 ` Mark Brown
2012-06-16 5:01 ` [PATCH 09/12] irqdomain: Reserve IRQs for legacy domain Grant Likely
2012-06-16 5:01 ` [PATCH 10/12] irqdomain: Add debugging message Grant Likely
2012-06-16 6:02 ` Benjamin Herrenschmidt
2012-06-16 5:01 ` [PATCH 11/12] irqdomain: reorganize revmap data Grant Likely
2012-06-16 6:06 ` Benjamin Herrenschmidt
2012-06-16 6:19 ` Grant Likely
2012-06-16 6:20 ` Grant Likely
2012-06-16 5:01 ` [PATCH 12/12] irqdomain: merge linear and tree reverse mappings Grant Likely
2012-06-18 12:28 ` [PATCH 00/12] irqdomain cleanup and refactoring Mark Brown
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=1339826385.9220.222.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=grant.likely@secretlab.ca \
--cc=lethal@linux-sh.org \
--cc=linux-kernel@vger.kernel.org \
--cc=miltonm@bga.com \
--cc=rob.herring@calxeda.com \
--cc=tglx@linutronix.de \
/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