Re: [PATCH -next] ACPI/IORT: Fix build error implicit-function-declaration
From: Hanjun Guo <guohanjun@huawei.com>
Date: 2022-07-26 02:53:32
Also in:
linux-acpi, lkml
On 2022/7/25 21:50, Shameerali Kolothum Thodi wrote: [...]
quoted
If CONFIG_ACPI_IORT=y and CONFIG_IOMMU_API is not set, make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-, will be failed, like this: drivers/acpi/arm64/iort.c: In function ‘iort_get_rmr_sids’: drivers/acpi/arm64/iort.c:1406:2: error: implicit declaration of function ‘iort_iommu_rmr_get_resv_regions’; did you mean ‘iort_iommu_get_resv_regions’? [-Werror=implicit-function-declaration] iort_iommu_rmr_get_resv_regions(iommu_fwnode, NULL, head); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ iort_iommu_get_resv_regions cc1: some warnings being treated as errors make[3]: *** [drivers/acpi/arm64/iort.o] Error 1Thanks for spotting this.quoted
The function iort_iommu_rmr_get_resv_regions() is declared at #ifdef CONFIG_IOMMU_API area, and the callers of iort_get_rmr_sids() and iort_put_rmr_sids() would select IOMMU_API. To fix this error, move the definitions to #ifdef CONFIG_IOMMU_API area.That makes sense. And the only callers of these are SMMU drivers I think we don't need stub functions under !CONFIG_IOMMU_API(Lorenzo, could you please double check this).
I think so, because SMMU drivers will select IOMMU_API, in drivers/iommu/Kconfig, it says: # IOMMU_API always gets selected by whoever wants it. config IOMMU_API bool
Nit: Please wrap the commit description to a max of 75 chars per line.
Zhijie, would you mind send a updated version? Thanks Hanjun _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel