[PATCH] arm: ioremap: Fix compilation of code which use pci_remap_iospace() without CONFIG_MMU

From: Pali Rohár
Date: Thu Jul 14 2022 - 14:58:31 EST


Custom ARM version of pci_remap_iospace() is implemented only for MMU
kernel builds. So do not define pci_remap_iospace() without CONFIG_MMU.

See compilation failures:
https://lore.kernel.org/r/202112040150.wvyJZIZO-lkp@xxxxxxxxx/
https://lore.kernel.org/r/202112261802.u9iXqdWh-lkp@xxxxxxxxx/
https://lore.kernel.org/r/202201131529.A2s7rKQc-lkp@xxxxxxxxx/
https://lore.kernel.org/r/202203090147.24cUL0De-lkp@xxxxxxxxx/

Fixes: bc02973a06a6 ("arm: ioremap: Implement standard PCI function pci_remap_iospace()")
Reported-by: kernel test robot <lkp@xxxxxxxxx>
Signed-off-by: Pali Rohár <pali@xxxxxxxxxx>

---

PING!!!! Is somebody interested in fixing these compile errors? As nobody
answered to my emails where I proposed this fix more than half year ago and
asked for opinion...

https://lore.kernel.org/r/20211204022131.bmhla4gkph7s7hy2@pali/
https://lore.kernel.org/r/20211205123209.lyx76daqdwzqwex4@pali/
https://lore.kernel.org/r/20211226215135.blcnafbuwhrq5ram@pali/
https://lore.kernel.org/r/20220113134938.3tx7iiukphvazvsq@pali/
https://lore.kernel.org/r/20220308184851.jmw2xvrapy5wzwof@pali/

If nobody is interested then please STOP sending me these Intel "0-DAY CI
Kernel Test Service" emails. Thanks!
---
arch/arm/include/asm/io.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h
index eba7cbc93b86..47cf79229b7c 100644
--- a/arch/arm/include/asm/io.h
+++ b/arch/arm/include/asm/io.h
@@ -180,10 +180,12 @@ void pci_ioremap_set_mem_type(int mem_type);
static inline void pci_ioremap_set_mem_type(int mem_type) {}
#endif

+#ifdef CONFIG_MMU
struct resource;

#define pci_remap_iospace pci_remap_iospace
int pci_remap_iospace(const struct resource *res, phys_addr_t phys_addr);
+#endif

/*
* PCI configuration space mapping function.
--
2.20.1