From: jiang.liu@linux.intel.com (Jiang Liu)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] [RFC] Using hierarchy irqdomian to implement MTK intpol.
Date: Thu, 25 Sep 2014 11:04:37 +0800 [thread overview]
Message-ID: <54238645.8090502@linux.intel.com> (raw)
In-Reply-To: <1411611417.21763.56.camel@mtksdaap41>
Hi Joe,
Thanks, I will merge them into my next version.
Regards!
Gerry
On 2014/9/25 10:16, Joe.C wrote:
>
> Jiang,
>
> Please consider merge the following 2 changes into your next round.
>
> On Thu, 2014-09-25 at 00:04 +0800, Joe.C wrote:
>> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
>> index e285f3a..01e852b 100644
>> --- a/kernel/irq/irqdomain.c
>> +++ b/kernel/irq/irqdomain.c
>> @@ -467,7 +467,7 @@ unsigned int irq_create_of_mapping(struct of_phandle_args *irq_data)
>> struct irq_domain *domain;
>> irq_hw_number_t hwirq;
>> unsigned int type = IRQ_TYPE_NONE;
>> - unsigned int virq;
>> + int virq;
>>
>> domain = irq_data->np ? irq_find_host(irq_data->np) : irq_default_domain;
>> if (!domain) {
>> @@ -493,8 +493,8 @@ unsigned int irq_create_of_mapping(struct of_phandle_args *irq_data)
>> else
>> #endif
>> virq = irq_create_mapping(domain, hwirq);
>> - if (!virq)
>> - return virq;
>> + if (virq <= 0)
>> + return 0;
>>
>> /* Set type if specified and different than the current one */
>> if (type != IRQ_TYPE_NONE &&
>
> irq_of_parse_and_map()/of_irq_to_resource() expect
> irq_create_of_mapping() to return 0 when fail. Return error code will
> cause of_irq_to_resource crash.
>
>
>> @@ -716,20 +716,20 @@ const struct irq_domain_ops irq_domain_simple_ops = {
>> };
>> EXPORT_SYMBOL_GPL(irq_domain_simple_ops);
>>
>> -static int irq_domain_alloc_descs(int virq, unsigned int nr_irqs,
>> +static int irq_domain_alloc_descs(int virq, unsigned int cnt,
>> irq_hw_number_t hwirq, int node)
>> {
>> unsigned int hint;
>>
>> if (virq >= 0) {
>> - virq = irq_alloc_descs(virq, virq, nr_irqs, node);
>> + virq = irq_alloc_descs(virq, virq, cnt, node);
>> } else {
>> hint = hwirq % nr_irqs;
>> if (hint == 0)
>> hint++;
>> - virq = irq_alloc_descs_from(hint, nr_irqs, node);
>> + virq = irq_alloc_descs_from(hint, cnt, node);
>> if (virq <= 0 && hint > 1)
>> - virq = irq_alloc_descs_from(1, nr_irqs, node);
>> + virq = irq_alloc_descs_from(1, cnt, node);
>> }
>>
>> return virq;
>
> This come from irq_create_mapping(), the original code is using global
> nr_irqs. Change to match original behavior.
>
> Joe.C
>
>
WARNING: multiple messages have this Message-ID (diff)
From: Jiang Liu <jiang.liu@linux.intel.com>
To: "Joe.C" <srv_yingjoe.chen@mediatek.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>,
Thomas Gleixner <tglx@linutronix.de>,
Mark Rutland <mark.rutland@arm.com>,
Boris BREZILLON <boris.brezillon@free-electrons.com>,
Russell King <linux@arm.linux.org.uk>,
Jason Cooper <jason@lakedaemon.net>,
Pawel Moll <pawel.moll@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
yh.chen@mediatek.com, linux-kernel@vger.kernel.org,
srv_heupstream@mediatek.com, devicetree@vger.kernel.org,
Rob Herring <robh+dt@kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
nathan.chung@mediatek.com, Sascha Hauer <kernel@pengutronix.de>,
Kumar Gala <galak@codeaurora.org>,
Grant Likely <grant.likely@linaro.org>,
eddie.huang@mediatek.com, yingjoe.chen@gmail.com,
linux-arm-kernel@lists.infradead.org, hc.yen@mediatek.com
Subject: Re: [PATCH] [RFC] Using hierarchy irqdomian to implement MTK intpol.
Date: Thu, 25 Sep 2014 11:04:37 +0800 [thread overview]
Message-ID: <54238645.8090502@linux.intel.com> (raw)
In-Reply-To: <1411611417.21763.56.camel@mtksdaap41>
Hi Joe,
Thanks, I will merge them into my next version.
Regards!
Gerry
On 2014/9/25 10:16, Joe.C wrote:
>
> Jiang,
>
> Please consider merge the following 2 changes into your next round.
>
> On Thu, 2014-09-25 at 00:04 +0800, Joe.C wrote:
>> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
>> index e285f3a..01e852b 100644
>> --- a/kernel/irq/irqdomain.c
>> +++ b/kernel/irq/irqdomain.c
>> @@ -467,7 +467,7 @@ unsigned int irq_create_of_mapping(struct of_phandle_args *irq_data)
>> struct irq_domain *domain;
>> irq_hw_number_t hwirq;
>> unsigned int type = IRQ_TYPE_NONE;
>> - unsigned int virq;
>> + int virq;
>>
>> domain = irq_data->np ? irq_find_host(irq_data->np) : irq_default_domain;
>> if (!domain) {
>> @@ -493,8 +493,8 @@ unsigned int irq_create_of_mapping(struct of_phandle_args *irq_data)
>> else
>> #endif
>> virq = irq_create_mapping(domain, hwirq);
>> - if (!virq)
>> - return virq;
>> + if (virq <= 0)
>> + return 0;
>>
>> /* Set type if specified and different than the current one */
>> if (type != IRQ_TYPE_NONE &&
>
> irq_of_parse_and_map()/of_irq_to_resource() expect
> irq_create_of_mapping() to return 0 when fail. Return error code will
> cause of_irq_to_resource crash.
>
>
>> @@ -716,20 +716,20 @@ const struct irq_domain_ops irq_domain_simple_ops = {
>> };
>> EXPORT_SYMBOL_GPL(irq_domain_simple_ops);
>>
>> -static int irq_domain_alloc_descs(int virq, unsigned int nr_irqs,
>> +static int irq_domain_alloc_descs(int virq, unsigned int cnt,
>> irq_hw_number_t hwirq, int node)
>> {
>> unsigned int hint;
>>
>> if (virq >= 0) {
>> - virq = irq_alloc_descs(virq, virq, nr_irqs, node);
>> + virq = irq_alloc_descs(virq, virq, cnt, node);
>> } else {
>> hint = hwirq % nr_irqs;
>> if (hint == 0)
>> hint++;
>> - virq = irq_alloc_descs_from(hint, nr_irqs, node);
>> + virq = irq_alloc_descs_from(hint, cnt, node);
>> if (virq <= 0 && hint > 1)
>> - virq = irq_alloc_descs_from(1, nr_irqs, node);
>> + virq = irq_alloc_descs_from(1, cnt, node);
>> }
>>
>> return virq;
>
> This come from irq_create_mapping(), the original code is using global
> nr_irqs. Change to match original behavior.
>
> Joe.C
>
>
next prev parent reply other threads:[~2014-09-25 3:04 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-24 16:04 [PATCH] [RFC] Using hierarchy irqdomian to implement MTK intpol Joe.C
2014-09-24 16:04 ` Joe.C
2014-09-25 2:16 ` Joe.C
2014-09-25 2:16 ` Joe.C
2014-09-25 3:04 ` Jiang Liu [this message]
2014-09-25 3:04 ` Jiang Liu
2014-09-25 3:17 ` Jason Cooper
2014-09-25 3:17 ` Jason Cooper
2014-09-25 3:17 ` Jason Cooper
2014-09-25 3:37 ` Jiang Liu
2014-09-25 3:37 ` Jiang Liu
2014-09-25 3:12 ` Jiang Liu
2014-09-25 3:12 ` Jiang Liu
2014-09-25 3:12 ` Jiang Liu
2014-09-25 14:27 ` Thomas Gleixner
2014-09-25 14:27 ` Thomas Gleixner
2014-09-25 14:27 ` Thomas Gleixner
2014-09-25 19:20 ` Arnd Bergmann
2014-09-25 19:20 ` Arnd Bergmann
2014-09-25 19:20 ` Arnd Bergmann
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=54238645.8090502@linux.intel.com \
--to=jiang.liu@linux.intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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.