+++ /dev/null
-From 9caea0007601d3bc6debec04f8b4cd6f4c2394be Mon Sep 17 00:00:00 2001
-From: Helge Deller <deller@gmx.de>
-Date: Sun, 19 Sep 2021 10:36:09 -0700
-Subject: parisc: Declare pci_iounmap() parisc version only when CONFIG_PCI enabled
-
-From: Helge Deller <deller@gmx.de>
-
-commit 9caea0007601d3bc6debec04f8b4cd6f4c2394be upstream.
-
-Linus noticed odd declaration rules for pci_iounmap() in iomap.h and
-pci_iomap.h, where it dependend on either NO_GENERIC_PCI_IOPORT_MAP or
-GENERIC_IOMAP when CONFIG_PCI was disabled.
-
-Testing on parisc seems to indicate that we need pci_iounmap() only when
-CONFIG_PCI is enabled, so the declaration of pci_iounmap() can be moved
-cleanly into pci_iomap.h in sync with the declarations of pci_iomap().
-
-Link: https://lore.kernel.org/all/CAHk-=wjRrh98pZoQ+AzfWmsTZacWxTJKXZ9eKU2X_0+jM=O8nw@mail.gmail.com/
-Signed-off-by: Helge Deller <deller@gmx.de>
-Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
-Fixes: 97a29d59fc22 ("[PARISC] fix compile break caused by iomap: make IOPORT/PCI mapping functions conditional")
-Cc: Arnd Bergmann <arnd@arndb.de>
-Cc: Guenter Roeck <linux@roeck-us.net>
-Cc: Ulrich Teichert <krypton@ulrich-teichert.org>
-Cc: James Bottomley <James.Bottomley@hansenpartnership.com>
-Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- arch/parisc/lib/iomap.c | 4 +++-
- include/asm-generic/iomap.h | 10 ----------
- include/asm-generic/pci_iomap.h | 3 +++
- 3 files changed, 6 insertions(+), 11 deletions(-)
-
---- a/arch/parisc/lib/iomap.c
-+++ b/arch/parisc/lib/iomap.c
-@@ -513,12 +513,15 @@ void ioport_unmap(void __iomem *addr)
- }
- }
-
-+#ifdef CONFIG_PCI
- void pci_iounmap(struct pci_dev *dev, void __iomem * addr)
- {
- if (!INDIRECT_ADDR(addr)) {
- iounmap(addr);
- }
- }
-+EXPORT_SYMBOL(pci_iounmap);
-+#endif
-
- EXPORT_SYMBOL(ioread8);
- EXPORT_SYMBOL(ioread16);
-@@ -544,4 +547,3 @@ EXPORT_SYMBOL(iowrite16_rep);
- EXPORT_SYMBOL(iowrite32_rep);
- EXPORT_SYMBOL(ioport_map);
- EXPORT_SYMBOL(ioport_unmap);
--EXPORT_SYMBOL(pci_iounmap);
---- a/include/asm-generic/iomap.h
-+++ b/include/asm-generic/iomap.h
-@@ -110,16 +110,6 @@ static inline void __iomem *ioremap_np(p
- }
- #endif
-
--#ifdef CONFIG_PCI
--/* Destroy a virtual mapping cookie for a PCI BAR (memory or IO) */
--struct pci_dev;
--extern void pci_iounmap(struct pci_dev *dev, void __iomem *);
--#elif defined(CONFIG_GENERIC_IOMAP)
--struct pci_dev;
--static inline void pci_iounmap(struct pci_dev *dev, void __iomem *addr)
--{ }
--#endif
--
- #include <asm-generic/pci_iomap.h>
-
- #endif
---- a/include/asm-generic/pci_iomap.h
-+++ b/include/asm-generic/pci_iomap.h
-@@ -18,6 +18,7 @@ extern void __iomem *pci_iomap_range(str
- extern void __iomem *pci_iomap_wc_range(struct pci_dev *dev, int bar,
- unsigned long offset,
- unsigned long maxlen);
-+extern void pci_iounmap(struct pci_dev *dev, void __iomem *);
- /* Create a virtual mapping cookie for a port on a given PCI device.
- * Do not call this directly, it exists to make it easier for architectures
- * to override */
-@@ -50,6 +51,8 @@ static inline void __iomem *pci_iomap_wc
- {
- return NULL;
- }
-+static inline void pci_iounmap(struct pci_dev *dev, void __iomem *addr)
-+{ }
- #endif
-
- #endif /* __ASM_GENERIC_IO_H */