RFC v2 irq_domain rework posted to linux-kernel. (Was: [RFCv2 00/14])
From: Grant Likely
Date: Mon Jan 23 2012 - 17:08:37 EST
On Mon, Jan 23, 2012 at 2:53 PM, Rob Herring <robherring2@xxxxxxxxx> wrote:
> On 01/23/2012 03:07 PM, Grant Likely wrote:
>>
>> Hey everyone,
>>
>> Here's the second RFC for the irq_domain patches. I could use some
>> help testing now. I still expect there will be a few bugs. The
>> series is based on v3.3-rc1, and I've pushed it out to my git server:
>>
>> git://git.secretlab.ca/git/linux-2.6.git irqdomain/next
>
> Can you post to linux-arm-kernel too so people are aware of this work
> and stop posting dead-end irqdomain patches.
Oops, I had intended to do so. Apparently I forgot to set the subject
line of the cover letter too. :-( I don't want to irritate folks
with an immediate repost of the whole series, but I'm cc'ing the
linux-arm-kernel list on this email. I'll repost a v3 and include
linux-arm-kernel before I ask Stephen to pull this stuff into
linux-next.
For anyone who is doing irq_domain work, please be aware of these
patches that are probably going to be merged for v3.4. You'll need to
coordinate with me before your patches hit linux-next, otherwise you
will have a build failure. The patches can be found here:
http://thread.gmane.org/gmane.linux.kernel/1242692
g.
>
> I tested what you had as of this morning and it works fine for me. Looks
> like the only diff is the VExpress code. I'm working on rebasing my
> domain support for generic irqchip now.
>
> Rob
>
>> On Wed, Jan 11, 2012 at 1:22 PM, Grant Likely <grant.likely@xxxxxxxxxxxx> wrote:
>>> Here are the patches that I've been working on to finish up the creation
>>> of the generic irq_domain infrastructure.
>>>
>>> I'm taking a different approach that I originally intended.
>>> Originally I intended to start with the basic design of irq_host from
>>> powerpc, but there were some things about the implementation that I
>>> didn't like, so I was going to reimplement those bits and then migrate
>>> powerpc over to use it. That was a mistake and would have resulted in
>>> a lot more work. Instead, I should have started with the powerpc
>>> irq_host code, moved it to a common location, and then reworked it in
>>> place. The powerpc code is working and well tested. It is a lot less
>>> risky to use it as the starting point with a nicely bisectable series
>>> of changes to make it do what other architectures need.
>>
>> [RFCv2 01/14] irq_domain: add documentation and MAINTAINERS entry.
>> [RFCv2 02/14] dt: Make irqdomain less verbose
>> [RFCv2 03/14] irq_domain: Make irq_domain structure match powerpc's
>> [RFCv2 04/14] irq_domain: convert microblaze from irq_host to
>> [RFCv2 05/14] irq_domain/powerpc: Use common irq_domain structure
>> [RFCv2 06/14] irq_domain/powerpc: eliminate irq_map; use
>> [RFCv2 07/14] irq_domain/powerpc: Eliminate virq_is_host()
>> [RFCv2 08/14] irq_domain: Move irq_domain code from powerpc to
>> [RFCv2 09/14] irqdomain: remove NO_IRQ from irq domain code
>> [RFCv2 10/14] irq_domain: Remove references to old irq_host names
>> [RFCv2 11/14] irq_domain: Replace irq_alloc_host() with
>> [RFCv2 12/14] irq_domain: Add support for base irq and hwirq in
>> [RFCv2 13/14] irq_domain: Remove 'new' irq_domain in favour of the
>> [RFCv2 14/14] irq_domain: Remove irq_domain_add_simple()
>>
>> Documentation/IRQ-domain.txt | 113 ++++
>> MAINTAINERS | 9 +
>> arch/arm/common/gic.c | 97 ++--
>> arch/arm/common/vic.c | 16 +-
>> arch/arm/include/asm/hardware/gic.h | 4 +-
>> arch/arm/include/asm/hardware/vic.h | 2 +
>> arch/arm/mach-exynos/common.c | 2 +-
>> arch/arm/mach-imx/mach-imx6q.c | 3 +-
>> arch/arm/mach-msm/board-msm8x60.c | 8 +-
>> arch/arm/mach-mx5/imx51-dt.c | 4 +-
>> arch/arm/mach-mx5/imx53-dt.c | 4 +-
>> arch/arm/mach-omap2/board-generic.c | 2 +-
>> arch/arm/mach-prima2/irq.c | 2 +-
>> arch/arm/mach-versatile/core.c | 5 +-
>> arch/microblaze/include/asm/irq.h | 4 +-
>> arch/microblaze/kernel/irq.c | 2 +-
>> arch/microblaze/kernel/setup.c | 2 -
>> arch/powerpc/Kconfig | 1 +
>> arch/powerpc/include/asm/ehv_pic.h | 2 +-
>> arch/powerpc/include/asm/i8259.h | 2 +-
>> arch/powerpc/include/asm/irq.h | 247 +-------
>> arch/powerpc/include/asm/mpic.h | 2 +-
>> arch/powerpc/include/asm/xics.h | 2 +-
>> arch/powerpc/kernel/irq.c | 617 +------------------
>> arch/powerpc/platforms/512x/mpc5121_ads_cpld.c | 12 +-
>> arch/powerpc/platforms/52xx/media5200.c | 15 +-
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c | 16 +-
>> arch/powerpc/platforms/52xx/mpc52xx_pic.c | 12 +-
>> arch/powerpc/platforms/82xx/pq2ads-pci-pic.c | 14 +-
>> arch/powerpc/platforms/85xx/socrates_fpga_pic.c | 15 +-
>> arch/powerpc/platforms/86xx/gef_pic.c | 15 +-
>> arch/powerpc/platforms/cell/axon_msi.c | 29 +-
>> arch/powerpc/platforms/cell/beat_interrupt.c | 16 +-
>> arch/powerpc/platforms/cell/interrupt.c | 16 +-
>> arch/powerpc/platforms/cell/spider-pic.c | 14 +-
>> arch/powerpc/platforms/embedded6xx/flipper-pic.c | 30 +-
>> arch/powerpc/platforms/embedded6xx/hlwd-pic.c | 35 +-
>> arch/powerpc/platforms/iseries/irq.c | 11 +-
>> arch/powerpc/platforms/powermac/pic.c | 15 +-
>> arch/powerpc/platforms/powermac/smp.c | 9 +-
>> arch/powerpc/platforms/ps3/interrupt.c | 11 +-
>> arch/powerpc/platforms/wsp/opb_pic.c | 15 +-
>> arch/powerpc/sysdev/cpm1.c | 9 +-
>> arch/powerpc/sysdev/cpm2_pic.c | 11 +-
>> arch/powerpc/sysdev/ehv_pic.c | 14 +-
>> arch/powerpc/sysdev/fsl_msi.c | 10 +-
>> arch/powerpc/sysdev/fsl_msi.h | 2 +-
>> arch/powerpc/sysdev/i8259.c | 15 +-
>> arch/powerpc/sysdev/ipic.c | 15 +-
>> arch/powerpc/sysdev/ipic.h | 2 +-
>> arch/powerpc/sysdev/mpc8xx_pic.c | 11 +-
>> arch/powerpc/sysdev/mpic.c | 17 +-
>> arch/powerpc/sysdev/mpic_msi.c | 2 +-
>> arch/powerpc/sysdev/mv64x60_pic.c | 11 +-
>> arch/powerpc/sysdev/qe_lib/qe_ic.c | 13 +-
>> arch/powerpc/sysdev/qe_lib/qe_ic.h | 2 +-
>> arch/powerpc/sysdev/tsi108_pci.c | 13 +-
>> arch/powerpc/sysdev/uic.c | 14 +-
>> arch/powerpc/sysdev/xics/xics-common.c | 25 +-
>> arch/powerpc/sysdev/xilinx_intc.c | 19 +-
>> drivers/gpio/gpio-mpc8xxx.c | 15 +-
>> drivers/mfd/twl-core.c | 12 +-
>> include/linux/irqdomain.h | 180 ++++--
>> kernel/irq/irqdomain.c | 757 ++++++++++++++++++----
>> 64 files changed, 1207 insertions(+), 1414 deletions(-)
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/