All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robherring2@gmail.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 11/13] ARM: only include mach/irqs.h for !SPARSE_IRQ
Date: Mon, 30 Jan 2012 16:33:04 +0000	[thread overview]
Message-ID: <4F26C640.8050705@gmail.com> (raw)
In-Reply-To: <20120130150132.GJ28397@ponder.secretlab.ca>

On 01/30/2012 09:01 AM, Grant Likely wrote:
> On Wed, Jan 25, 2012 at 01:23:00PM -0600, Rob Herring wrote:
>> On 01/20/2012 04:48 PM, Nicolas Pitre wrote:
>>> On Fri, 20 Jan 2012, Rob Herring wrote:
>>>
>>>> On 01/20/2012 03:11 PM, Nicolas Pitre wrote:
>>>>> On Fri, 20 Jan 2012, Rob Herring wrote:
>>>>>
>>>>>> From: Rob Herring <rob.herring@calxeda.com>
>>>>>>
>>>>>> Make mach/irqs.h optional for SPARSE_IRQ. With this change irqs.h can be
>>>>>> removed by converting platforms over to sparse irq.
>>>>>>
>>>>>> This intentionally breaks platforms that enable SPARSE_IRQ.
>>>>>
>>>>> I don't get what you mean here.  The above seems contradictory.
>>>>>
>>>>
>>>> You're right. The intro explains things more clearly.
>>>
>>> The intro won't be part of the git history, so please make sure 
>>> individual commit logs are sensible on their own.
>>
>> Updated the commit message to this (w/o the email word wrapping):
>>
>> ARM: only include mach/irqs.h for !SPARSE_IRQ
>>
>> Make mach/irqs.h optional for SPARSE_IRQ. With this change irqs.h can be
>> removed by converting platforms over to sparse irq.
>>
>> This may break platforms where SPARSE_IRQ is user selectable and is enabled.
>> This is on purpose so that SPARSE_IRQ gets properly supported. SPARSE_IRQ
>> should not really be a user visible option.
>>
>> Platforms either need to set nr_irqs in their machine desc or all irqchips
>> used by a platform need to allocate their irq_descs. There cannot be a
>> mixture. Once this is done, the platforms can select SPARSE_IRQ. shmobile
>> does the latter, and mmp and pxa do the former.
>>
>>>> This breaks platforms (at boot time) that don't select SPARSE_IRQ, but 
>>>> let users enable it in their config. I don't understand why sparse irq 
>>>> is a user visible config option. We could move HAVE_SPARSE_IRQ down to 
>>>> each platform that selects SPARSE_IRQ and prevent enabling, but I 
>>>> think allowing it to break is good encouragement for others to fix 
>>>> those platforms. I'm open to other ideas.
>>>
>>> SPARSE_IRQ shouldn't be a user configurable option.  There is just no 
>>> point for a user configuring a kernel to be able to change this.
>>
>> I agree, but I'm inclined to leave this alone for now. PPC doesn't ever
>> select SPARSE_IRQ, but enables it via many defconfigs. So I think
>> changing it may cause some problems.
> 
> I think ppc can probably be moved to always enable SPARSE_IRQ since every
> ppc machine goes through irq_domain anyway.

May be so, but only ~80 of ~100 ppc defconfigs enable SPARSE_IRQ. I'll
leave it to someone more familiar with ppc to change it.

I implemented Russell's suggestion:

http://lists.infradead.org/pipermail/linux-arm-kernel/2012-January/081920.html

Rob

WARNING: multiple messages have this Message-ID (diff)
From: robherring2@gmail.com (Rob Herring)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 11/13] ARM: only include mach/irqs.h for !SPARSE_IRQ
Date: Mon, 30 Jan 2012 10:33:04 -0600	[thread overview]
Message-ID: <4F26C640.8050705@gmail.com> (raw)
In-Reply-To: <20120130150132.GJ28397@ponder.secretlab.ca>

