All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC Part1 v1 00/18] Prepare for enabling hierarchy irqdomain on x86
@ 2014-09-11  8:24 Jiang Liu
  2014-09-11  8:24 ` [RFC Part1 v1 01/18] x86, irq, ACPI: Fix building warning of unused code Jiang Liu
                   ` (17 more replies)
  0 siblings, 18 replies; 21+ messages in thread
From: Jiang Liu @ 2014-09-11  8:24 UTC (permalink / raw)
  To: Benjamin Herrenschmidt, Thomas Gleixner, Ingo Molnar,
	H. Peter Anvin, Rafael J. Wysocki, Bjorn Helgaas, Randy Dunlap,
	Yinghai Lu, Borislav Petkov, Grant Likely
  Cc: Jiang Liu, Konrad Rzeszutek Wilk, Andrew Morton, Tony Luck,
	Joerg Roedel, Greg Kroah-Hartman, x86, linux-kernel, linux-pci,
	linux-acpi

We plan to restructure x86 interrupt code based on hierarchy irqdomain,
that is to build irqdomains for CPU vector, interrupt remapping unit,
IOAPIC, MSI and HPET etc and orgonize those irqdomains in hierarchy mode.

This patchset is preparation work to enable hierarchy irqdomain on x86
platforms. It splits out code for vector management, MSI, HTIRQ from
ioapic.c into separate files. It also introduces some helper functions
to access irq_cfg, which will ease transition to hierarchy irqdomain
later.

It's based on patchset at:
https://lkml.org/lkml/2014/9/11/97

And you may access it at:
https://github.com/jiangliu/linux.git irqdomain/p1v1

Jiang Liu (17):
  x86, irq, ACPI: Fix building warning of unused code
  x86, irq: Kill fourth parameter of IO_APIC_get_PCI_irq_vector()
  x86, irq: Refine hw_irq.h to prepare for irqdomain support
  x86, irq: Rename local APIC related functions in io_apic.c as
    apic_xxx()
  x86, irq: Protect __clear_irq_vector() with vector_lock
  x86, irq: Introduce helpers to access struct irq_cfg
  x86, irq: Move local APIC related code from io_apic.c into vector.c
  x86, irq: Replace printk(KERN_LVL) with pr_lvl() utilities
  x86, irq: Move PCI MSI related code from io_apic.c into msi.c
  x86, irq: Move HT IRQ related code from io_apic.c into htirq.c
  x86, irq: Move IOAPIC related declarations from hw_irq.h into
    io_apic.h
  x86, irq: Move IRQ initialization routines from io_apic.c into
    vector.c
  x86, irq: Make MSI and HT_IRQ indepenent of X86_IO_APIC
  x86, irq: Use helpers to access irq_cfg data structure associated
    with IRQ
  x86: irq_remapping: Use helpers to access irq_cfg data structure
    associated with IRQ
  iommu/vt-d: Use helpers to access irq_cfg data structure associated
    with IRQ
  iommu/amd: Use helpers to access irq_cfg data structure associated
    with IRQ

Yinghai Lu (1):
  x86, irq: Convert irq_2_pin list to generic list

 arch/x86/Kconfig                    |    6 +-
 arch/x86/include/asm/hw_irq.h       |   76 +--
 arch/x86/include/asm/io_apic.h      |   29 +-
 arch/x86/include/asm/pci.h          |    3 +
 arch/x86/kernel/acpi/boot.c         |    2 +
 arch/x86/kernel/apic/Makefile       |    4 +-
 arch/x86/kernel/apic/htirq.c        |  106 ++++
 arch/x86/kernel/apic/io_apic.c      | 1096 ++---------------------------------
 arch/x86/kernel/apic/msi.c          |  283 +++++++++
 arch/x86/kernel/apic/vector.c       |  716 +++++++++++++++++++++++
 arch/x86/kernel/irqinit.c           |   22 -
 arch/x86/pci/irq.c                  |    6 +-
 arch/x86/platform/uv/uv_irq.c       |    6 +-
 drivers/iommu/amd_iommu.c           |   14 +-
 drivers/iommu/intel_irq_remapping.c |   10 +-
 drivers/iommu/irq_remapping.c       |    6 +-
 drivers/pci/Kconfig                 |    2 +-
 drivers/pci/hotplug/ibmphp_core.c   |    5 +-
 18 files changed, 1226 insertions(+), 1166 deletions(-)
 create mode 100644 arch/x86/kernel/apic/htirq.c
 create mode 100644 arch/x86/kernel/apic/msi.c
 create mode 100644 arch/x86/kernel/apic/vector.c

-- 
1.7.10.4

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2014-09-11 14:48 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-09-11  8:24 [RFC Part1 v1 00/18] Prepare for enabling hierarchy irqdomain on x86 Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 01/18] x86, irq, ACPI: Fix building warning of unused code Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 02/18] x86, irq: Kill fourth parameter of IO_APIC_get_PCI_irq_vector() Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 03/18] x86, irq: Convert irq_2_pin list to generic list Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 04/18] x86, irq: Refine hw_irq.h to prepare for irqdomain support Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 05/18] x86, irq: Rename local APIC related functions in io_apic.c as apic_xxx() Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 06/18] x86, irq: Protect __clear_irq_vector() with vector_lock Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 07/18] x86, irq: Introduce helpers to access struct irq_cfg Jiang Liu
2014-09-11  9:27   ` Thomas Gleixner
2014-09-11 14:47     ` Thomas Gleixner
2014-09-11  8:24 ` [RFC Part1 v1 08/18] x86, irq: Move local APIC related code from io_apic.c into vector.c Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 09/18] x86, irq: Replace printk(KERN_LVL) with pr_lvl() utilities Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 10/18] x86, irq: Move PCI MSI related code from io_apic.c into msi.c Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 11/18] x86, irq: Move HT IRQ related code from io_apic.c into htirq.c Jiang Liu
2014-09-11  8:24 ` [RFC Part1 v1 12/18] x86, irq: Move IOAPIC related declarations from hw_irq.h into io_apic.h Jiang Liu
2014-09-11  8:25 ` [RFC Part1 v1 13/18] x86, irq: Move IRQ initialization routines from io_apic.c into vector.c Jiang Liu
2014-09-11  8:25 ` [RFC Part1 v1 14/18] x86, irq: Make MSI and HT_IRQ indepenent of X86_IO_APIC Jiang Liu
2014-09-11  8:25 ` [RFC Part1 v1 15/18] x86, irq: Use helpers to access irq_cfg data structure associated with IRQ Jiang Liu
2014-09-11  8:25 ` [RFC Part1 v1 16/18] x86: irq_remapping: " Jiang Liu
2014-09-11  8:25 ` [RFC Part1 v1 17/18] iommu/vt-d: " Jiang Liu
2014-09-11  8:25 ` [RFC Part1 v1 18/18] iommu/amd: " Jiang Liu

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.