This is integration of https://github.com/connojd/xue into mainline Xen.
This patch series includes several patches that I made in the process, some are
very loosely related.
The driver developed by Connor supports output-only console via USB3 debug
capability. The capability is designed to operate mostly independently of
normal XHCI driver, so this patch series allows dom0 to drive standard USB3
controller part, while Xen uses DbC for console output.
Changes since RFC:
- move the driver to xue.c, remove non-Xen parts, remove now unneeded abstraction
- adjust for Xen code style
- build for x86 only
- drop patch hidding the device from dom0
Changes since v1:
- drop ehci patch - already applied
- adjust for review comments from Jan (see changelogs in individual patches)
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Wei Liu <wl@xen.org>
Cc: "Roger Pau Monné" <roger.pau@citrix.com>
Cc: Paul Durrant <paul@xen.org>
Cc: Kevin Tian <kevin.tian@intel.com>
Cc: Connor Davis <connojdavis@gmail.com>
Connor Davis (1):
drivers/char: Add support for Xue USB3 debugger
Marek Marczykowski-Górecki (8):
xue: reset XHCI ports when initializing dbc
xue: add support for selecting specific xhci
console: support multiple serial console simultaneously
IOMMU: add common API for device reserved memory
IOMMU/VT-d: wire common device reserved memory API
IOMMU/AMD: wire common device reserved memory API
xue: mark DMA buffers as reserved for the device
xue: allow driving the rest of XHCI by a domain while Xen uses DbC
docs/misc/xen-command-line.pandoc | 5 +-
xen/arch/x86/include/asm/fixmap.h | 4 +-
xen/arch/x86/setup.c | 3 +-
xen/drivers/char/Kconfig | 9 +-
xen/drivers/char/Makefile | 1 +-
xen/drivers/char/console.c | 58 +-
xen/drivers/char/xue.c | 1066 +++++++++++++++++++++++-
xen/drivers/passthrough/amd/iommu_acpi.c | 16 +-
xen/drivers/passthrough/iommu.c | 40 +-
xen/drivers/passthrough/vtd/dmar.c | 203 ++--
xen/include/xen/iommu.h | 11 +-
xen/include/xen/serial.h | 3 +-
12 files changed, 1323 insertions(+), 96 deletions(-)
create mode 100644 xen/drivers/char/xue.c
base-commit: 0544c4ee4b48f7e2715e69ff3e73c3d5545b0526
--
git-series 0.9.1