The OF_IOMMU code relies on OF address parsing helpers, but the dependency on OF_ADDRESS is not expressed in Kconfig. As a result, of_iommu.c contains CONFIG_OF_ADDRESS guards and a __maybe_unused annotation to handle configurations where OF_ADDRESS is disabled.
Make OF_IOMMU depend on OF_ADDRESS and remove the now unnecessary preprocessor guards and __maybe_unused annotation. The only architecture supporting OF without OF_ADDRESS is SPARC, which does not use OF_IOMMU, so no functional change is intended. Suggested-by: Rob Herring <[email protected]> Co-developed-by: Vishnu Reddy <[email protected]> Signed-off-by: Vishnu Reddy <[email protected]> Signed-off-by: Vikash Garodia <[email protected]> --- drivers/iommu/Kconfig | 2 +- drivers/iommu/of_iommu.c | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig index 85a8d7fdfa30b64e21b8db0db1d5bc268c04f24b..c1e97bd885f933cae45fb7806183477f2d64cd5d 100644 --- a/drivers/iommu/Kconfig +++ b/drivers/iommu/Kconfig @@ -147,7 +147,7 @@ endchoice config OF_IOMMU def_bool y - depends on OF && IOMMU_API + depends on OF_ADDRESS && IOMMU_API # IOMMU-agnostic DMA-mapping layer config IOMMU_DMA diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c index 5c266511db78910d6fd221af5437cecff4931c22..6675fc900e6c2d55b34c61dc9effaeb48e24f18f 100644 --- a/drivers/iommu/of_iommu.c +++ b/drivers/iommu/of_iommu.c @@ -167,7 +167,7 @@ int of_iommu_configure(struct device *dev, struct device_node *master_np, return err; } -static enum iommu_resv_type __maybe_unused +static enum iommu_resv_type iommu_resv_region_get_type(struct device *dev, struct resource *phys, phys_addr_t start, resource_size_t length) @@ -203,7 +203,6 @@ iommu_resv_region_get_type(struct device *dev, */ void of_iommu_get_resv_regions(struct device *dev, struct list_head *list) { -#if IS_ENABLED(CONFIG_OF_ADDRESS) struct of_phandle_iterator it; int err; @@ -265,6 +264,5 @@ void of_iommu_get_resv_regions(struct device *dev, struct list_head *list) } } } -#endif } EXPORT_SYMBOL(of_iommu_get_resv_regions); -- 2.34.1
