linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v10 0/7] PCI: hv: New paravirtual PCI front-end for Hyper-V VMs
@ 2015-12-10 17:52 jakeo
  2015-12-10 17:52 ` [PATCH v10 1/7] drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc num jakeo
                   ` (6 more replies)
  0 siblings, 7 replies; 11+ messages in thread
From: jakeo @ 2015-12-10 17:52 UTC (permalink / raw)
  To: gregkh, kys, linux-kernel, devel, olaf, apw, vkuznets, tglx,
	haiyangz, marc.zyngier, bhelgaas, linux-pci
  Cc: Jake Oshins

From: Jake Oshins <jakeo@microsoft.com>

This version of the patch series removes warning when compiling x86
32-bit while still making it build cleanly for x64.

First, export functions that allow correlating Hyper-V virtual processors
and Linux cpus, along with the means for invoking a hypercall that targets
interrupts at chosen vectors on specific cpus.

Second, mark various parts of IRQ domain related code as exported, so that
this PCI front-end can implement an IRQ domain as part of a module.  (The
alternative would be to pull all tyhis into the kernel, which would pull
in a lot of other Hyper-V related code, as this IRQ domain depends on
vmbus.ko.)

Third, modify PCI so that new root PCI buses can be marked with an associated
fwnode_handle, and so that root PCI buses can look up their associated IRQ
domain by that handle.

Fourth, introduce a new driver, hv_pcifront, which exposes root PCI buses in
a Hyper-V VM.  These root PCI buses expose real PCIe device, or PCI Virtual
Functions.


Jake Oshins (7):
  drivers:hv: Export a function that maps Linux CPU num onto Hyper-V
    proc num
  drivers:hv: Export hv_do_hypercall()
  PCI: Make it possible to implement a PCI MSI IRQ Domain in a module.
  PCI: Add fwnode_handle to pci_sysdata
  PCI: irqdomain: Look up IRQ domain by fwnode_handle
  drivers:hv: Define the channel type of Hyper-V PCI Express
    pass-through
  PCI: hv: New paravirtual PCI front-end for Hyper-V VMs

 MAINTAINERS                    |    1 +
 arch/x86/include/asm/msi.h     |    6 +
 arch/x86/include/asm/pci.h     |   15 +
 arch/x86/kernel/apic/msi.c     |    8 +-
 arch/x86/kernel/apic/vector.c  |    2 +
 drivers/hv/hv.c                |   20 +-
 drivers/hv/hyperv_vmbus.h      |    2 +-
 drivers/hv/vmbus_drv.c         |   17 +
 drivers/pci/Kconfig            |    7 +
 drivers/pci/host/Makefile      |    1 +
 drivers/pci/host/hv_pcifront.c | 2249 ++++++++++++++++++++++++++++++++++++++++
 drivers/pci/msi.c              |    4 +
 drivers/pci/probe.c            |   15 +
 include/linux/hyperv.h         |   14 +
 include/linux/pci.h            |    4 +
 kernel/irq/chip.c              |    1 +
 kernel/irq/irqdomain.c         |    4 +
 17 files changed, 2356 insertions(+), 14 deletions(-)
 create mode 100644 drivers/pci/host/hv_pcifront.c

-- 
1.9.1


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

end of thread, other threads:[~2015-12-10 18:16 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-10 17:52 [PATCH v10 0/7] PCI: hv: New paravirtual PCI front-end for Hyper-V VMs jakeo
2015-12-10 17:52 ` [PATCH v10 1/7] drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc num jakeo
2015-12-10 17:52 ` [PATCH v10 2/7] drivers:hv: Export hv_do_hypercall() jakeo
2015-12-10 17:52 ` [PATCH v10 3/7] PCI: Make it possible to implement a PCI MSI IRQ Domain in a module jakeo
2015-12-10 18:13   ` Marc Zyngier
2015-12-10 17:53 ` [PATCH v10 4/7] PCI: Add fwnode_handle to pci_sysdata jakeo
2015-12-10 18:16   ` Marc Zyngier
2015-12-10 17:53 ` [PATCH v10 5/7] PCI: irqdomain: Look up IRQ domain by fwnode_handle jakeo
2015-12-10 18:12   ` Marc Zyngier
2015-12-10 17:53 ` [PATCH v10 6/7] drivers:hv: Define the channel type of Hyper-V PCI Express pass-through jakeo
2015-12-10 17:53 ` [PATCH v10 7/7] PCI: hv: New paravirtual PCI front-end for Hyper-V VMs jakeo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).