On Wed, Jul 29, 2020 at 8:35 AM Gustavo Romero <grom...@linux.ibm.com> wrote: > > Currently pnv_ioda_setup_bus_dma() is outside of a CONFIG_IOMMU_API guard > and if CONFIG_IOMMU_API=n the build can fail if the compiler sets > -Werror=unused-function, because pnv_ioda_setup_bus_dma() is only used in > functions guarded by a CONFIG_IOMMU_API guard. > > That issue can be easily reproduced using the skiroot_defconfig. For other > configs, like powernv_defconfig, that issue is hidden by the fact that > if CONFIG_IOMMU_SUPPORT is enabled plus other common IOMMU options, like > CONFIG_OF_IOMMU, by default CONFIG_IOMMU_API is enabled as well. Hence, for > powernv_defconfig, it's necessary to set CONFIG_IOMMU_SUPPORT=n to make the > build fail, because CONFIG_PCI=y and pci-ioda.c is included in the build, > but since CONFIG_IOMMU_SUPPORT=n the CONFIG_IOMMU_API is disabled, breaking > the build. > > This commit fixes that build issue by moving the pnv_ioda_setup_bus_dma() > inside a CONFIG_IOMMU_API guard, so when CONFIG_IOMMU_API is disabled that > function is not defined.
I think a fix for this is already in -next.