xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/14] IOMMU support for ARM
@ 2014-05-13 15:50 Julien Grall
  2014-05-13 15:50 ` [PATCH v5 01/14] xen/arm: Introduce flush_tlb_domain Julien Grall
                   ` (14 more replies)
  0 siblings, 15 replies; 30+ messages in thread
From: Julien Grall @ 2014-05-13 15:50 UTC (permalink / raw)
  To: xen-devel; +Cc: stefano.stabellini, Julien Grall, tim, ian.campbell

Hello,

This is the fifth version of this patch series to add support for IOMMU on ARM.
It also adds driver to support ARM SMMU which is used for instance on Midway.

The ARM IOMMU architecture assumes that the page table is shared between the
processor and each IOMMU.

Major changes in v5:
    - A bunch of patch from the previous version has been pushed upstream
    - Drop protected-devices patch [1] as it's not needed
    - Add flush_tlb_domain helper
    - Rework "Clean cache PT ..." to only flush by small item

For all the other changes see in each patch.

This series also depends on the interrupt reworking serie [2].

A working tree can be found here:
    git://xenbits.xen.org/people/julieng/xen-unstable.git branch ssmu-v5

Sincerely yours,

[1] https://patches.linaro.org/28811/
[2] http://lists.xen.org/archives/html/xen-devel/2014-05/msg01523.html

Julien Grall (14):
  xen/arm: Introduce flush_tlb_domain
  xen/passthrough: amd: Remove domain_id from hvm_iommu
  xen/passthrough: amd: rename iommu_has_feature into
    amd_iommu_has_feature
  xen/passthrough: vtd: iommu_set_hwdom_mapping is VTD specific
  xen/passthrough: rework hwdom_pvh_reqs to use it also on ARM
  xen/passthrough: iommu: Split generic IOMMU code
  xen/passthrough: iommu: Introduce arch specific code
  xen/passthrough: iommu: Basic support of device tree assignment
  xen/passthrough: Introduce IOMMU ARM architecture
  MAINTAINERS: Add drivers/passthrough/arm
  xen/arm: Don't give IOMMU devices to dom0 when iommu is disabled
  xen/arm: p2m: Clean cache PT when the IOMMU doesn't support coherent
    walk
  xen/arm: grant: Add another entry to map MFN 1:1 in dom0 p2m
  drivers/passthrough: arm: Add support for SMMU drivers

 MAINTAINERS                                   |    2 +
 xen/arch/arm/Rules.mk                         |    1 +
 xen/arch/arm/device.c                         |   15 +
 xen/arch/arm/domain.c                         |    7 +
 xen/arch/arm/domain_build.c                   |   30 +-
 xen/arch/arm/mm.c                             |   33 +-
 xen/arch/arm/p2m.c                            |   71 +-
 xen/arch/arm/setup.c                          |    2 +
 xen/arch/x86/domctl.c                         |    6 +-
 xen/arch/x86/hvm/io.c                         |    2 +-
 xen/arch/x86/tboot.c                          |    3 +-
 xen/common/device_tree.c                      |    4 +
 xen/drivers/passthrough/Makefile              |    6 +-
 xen/drivers/passthrough/amd/iommu_cmd.c       |    3 +-
 xen/drivers/passthrough/amd/iommu_detect.c    |    2 +-
 xen/drivers/passthrough/amd/iommu_guest.c     |    8 +-
 xen/drivers/passthrough/amd/iommu_init.c      |   16 +-
 xen/drivers/passthrough/amd/iommu_map.c       |   56 +-
 xen/drivers/passthrough/amd/pci_amd_iommu.c   |   53 +-
 xen/drivers/passthrough/arm/Makefile          |    2 +
 xen/drivers/passthrough/arm/iommu.c           |   70 +
 xen/drivers/passthrough/arm/smmu.c            | 1751 +++++++++++++++++++++++++
 xen/drivers/passthrough/device_tree.c         |  108 ++
 xen/drivers/passthrough/iommu.c               |  516 +-------
 xen/drivers/passthrough/pci.c                 |  387 ++++++
 xen/drivers/passthrough/vtd/extern.h          |    2 +
 xen/drivers/passthrough/vtd/iommu.c           |   76 +-
 xen/drivers/passthrough/vtd/x86/vtd.c         |    2 +-
 xen/drivers/passthrough/x86/Makefile          |    1 +
 xen/drivers/passthrough/x86/iommu.c           |  145 ++
 xen/include/asm-arm/device.h                  |   13 +-
 xen/include/asm-arm/domain.h                  |    2 +
 xen/include/asm-arm/flushtlb.h                |    3 +
 xen/include/asm-arm/hvm/iommu.h               |   10 +
 xen/include/asm-arm/iommu.h                   |   36 +
 xen/include/asm-x86/hvm/iommu.h               |   22 +
 xen/include/asm-x86/hvm/svm/amd-iommu-proto.h |    2 +-
 xen/include/asm-x86/iommu.h                   |   43 +
 xen/include/xen/device_tree.h                 |   14 +
 xen/include/xen/hvm/iommu.h                   |   27 +-
 xen/include/xen/iommu.h                       |   87 +-
 41 files changed, 2961 insertions(+), 678 deletions(-)
 create mode 100644 xen/drivers/passthrough/arm/Makefile
 create mode 100644 xen/drivers/passthrough/arm/iommu.c
 create mode 100644 xen/drivers/passthrough/arm/smmu.c
 create mode 100644 xen/drivers/passthrough/device_tree.c
 create mode 100644 xen/drivers/passthrough/x86/iommu.c
 create mode 100644 xen/include/asm-arm/hvm/iommu.h
 create mode 100644 xen/include/asm-arm/iommu.h
 create mode 100644 xen/include/asm-x86/iommu.h

