]> git.baikalelectronics.ru Git - kernel.git/commit
iommu: provide of_xlate pointer unconditionally
authorArnd Bergmann <arnd@arndb.de>
Tue, 15 Mar 2016 21:37:17 +0000 (22:37 +0100)
committerJoerg Roedel <jroedel@suse.de>
Tue, 5 Apr 2016 11:25:12 +0000 (13:25 +0200)
commit0ddbe93f34330937a0d7f34cae66fbc56439f585
tree1702a24fdcb57873048a56692b1a9e18d9e99009
parent4358ad30b78a3e000ac991e7bd80536e53e71f4e
iommu: provide of_xlate pointer unconditionally

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: Arnd Bergmann <arnd@arndb.de>
Fixes: ccc7f6b35eda ("iommu/mediatek: Add mt8173 IOMMU driver")
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
include/linux/iommu.h