On 01/30/2012 09:01 AM, Grant Likely wrote:
> On Wed, Jan 25, 2012 at 01:23:00PM -0600, Rob Herring wrote:
>> On 01/20/2012 04:48 PM, Nicolas Pitre wrote:
>>> On Fri, 20 Jan 2012, Rob Herring wrote:
>>>
>>>> On 01/20/2012 03:11 PM, Nicolas Pitre wrote:
>>>>> On Fri, 20 Jan 2012, Rob Herring wrote:
>>>>>
>>>>>> From: Rob Herring <rob.herring@calxeda.com>
>>>>>>
>>>>>> Make mach/irqs.h optional for SPARSE_IRQ. With this change irqs.h can be
>>>>>> removed by converting platforms over to sparse irq.
>>>>>>
>>>>>> This intentionally breaks platforms that enable SPARSE_IRQ.
>>>>>
>>>>> I don't get what you mean here.  The above seems contradictory.
>>>>>
>>>>
>>>> You're right. The intro explains things more clearly.
>>>
>>> The intro won't be part of the git history, so please make sure 
>>> individual commit logs are sensible on their own.
>>
>> Updated the commit message to this (w/o the email word wrapping):
>>
>> ARM: only include mach/irqs.h for !SPARSE_IRQ
>>
>> Make mach/irqs.h optional for SPARSE_IRQ. With this change irqs.h can be
>> removed by converting platforms over to sparse irq.
>>
>> This may break platforms where SPARSE_IRQ is user selectable and is enabled.
>> This is on purpose so that SPARSE_IRQ gets properly supported. SPARSE_IRQ
>> should not really be a user visible option.
>>
>> Platforms either need to set nr_irqs in their machine desc or all irqchips
>> used by a platform need to allocate their irq_descs. There cannot be a
>> mixture. Once this is done, the platforms can select SPARSE_IRQ. shmobile
>> does the latter, and mmp and pxa do the former.
>>
>>>> This breaks platforms (at boot time) that don't select SPARSE_IRQ, but 
>>>> let users enable it in their config. I don't understand why sparse irq 
>>>> is a user visible config option. We could move HAVE_SPARSE_IRQ down to 
>>>> each platform that selects SPARSE_IRQ and prevent enabling, but I 
>>>> think allowing it to break is good encouragement for others to fix 
>>>> those platforms. I'm open to other ideas.
>>>
>>> SPARSE_IRQ shouldn't be a user configurable option.  There is just no 
>>> point for a user configuring a kernel to be able to change this.
>>
>> I agree, but I'm inclined to leave this alone for now. PPC doesn't ever
>> select SPARSE_IRQ, but enables it via many defconfigs. So I think
>> changing it may cause some problems.
> 
> I think ppc can probably be moved to always enable SPARSE_IRQ since every
> ppc machine goes through irq_domain anyway.

May be so, but only ~80 of ~100 ppc defconfigs enable SPARSE_IRQ. I'll
leave it to someone more familiar with ppc to change it.

I implemented Russell's suggestion:

http://lists.infradead.org/pipermail/linux-arm-kernel/2012-January/081920.html

Rob

  reply	other threads:[~2012-01-30 16:33 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-20 20:32 [PATCH v2 00/13] Make mach/irqs.h optional Rob Herring
2012-01-20 20:32 ` Rob Herring
2012-01-20 20:32 ` [PATCH v2 01/13] sound: pxa2xx-ac97: include mach/irqs.h directly Rob Herring
2012-01-20 20:32   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 02/13] gpio: pxa: explicitly include mach/irqs.h Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 03/13] ARM: remove mc146818rtc.h from time.c Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 04/13] ARM: mc146818rtc: remove unnecessary include of mach/irqs.h Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 05/13] ARM: it8152: explicitly include mach/irqs.h Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 06/13] sh: intc: unify evt2irq/irq2evt macros for sh and arm Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 07/13] sh: intc: remove dependency on NR_IRQS Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 08/13] ARM: mmp: remove NR_IRQS Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 09/13] ARM: pxa: " Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 10/13] ARM: shmobile: " Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 11/13] ARM: only include mach/irqs.h for !SPARSE_IRQ Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 21:11   ` Nicolas Pitre
2012-01-20 21:11     ` Nicolas Pitre
2012-01-20 21:23     ` Rob Herring
2012-01-20 21:23       ` Rob Herring
2012-01-20 22:48       ` Nicolas Pitre
2012-01-20 22:48         ` Nicolas Pitre
2012-01-25 19:23         ` Rob Herring
2012-01-25 19:23           ` Rob Herring
2012-01-30 15:01           ` Grant Likely
2012-01-30 15:01             ` Grant Likely
2012-01-30 16:33             ` Rob Herring [this message]
2012-01-30 16:33               ` Rob Herring
2012-01-25 21:32       ` Russell King - ARM Linux
2012-01-25 21:32         ` Russell King - ARM Linux
2012-01-25 22:32         ` Nicolas Pitre
2012-01-25 22:32           ` Nicolas Pitre
2012-01-25 22:58           ` Marek Vasut
2012-01-25 22:58             ` Marek Vasut
2012-01-30 10:44             ` Cyril Hrubis
2012-01-30 10:44               ` Cyril Hrubis
2012-02-01 10:03               ` Pavel Machek
2012-02-01 10:03                 ` Pavel Machek
2012-01-20 20:33 ` [PATCH v2 12/13] ARM: highbank: select SPARSE_IRQ and remove irqs.h Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-01-20 20:33 ` [PATCH v2 13/13] ARM: picoxcell: remove mach/irqs.h Rob Herring
2012-01-20 20:33   ` Rob Herring
2012-02-16  8:45 ` [PATCH v2 00/13] Make mach/irqs.h optional Russell King - ARM Linux
2012-02-16  8:45   ` Russell King - ARM Linux
2012-02-16  9:05   ` Russell King - ARM Linux
2012-02-16  9:05     ` Russell King - ARM Linux
2012-02-16 13:29     ` Rob Herring
2012-02-16 13:29       ` Rob Herring

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=4F26C640.8050705@gmail.com \
    --to=robherring2@gmail.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.