-- 
1.7.10.4

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

end of thread, other threads:[~2014-05-14 14:35 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-13 15:50 [PATCH v5 00/14] IOMMU support for ARM Julien Grall
2014-05-13 15:50 ` [PATCH v5 01/14] xen/arm: Introduce flush_tlb_domain Julien Grall
2014-05-14 13:28   ` Ian Campbell
2014-05-14 13:29     ` Julien Grall
2014-05-13 15:50 ` [PATCH v5 02/14] xen/passthrough: amd: Remove domain_id from hvm_iommu Julien Grall
2014-05-13 15:50 ` [PATCH v5 03/14] xen/passthrough: amd: rename iommu_has_feature into amd_iommu_has_feature Julien Grall
2014-05-13 15:50 ` [PATCH v5 04/14] xen/passthrough: vtd: iommu_set_hwdom_mapping is VTD specific Julien Grall
2014-05-13 15:50 ` [PATCH v5 05/14] xen/passthrough: rework hwdom_pvh_reqs to use it also on ARM Julien Grall
2014-05-13 15:50 ` [PATCH v5 06/14] xen/passthrough: iommu: Split generic IOMMU code Julien Grall
2014-05-13 15:50 ` [PATCH v5 07/14] xen/passthrough: iommu: Introduce arch specific code Julien Grall
2014-05-13 15:50 ` [PATCH v5 08/14] xen/passthrough: iommu: Basic support of device tree assignment Julien Grall
2014-05-13 15:50 ` [PATCH v5 09/14] xen/passthrough: Introduce IOMMU ARM architecture Julien Grall
2014-05-13 15:50 ` [PATCH v5 10/14] MAINTAINERS: Add drivers/passthrough/arm Julien Grall
2014-05-13 15:50 ` [PATCH v5 11/14] xen/arm: Don't give IOMMU devices to dom0 when iommu is disabled Julien Grall
2014-05-13 15:50 ` [PATCH v5 12/14] xen/arm: p2m: Clean cache PT when the IOMMU doesn't support coherent walk Julien Grall
2014-05-14  7:18   ` Jan Beulich
2014-05-14  9:09     ` Julien Grall
2014-05-14  9:25       ` Jan Beulich
2014-05-14 12:45         ` Julien Grall
2014-05-14 13:08           ` Jan Beulich
2014-05-14 13:11             ` Julien Grall
2014-05-14 13:15               ` Jan Beulich
2014-05-14 13:56                 ` Julien Grall
2014-05-13 15:50 ` [PATCH v5 13/14] xen/arm: grant: Add another entry to map MFN 1:1 in dom0 p2m Julien Grall
2014-05-13 15:50 ` [PATCH v5 14/14] drivers/passthrough: arm: Add support for SMMU drivers Julien Grall
2014-05-14  7:29   ` Jan Beulich
2014-05-14 12:47     ` Julien Grall
2014-05-14 14:05 ` [PATCH v5 00/14] IOMMU support for ARM Ian Campbell
2014-05-14 14:13   ` Julien Grall
2014-05-14 14:35   ` Jan Beulich

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).