[RFC 0/9] IOMMU probe deferral support
Marek Szyprowski
m.szyprowski at samsung.com
Thu May 12 05:52:59 PDT 2016
Hello,
On 2016-04-25 17:58, Sricharan R wrote:
> This is mostly a repost of the probe deferral series from
> Laurent Pinchart [1]. Added a check to fix boot with ACPI.
> Adapted arm-smmu driver to work with deferred probing and added
> a new api for the below reason. This is based on the generic iommu binding
> series from Robin Murphy <robin.murphy at arm.com>.
Thanks for this patchset. I'm working on some serious rework in exynos power
domains and clocks support code and it turned out that I need this feature
to resolve probing order. It works fine on my internal tree, where some
iommu controllers cannot get their clocks early enough.
Tested-by: Marek Szyprowski <m.szyprowski at samsung.com>
> Now associating a group with an master has become mandatory and happens
> when the master is added to the bus using BUS_ADD_DEVICE from iommu core.
> But the iommu has to be ready before this using early iommu registration
> and also master should have been added to the iommu using xlate. So, when
> trying to get rid of the early registration and using late probing for iommu
> devices to sort out the probing order, the newly added api is meant to be
> called during the late probing to add the master to the iommu. add_iommu_group
> could be modified to do the same though.
>
> The one issue here is the DRIVER_BIND notifier from iommu core
> might be called at a wrong point since the addition of a group to the device
> happens after this.
>
> Will be good to know the right direction to proceed on this fully.
>
> [1] http://lists.linuxfoundation.org/pipermail/iommu/2015-May/013016.html
>
> Laurent Pinchart (6):
> 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
> drivers: platform: Configure dma operations at probe time
> iommu: of: Handle IOMMU lookup failure with deferred probing or error
>
> Sricharan R (3):
> drivers: iommu: Add a new add device api
> drivers: of: call iommu_bus_add_dev after iommu_configure_ops
> drivers: iommu: arm-smmu: Set iommu_ops in probe
>
> arch/arm/mm/dma-mapping.c | 9 ++++++
> drivers/base/platform.c | 13 ++++++++
> drivers/iommu/arm-smmu.c | 34 ++------------------
> drivers/iommu/iommu.c | 12 +++++++
> drivers/iommu/of_iommu.c | 16 ++++++++--
> drivers/of/address.c | 20 ++++++++++--
> drivers/of/device.c | 81 +++++++++++++++++++++++++++++++----------------
> drivers/of/platform.c | 16 ++++------
> drivers/pci/probe.c | 3 +-
> include/linux/iommu.h | 1 +
> include/linux/of_device.h | 14 ++++++--
> 11 files changed, 141 insertions(+), 78 deletions(-)
>
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
More information about the linux-arm-kernel
mailing list