PCI: Remove pci_get_legacy_ide_irq() and asm-generic/pci.h
authorStafford Horne <shorne@gmail.com>
Fri, 22 Jul 2022 21:49:41 +0000 (06:49 +0900)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 22 Jul 2022 22:23:45 +0000 (17:23 -0500)
pci_get_legacy_ide_irq() is only used on platforms that support PNP, so
many architectures define it but never use it.  Replace uses of it with
ATA_PRIMARY_IRQ() and ATA_SECONDARY_IRQ(), which provide the same
functionality.

Since pci_get_legacy_ide_irq() is no longer used, remove all the
architecture-specific definitions of it as well as asm-generic/pci.h, which
only provides pci_get_legacy_ide_irq()

[bhelgaas: commit log]
Co-developed-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20220722214944.831438-2-shorne@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Stafford Horne <shorne@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Pierre Morel <pmorel@linux.ibm.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
18 files changed:
arch/alpha/include/asm/pci.h
arch/arm/include/asm/pci.h
arch/arm64/include/asm/pci.h
arch/csky/include/asm/pci.h
arch/ia64/include/asm/pci.h
arch/m68k/include/asm/pci.h
arch/mips/include/asm/pci.h
arch/parisc/include/asm/pci.h
arch/powerpc/include/asm/pci.h
arch/riscv/include/asm/pci.h
arch/s390/include/asm/pci.h
arch/sh/include/asm/pci.h
arch/sparc/include/asm/pci.h
arch/um/include/asm/pci.h
arch/x86/include/asm/pci.h
arch/xtensa/include/asm/pci.h
drivers/pnp/resource.c
include/asm-generic/pci.h [deleted file]

index cf6bc1e64d66aa8939a70934c236ee81d2f7bfe3..6312656279d7940dcab061a87c25a4ddd80fccd2 100644 (file)
@@ -56,12 +56,6 @@ struct pci_controller {
 
 /* IOMMU controls.  */
 
-/* TODO: integrate with include/asm-generic/pci.h ? */
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? 15 : 14;
-}
-
 #define pci_domain_nr(bus) ((struct pci_controller *)(bus)->sysdata)->index
 
 static inline int pci_proc_domain(struct pci_bus *bus)
index 68e6f25784a4a85bdae684d2746169ece9d4a1b2..5916b88d4c94140606e71169346e2601f9e16e24 100644 (file)
@@ -22,11 +22,6 @@ static inline int pci_proc_domain(struct pci_bus *bus)
 #define HAVE_PCI_MMAP
 #define ARCH_GENERIC_PCI_MMAP_RESOURCE
 
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? 15 : 14;
-}
-
 extern void pcibios_report_status(unsigned int status_mask, int warn);
 
 #endif /* __KERNEL__ */
index b33ca260e3c9dff4fb4552386ea45c89cdf73cd5..0aebc3488c320c7bacfd628e03b3df394587cd37 100644 (file)
 extern int isa_dma_bridge_buggy;
 
 #ifdef CONFIG_PCI
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       /* no legacy IRQ on arm64 */
-       return -ENODEV;
-}
-
 static inline int pci_proc_domain(struct pci_bus *bus)
 {
        return 1;
index ebc765b1f78b5f1f71b9eded7da3f60d2fcf25e1..0535f1aaae38b9aea8302485b85d9b1b44ac19fc 100644 (file)
 extern int isa_dma_bridge_buggy;
 
 #ifdef CONFIG_PCI
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       /* no legacy IRQ on csky */
-       return -ENODEV;
-}
-
 static inline int pci_proc_domain(struct pci_bus *bus)
 {
        /* always show the domain in /proc */
index 8c163d1d01891a1f62eb17119a55b8b95a648016..fa8f545c24c957fa426de86dd2bf0061684ebc41 100644 (file)
@@ -63,10 +63,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
        return (pci_domain_nr(bus) != 0);
 }
 
-#define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? isa_irq_to_vector(15) : isa_irq_to_vector(14);
-}
-
 #endif /* _ASM_IA64_PCI_H */
index 5a4bc223743b6554213dac768662e045961f3005..ccdfa0dc8413cfa9b543100e25fa65892928f88d 100644 (file)
@@ -2,8 +2,6 @@
 #ifndef _ASM_M68K_PCI_H
 #define _ASM_M68K_PCI_H
 
-#include <asm-generic/pci.h>
-
 #define        pcibios_assign_all_busses()     1
 
 #define        PCIBIOS_MIN_IO          0x00000100
index 9ffc8192adae86d79434481997fad100917295e7..3fd6e22c108b415ecceac2f253faa29e32b9fb99 100644 (file)
@@ -139,10 +139,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
 /* Do platform specific device initialization at pci_enable_device() time */
 extern int pcibios_plat_dev_init(struct pci_dev *dev);
 
-/* Chances are this interrupt is wired PC-style ...  */
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? 15 : 14;
-}
-
 #endif /* _ASM_PCI_H */
index f14465b84de4abf0c8bf71f9dc94e88db618d531..127ed5021ae3e78ada7a45404635492266930e16 100644 (file)
@@ -162,11 +162,6 @@ extern void pcibios_init_bridge(struct pci_dev *);
 #define PCIBIOS_MIN_IO          0x10
 #define PCIBIOS_MIN_MEM         0x1000 /* NBPG - but pci/setup-res.c dies */
 
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? 15 : 14;
-}
-
 #define HAVE_PCI_MMAP
 #define ARCH_GENERIC_PCI_MMAP_RESOURCE
 
