• Robin Murphy's avatar
    iommu/of: Prepare for deferred IOMMU configuration · d7b05582
    Robin Murphy authored
    IOMMU configuration represents unchanging properties of the hardware,
    and as such should only need happen once in a device's lifetime, but
    the necessary interaction with the IOMMU device and driver complicates
    exactly when that point should be.
    
    Since the only reasonable tool available for handling the inter-device
    dependency is probe deferral, we need to prepare of_iommu_configure()
    to run later than it is currently called (i.e. at driver probe rather
    than device creation), to handle being retried, and to tell whether a
    not-yet present IOMMU should be waited for or skipped (by virtue of
    having declared a built-in driver or not).
    Tested-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
    Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
    Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
    d7b05582
of_iommu.c 6.88 KB