• Sricharan R's avatar
    ACPI/IORT: Ignore all errors except EPROBE_DEFER · 058f8c3f
    Sricharan R authored
    While deferring the probe of IOMMU masters, xlate and
    add_device callbacks called from iort_iommu_configure
    can pass back error values like -ENODEV, which means
    the IOMMU cannot be connected with that master for real
    reasons. Before the IOMMU probe deferral, all such errors
    were ignored. Now all those errors are propagated back,
    killing the master's probe for such errors. Instead ignore
    all the errors except EPROBE_DEFER, which is the only one
    of concern and let the master work without IOMMU, thus
    restoring the old behavior. Also make explicit that
    acpi_dma_configure handles only -EPROBE_DEFER from
    iort_iommu_configure.
    
    Fixes: 5a1bb638 ("drivers: acpi: Handle IOMMU lookup failure with deferred probing or error")
    Signed-off-by: default avatarSricharan R <sricharan@codeaurora.org>
    Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
    058f8c3f
iort.c 27 KB