All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] Renesas VMSA-compatible IPMMU driver
@ 2014-02-28 15:24 ` Laurent Pinchart
  0 siblings, 0 replies; 13+ messages in thread
From: Laurent Pinchart @ 2014-02-28 15:24 UTC (permalink / raw)
  To: iommu; +Cc: linux-sh, Ben Dooks

Hello,

This patch set adds a new driver for the Renesas IOMMU found in the R-Car H2
(r8a7790) and R-Car M2 (r8a7791) SoCs. Despite being called IPMMU like the
IOMMU present in older ARM Sh Mobile SoCs, the hardware has nothing in common
with the previous versions and thus requires a separate driver.

This IPMMU is compatible with the ARM VMSA short- and long-descriptor formats
(although some minor differences seem to exist, most probably due to hardware
bugs). The register set, however, is not compatible with the MMU-400 or
MMU-500. The existing arm-smmu driver can't thus be reused.

The second patch (not meant to be merged) in the set instanciates a platform
device for the IPMMU MX and associates it with the DU. The IPMMU can then be
tested using the rcar-du-drm driver. No modification is required to that
driver, as IOMMU integration is handled transparently by the ARM DMA
implementation.

One major problem still exist, in that the ARM DMA IOMMU backend doesn't seem
to mmap memory correctly to userspace. Tests carried on with the KMS modetest
application left the display hopelessly blank, until I decided to fill the KMS
buffers with a test pattern from inside the kernel. Although this makes the
IPMMU unusable at the moment, it shouldn't block review of the driver as it
shouldn't be involved in the problem. I'm of course investigating this.

Laurent Pinchart (2):
  iommu: Add driver for Renesas VMSA-compatible IPMMU
  [TEST] ARM: shmobile: koelsch-reference: Instantiate IPMMU-MX

 arch/arm/mach-shmobile/board-koelsch-reference.c |   30 +
 drivers/iommu/Kconfig                            |   12 +
 drivers/iommu/Makefile                           |    1 +
 drivers/iommu/ipmmu-vmsa.c                       | 1070 ++++++++++++++++++++++
 include/linux/platform_data/ipmmu-vmsa.h         |   24 +
 5 files changed, 1137 insertions(+)
 create mode 100644 drivers/iommu/ipmmu-vmsa.c
 create mode 100644 include/linux/platform_data/ipmmu-vmsa.h

-- 
Regards,

Laurent Pinchart


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

end of thread, other threads:[~2014-03-02 21:00 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-28 15:24 [PATCH 0/2] Renesas VMSA-compatible IPMMU driver Laurent Pinchart
2014-02-28 15:24 ` Laurent Pinchart
     [not found] ` <1393601099-4413-1-git-send-email-laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
2014-02-28 15:24   ` [PATCH 1/2] iommu: Add driver for Renesas VMSA-compatible IPMMU Laurent Pinchart
2014-02-28 15:24     ` Laurent Pinchart
2014-02-28 15:37     ` Ben Dooks
2014-02-28 15:48       ` Laurent Pinchart
2014-02-28 15:48         ` Laurent Pinchart
     [not found]     ` <1393601099-4413-2-git-send-email-laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
2014-02-28 17:48       ` Geert Uytterhoeven
2014-02-28 17:48         ` Geert Uytterhoeven
2014-03-02 20:59         ` Laurent Pinchart
2014-03-02 21:00           ` Laurent Pinchart
2014-02-28 15:24 ` [PATCH 2/2] [TEST] ARM: shmobile: koelsch-reference: Instantiate IPMMU-MX Laurent Pinchart
2014-02-28 15:24   ` Laurent Pinchart

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.