[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [RFC PATCH v2 00/22] xen/arm: Add ITS support



From: Vijaya Kumar K <Vijaya.Kumar@xxxxxxxxxxxxxxxxxx>

Add ITS support for arm. Following major features
are supported
 - GICv3 ITS support for arm64 platform
 - Supports multi ITS node
 - LPI descriptors are allocated on-demand
 - Only ITS Dom0 is supported

Tested with single ITS node.

Major changes in v2:
 - Added Multi ITS support.
 - GIC ITS physical driver is rebased to linux 4.0_rc4 version
 - ITS DomU support
 - Reused GICv3 hw_irq_controller ops for LPIs
 - Generic Interrupt handling is used for LPI interrupts

Vijaya Kumar K (22):
  add linked list apis
  Use linked list accessors for page_list helper function
  xen/arm: Add bitmap_find_next_zero_area helper function
  xen/arm: its: Import GICv3 ITS driver from linux
  xen/arm: gicv3: Refactor redistributor information
  xen/arm: its: Port ITS driver to xen
  xen/arm: its: Move ITS command encode helper functions
  xen/arm: its: Remove unused code in ITS driver
  xen/arm: its: Add helper functions to decode ITS Command
  xen/arm: Add helper function to get domain page
  xen/arm: its: Move its_device structure to header file
  xen/arm: its: Update irq descriptor for LPIs support
  xen/arm: its: Add virtual ITS command support
  xen/arm: its: Add emulation of ITS control registers
  xen/arm: its: Add support to emulate GICR register for LPIs
  xen/arm: its: implement hw_irq_controller for LPIs
  xen/arm: its: Map ITS translation space
  xen/arm: its: Dynamic allocation of LPI descriptors
  xen/arm: its: Support ITS interrupt handling
  xen/arm: its: Generate ITS node for Dom0
  xen/arm: its: Initialize virtual and physical ITS driver
  xen/arm: its: Generate ITS dt node for DomU

 tools/libxl/libxl_arm.c                |   36 +
 xen/arch/arm/Makefile                  |    2 +
 xen/arch/arm/arm64/lib/find_next_bit.c |   39 +
 xen/arch/arm/domain_build.c            |   50 +-
 xen/arch/arm/gic-v3-its.c              | 1263 +++++++++++++++++++++++++++
 xen/arch/arm/gic-v3.c                  |   70 +-
 xen/arch/arm/gic.c                     |   47 +-
 xen/arch/arm/irq.c                     |  219 ++++-
 xen/arch/arm/p2m.c                     |   24 +
 xen/arch/arm/setup.c                   |    1 +
 xen/arch/arm/vgic-v3-its.c             | 1483 ++++++++++++++++++++++++++++++++
 xen/arch/arm/vgic-v3.c                 |   65 +-
 xen/arch/arm/vgic.c                    |   34 +-
 xen/include/asm-arm/arm64/bitops.h     |   15 +
 xen/include/asm-arm/domain.h           |   14 +
 xen/include/asm-arm/gic-its.h          |  253 ++++++
 xen/include/asm-arm/gic.h              |   16 +-
 xen/include/asm-arm/gic_v3_defs.h      |  134 ++-
 xen/include/asm-arm/irq.h              |   15 +
 xen/include/asm-arm/p2m.h              |    3 +
 xen/include/asm-arm/vgic.h             |    1 +
 xen/include/public/arch-arm.h          |    3 +
 xen/include/xen/list.h                 |   60 ++
 xen/include/xen/mm.h                   |   10 +-
 24 files changed, 3805 insertions(+), 52 deletions(-)
 create mode 100644 xen/arch/arm/gic-v3-its.c
 create mode 100644 xen/arch/arm/vgic-v3-its.c
 create mode 100644 xen/include/asm-arm/gic-its.h

-- 
1.7.9.5


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.