index 915d6ee4b40ac60b2a736fe06f8394595b036566..f9da506751bb9ef4c92b104923622377ac2404a6 100644 (file)
@@ -39,7 +39,6 @@
 #define pcibios_assign_all_busses() \
        (pci_has_flag(PCI_REASSIGN_ALL_BUS))
 
-#define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
 static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
 {
        if (ppc_md.pci_get_legacy_ide_irq)
index 7fd52a30e6058e040443860e59eb297794d090a8..a7b8f0d0df7f4ef4906f8213eda18989be552281 100644 (file)
 extern int isa_dma_bridge_buggy;
 
 #ifdef CONFIG_PCI
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       /* no legacy IRQ on risc-v */
-       return -ENODEV;
-}
-
 static inline int pci_proc_domain(struct pci_bus *bus)
 {
        /* always show the domain in /proc */
index fdb9745ee998f89f7295673d3c14956edaca9e7f..5889ddcbc37470140bef0bb38033b4804c602799 100644 (file)
@@ -6,7 +6,6 @@
 #include <linux/mutex.h>
 #include <linux/iommu.h>
 #include <linux/pci_hotplug.h>
-#include <asm-generic/pci.h>
 #include <asm/pci_clp.h>
 #include <asm/pci_debug.h>
 #include <asm/sclp.h>
index ad22e88c6657dc59b6e66e36eabe775873220257..54c30126ea17c39d2eba688f66535c2313440caa 100644 (file)
@@ -88,10 +88,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
        return hose->need_domain_info;
 }
 
-/* Chances are this interrupt is wired PC-style ...  */
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? 15 : 14;
-}
-
 #endif /* __ASM_SH_PCI_H */
index 4deddf430e5d18cae2710cf1d74ebdb2aaf170a6..0c58f65bd172440641c0edf893c5d18288cf01a2 100644 (file)
@@ -40,13 +40,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
 #define get_pci_unmapped_area get_fb_unmapped_area
 #endif /* CONFIG_SPARC64 */
 
-#if defined(CONFIG_SPARC64) || defined(CONFIG_LEON_PCI)
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return PCI_IRQ_NONE;
-}
-#else
-#include <asm-generic/pci.h>
-#endif
-
 #endif /* ___ASM_SPARC_PCI_H */
index da13fd5519ef9b939473935184efec31e73e9b29..26b96c02ef61ee2455ac39870afe5ea94da4793f 100644 (file)
 
 extern int isa_dma_bridge_buggy;
 
-#ifdef CONFIG_PCI
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       /* no legacy IRQs */
-       return -ENODEV;
-}
-#endif
-
 #ifdef CONFIG_PCI_DOMAINS
 static inline int pci_proc_domain(struct pci_bus *bus)
 {
index f3fd5928bcbb58d29ad1ad9fa02acf527669272f..736793d65bcb24ed1935529b6acc3f8e4e05d5fb 100644 (file)
@@ -105,9 +105,6 @@ static inline void early_quirks(void) { }
 
 extern void pci_iommu_alloc(void);
 
-/* generic pci stuff */
-#include <asm-generic/pci.h>
-
 #ifdef CONFIG_NUMA
 /* Returns the node based on pci bus */
 static inline int __pcibus_to_node(const struct pci_bus *bus)
index 8e2b48a268dbb361184e8b4e6ca4b9212f7b1034..b56de9635b6cc91a7e32724e41a38ac9f615e96e 100644 (file)
@@ -43,7 +43,4 @@
 #define ARCH_GENERIC_PCI_MMAP_RESOURCE 1
 #define arch_can_pci_mmap_io()         1
 
-/* Generic PCI */
-#include <asm-generic/pci.h>
-
 #endif /* _XTENSA_PCI_H */
index 2fa0f7d55259930b1ff31eb02f180aa0301ed071..8f7695624c8c3d539640ee3a2688b88d50043102 100644 (file)
@@ -17,6 +17,7 @@
 #include <asm/dma.h>
 #include <asm/irq.h>
 #include <linux/pci.h>
+#include <linux/libata.h>
 #include <linux/ioport.h>
 #include <linux/init.h>
 
@@ -322,8 +323,8 @@ static int pci_dev_uses_irq(struct pnp_dev *pnp, struct pci_dev *pci,
                 * treat the compatibility IRQs as busy.
                 */
                if ((progif & 0x5) != 0x5)
-                       if (pci_get_legacy_ide_irq(pci, 0) == irq ||
-                           pci_get_legacy_ide_irq(pci, 1) == irq) {
+                       if (ATA_PRIMARY_IRQ(pci) == irq ||
+                           ATA_SECONDARY_IRQ(pci) == irq) {
                                pnp_dbg(&pnp->dev, "  legacy IDE device %s "
                                        "using irq %d\n", pci_name(pci), irq);
                                return 1;
diff --git a/include/asm-generic/pci.h b/include/asm-generic/pci.h
deleted file mode 100644 (file)
index 6bb3cd3..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-/*
- * linux/include/asm-generic/pci.h
- *
- *  Copyright (C) 2003 Russell King
- */
-#ifndef _ASM_GENERIC_PCI_H
-#define _ASM_GENERIC_PCI_H
-
-#ifndef HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
-static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
-{
-       return channel ? 15 : 14;
-}
-#endif /* HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ */
-
-#endif /* _ASM_GENERIC_PCI_H */