|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH 13/13] pciback: Enable Xen-PCI-back to be compiled.
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
---
drivers/xen/Kconfig | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++
drivers/xen/Makefile | 1 +
2 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index c1b560d..1106607 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -51,6 +51,71 @@ config XEN_NETDEV_BACKEND
Implement the network backend driver, which passes packets
from the guest domain's frontend drivers to the network.
+config XEN_PCIDEV_BACKEND
+ tristate "PCI-device backend driver"
+ depends on PCI && XEN_BACKEND
+ default XEN_BACKEND
+ help
+ The PCI device backend driver allows the kernel to export arbitrary
+ PCI devices to other guests. If you select this to be a module, you
+ will need to make sure no other driver has bound to the device(s)
+ you want to make visible to other guests.
+
+choice
+ prompt "PCI Backend Mode"
+ depends on XEN_PCIDEV_BACKEND
+ default XEN_PCIDEV_BACKEND_VPCI if !IA64
+ default XEN_PCIDEV_BACKEND_CONTROLLER if IA64
+
+config XEN_PCIDEV_BACKEND_VPCI
+ bool "Virtual PCI"
+ ---help---
+ This PCI Backend hides the true PCI topology and makes the frontend
+ think there is a single PCI bus with only the exported devices on it.
+ For example, a device at 03:05.0 will be re-assigned to 00:00.0. A
+ second device at 02:1a.1 will be re-assigned to 00:01.1.
+
+config XEN_PCIDEV_BACKEND_PASS
+ bool "Passthrough"
+ ---help---
+ This PCI Backend provides a real view of the PCI topology to the
+ frontend (for example, a device at 06:01.b will still appear at
+ 06:01.b to the frontend). This is similar to how Xen 2.0.x exposed
+ PCI devices to its driver domains. This may be required for drivers
+ which depend on finding their hardward in certain bus/slot
+ locations.
+
+config XEN_PCIDEV_BACKEND_SLOT
+ bool "Slot"
+ ---help---
+ This PCI Backend hides the true PCI topology and makes the frontend
+ think there is a single PCI bus with only the exported devices on it.
+ Contrary to the virtual PCI backend, a function becomes a new slot.
+ For example, a device at 03:05.2 will be re-assigned to 00:00.0. A
+ second device at 02:1a.1 will be re-assigned to 00:01.0.
+
+config XEN_PCIDEV_BACKEND_CONTROLLER
+ bool "Controller"
+ depends on IA64
+ ---help---
+ This PCI backend virtualizes the PCI bus topology by providing a
+ virtual bus per PCI root device. Devices which are physically under
+ the same root bus will appear on the same virtual bus. For systems
+ with complex I/O addressing, this is the only backend which supports
+ extended I/O port spaces and MMIO translation offsets. This backend
+ also supports slot virtualization. For example, a device at
+ 0000:01:02.1 will be re-assigned to 0000:00:00.0. A second device
+ at 0000:02:05.0 (behind a P2P bridge on bus 0000:01) will be
+ re-assigned to 0000:00:01.0. A third device at 0000:16:05.0 (under
+ a different PCI root bus) will be re-assigned to 0000:01:00.0.
+
+endchoice
+
+config XEN_PCIDEV_BE_DEBUG
+ bool "PCI Backend Debugging"
+ depends on XEN_PCIDEV_BACKEND
+
+
config XENFS
tristate "Xen filesystem"
depends on XEN
diff --git a/drivers/xen/Makefile b/drivers/xen/Makefile
index 116030e..64bafb4 100644
--- a/drivers/xen/Makefile
+++ b/drivers/xen/Makefile
@@ -12,6 +12,7 @@ obj-$(CONFIG_XEN_DEV_EVTCHN) += evtchn.o
obj-$(CONFIG_XEN_GNTDEV) += gntdev.o
obj-$(CONFIG_XEN_BLKDEV_BACKEND) += blkback/
obj-$(CONFIG_XEN_NETDEV_BACKEND) += netback/
+obj-$(CONFIG_XEN_PCIDEV_BACKEND) += pciback/
obj-$(CONFIG_XENFS) += xenfs/
obj-$(CONFIG_XEN_SYS_HYPERVISOR) += sys-hypervisor.o
obj-$(CONFIG_XEN_S3) += acpi.o
--
1.6.2.5
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [PATCH 03/13] Fix include header name change (evtchn.h is now events.h), (continued)
- [Xen-devel] [PATCH 03/13] Fix include header name change (evtchn.h is now events.h), Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 04/13] Removed MSI capability in the pci-back driver., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 05/13] Use pci_is_enabled() instead of is_enabled., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 06/13] Fix usage of INIT_WORK., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 07/13] Update the calling mechanism for xenbus_[map|unmap]_ring_valloc functions., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 08/13] Xen paravirtualised PCI hotplug., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 09/13] xenbus: Add new states to xenbus_strstate(), Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 10/13] xenbus: prevent warnings on unhandled enumeration values, Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 11/13] pciback: Add check to load only under priviliged domain., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 12/13] Remove usage of pci_restore_bars() as Linux handles the power-up states correctly now., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 13/13] pciback: Enable Xen-PCI-back to be compiled.,
Konrad Rzeszutek Wilk <=
- Re: [Xen-devel] [PATCH 08/13] Xen paravirtualised PCI hotplug., Vincent Hanquez
- Re: [Xen-devel] [PATCH 08/13] Xen paravirtualised PCI hotplug., Konrad Rzeszutek Wilk
- [Xen-devel] [PATCH 08/13] Xen paravirtualised PCI hotplug., Yosuke Iwamatsu
- [Xen-devel] Re: [PATCH 04/13] Removed MSI capability in the pci-back driver., Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH 04/13] Removed MSI capability in the pci-back driver., Konrad Rzeszutek Wilk
Re: [Xen-devel] [PATCH PV_OPS] pciback support, Jeremy Fitzhardinge
Re: [Xen-devel] [PATCH PV_OPS] pciback support, Sander Eikelenboom
|
|
|
|
|