iommu.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] IOMMU Probe deferral support
@ 2016-08-08 22:49 Sricharan R
       [not found] ` <1470696550-3416-1-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
  0 siblings, 1 reply; 26+ messages in thread
From: Sricharan R @ 2016-08-08 22:49 UTC (permalink / raw)
  To: will.deacon-5wv7dgnIgG8, robin.murphy-5wv7dgnIgG8,
	joro-zLv9SwRftAIdnm+yROfE0A,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw
  Cc: sricharan-sgV2jX0FEOL9JmXXK+q4OQ

This is on top initial post from Laurent Pinchart[1]. This is
a try to see if the iommu ops configuration for the devices
can be called at a generic place so that it works for all
busses. The dma_configure_ops for a device is now called during
the device_attach callback just before the probe of the
bus/driver is called. Similarly dma_deconfigure is called during
device_detach. of_configure_dma_masks is still called for each
of the busses separately, but that can be combined with calling
dma_configure_ops if its safe to have masks not set till probe time.

Also based on comments [2] from last post [3], add_device callback
is called at the point when the ops for that iommu is found.

Have tested this with arm-smmu on platform bus and yet to test for
other busses (pci, amba), but those busses go through the same path
as well.

[1] http://lists.linuxfoundation.org/pipermail/iommu/2015-May/013016.html
[2] http://www.spinics.net/lists/arm-kernel/msg499962.html,
[3] http://www.spinics.net/lists/arm-kernel/msg506072.html

Laurent Pinchart (5):
  arm: dma-mapping: Don't override dma_ops in arch_setup_dma_ops()
  of: dma: Move range size workaround to of_dma_get_range()
  of: dma: Make of_dma_deconfigure() public
  of: dma: Split of_configure_dma() into mask and ops configuration
  iommu: of: Handle IOMMU lookup failure with deferred probing or error

Sricharan R (3):
  drivers: platform: Configure dma operations at probe time
  drivers: platform: Remove call to of_dma_(con/decon)figure_ops
  drivers: iommu: arm-smmu: Set iommu_ops in probe

 arch/arm/mm/dma-mapping.c   |  9 ++++++
 drivers/base/dd.c           | 11 +++++++
 drivers/base/dma-mapping.c  | 11 +++++++
 drivers/iommu/arm-smmu.c    | 17 ++--------
 drivers/iommu/of_iommu.c    | 21 ++++++++++---
 drivers/of/address.c        | 20 ++++++++++--
 drivers/of/device.c         | 77 ++++++++++++++++++++++++++++-----------------
 drivers/of/platform.c       | 11 ++-----
 drivers/pci/probe.c         |  3 +-
 include/linux/dma-mapping.h |  3 ++
 include/linux/of_device.h   | 14 +++++++--
 11 files changed, 136 insertions(+), 61 deletions(-)

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation

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

end of thread, other threads:[~2016-09-09  9:48 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-08 22:49 [PATCH 0/8] IOMMU Probe deferral support Sricharan R
     [not found] ` <1470696550-3416-1-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-08-08 22:49   ` [PATCH 1/8] arm: dma-mapping: Don't override dma_ops in arch_setup_dma_ops() Sricharan R
     [not found]     ` <1470696550-3416-2-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-09-02  8:16       ` Marek Szyprowski
     [not found]         ` <16c9743e-e531-25aa-76f1-8746a6b8ef11-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-09-07  6:24           ` Sricharan
2016-08-08 22:49   ` [PATCH 2/8] of: dma: Move range size workaround to of_dma_get_range() Sricharan R
2016-08-08 22:49   ` [PATCH 3/8] of: dma: Make of_dma_deconfigure() public Sricharan R
2016-08-08 22:49   ` [PATCH 4/8] of: dma: Split of_configure_dma() into mask and ops configuration Sricharan R
     [not found]     ` <1470696550-3416-5-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-08-12  7:31       ` Tomasz Figa
     [not found]         ` <CAAFQd5BkpHrF=2=UXFA2mPKe0VQAD3J_XSNrZYHP0br5hw=Gsw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-08-12 15:18           ` Laurent Pinchart
2016-08-12 15:45             ` Sricharan
2016-09-09  6:53       ` Magnus Damm
     [not found]         ` <CANqRtoRVRrP9dc3qc-xSE_Wct2HPznzzi1hdrHeC8h2gA=JcKg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-09-09  9:48           ` Sricharan
2016-08-08 22:49   ` [PATCH 5/8] drivers: platform: Configure dma operations at probe time Sricharan R
     [not found]     ` <1470696550-3416-6-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-08-16  9:25       ` Laurent Pinchart
2016-08-16 12:28         ` Sricharan
2016-08-08 22:49   ` [PATCH 6/8] drivers: platform: Remove call to of_dma_(con/decon)figure_ops Sricharan R
     [not found]     ` <1470696550-3416-7-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-08-12  7:33       ` Tomasz Figa
     [not found]         ` <CAAFQd5DZ0ZpW2eEm8Bvh8=di6kOgUG4bGY_iTNbVBHsj0KPmeg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-08-12 15:42           ` Sricharan
2016-08-08 22:49   ` [PATCH 7/8] iommu: of: Handle IOMMU lookup failure with deferred probing or error Sricharan R
     [not found]     ` <1470696550-3416-8-git-send-email-sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-08-12  7:46       ` Tomasz Figa
     [not found]         ` <CAAFQd5C8BuOCc5ySw_3tVELDG4S+r_5VyDvOPnBBuVr-6CBfxg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-08-12 15:40           ` Sricharan
2016-09-02  8:09             ` Marek Szyprowski
     [not found]               ` <1c5dde1d-1ffb-d045-c090-032b9f1c7de2-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-09-07  6:16                 ` Sricharan
2016-09-02 12:52       ` Marek Szyprowski
     [not found]         ` <17b1ff0a-6619-cd45-28cd-70bf79bdcc47-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-09-07  6:29           ` Sricharan
2016-08-08 22:49   ` [PATCH 8/8] drivers: iommu: arm-smmu: Set iommu_ops in probe Sricharan R

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