• A
    iommu: provide of_xlate pointer unconditionally · b70bb984
    Arnd Bergmann 提交于
    iommu drivers that support the standard DT bindings use a of_xlate
    callback pointer, but that is only part of struct iommu_ops when
    CONFIG_OF_IOMMU is enabled, leading to build errors in randconfig
    builds when that is not provided:
    
    drivers/iommu/mtk_iommu.c:497:2: error: unknown field 'of_xlate' specified in initializer
      .of_xlate = mtk_iommu_of_xlate,
      ^
    drivers/iommu/mtk_iommu.c:497:14: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
      .of_xlate = mtk_iommu_of_xlate,
                  ^~~~~~~~~~~~~~~~~~
    drivers/iommu/mtk_iommu.c:497:14: note: (near initialization for 'mtk_iommu_ops.domain_get_attr')
    
    We can work around it by adding more #ifdefs in each driver, but
    it seems nicer to just allow setting the pointer even if it is
    unused. This makes the driver code look nicer, and it gives better
    compile-time coverage when test building on other architectures.
    Signed-off-by: NArnd Bergmann <arnd@arndb.de>
    Fixes: 0df4fabe ("iommu/mediatek: Add mt8173 IOMMU driver")
    Reviewed-by: NRobin Murphy <robin.murphy@arm.com>
    Signed-off-by: NJoerg Roedel <jroedel@suse.de>
    b70bb984
iommu.h 17.3 KB