PCI: Add Kconfig option to disable deprecated pci_find_* API

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Jeff Garzik 2007-10-29 09:48:09 -04:00 committed by Greg Kroah-Hartman
parent ccb9d59e68
commit bd3989e006
12 changed files with 52 additions and 26 deletions

View File

@ -109,7 +109,7 @@ config HISAX_16_3
config HISAX_TELESPCI config HISAX_TELESPCI
bool "Teles PCI" bool "Teles PCI"
depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) depends on PCI && PCI_LEGACY && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV))
help help
This enables HiSax support for the Teles PCI. This enables HiSax support for the Teles PCI.
See <file:Documentation/isdn/README.HiSax> on how to configure it. See <file:Documentation/isdn/README.HiSax> on how to configure it.
@ -237,7 +237,7 @@ config HISAX_MIC
config HISAX_NETJET config HISAX_NETJET
bool "NETjet card" bool "NETjet card"
depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) depends on PCI && PCI_LEGACY && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV))
help help
This enables HiSax support for the NetJet from Traverse This enables HiSax support for the NetJet from Traverse
Technologies. Technologies.
@ -248,7 +248,7 @@ config HISAX_NETJET
config HISAX_NETJET_U config HISAX_NETJET_U
bool "NETspider U card" bool "NETspider U card"
depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) depends on PCI && PCI_LEGACY && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV))
help help
This enables HiSax support for the Netspider U interface ISDN card This enables HiSax support for the Netspider U interface ISDN card
from Traverse Technologies. from Traverse Technologies.
@ -287,7 +287,7 @@ config HISAX_HSTSAPHIR
config HISAX_BKM_A4T config HISAX_BKM_A4T
bool "Telekom A4T card" bool "Telekom A4T card"
depends on PCI depends on PCI && PCI_LEGACY
help help
This enables HiSax support for the Telekom A4T card. This enables HiSax support for the Telekom A4T card.
@ -297,7 +297,7 @@ config HISAX_BKM_A4T
config HISAX_SCT_QUADRO config HISAX_SCT_QUADRO
bool "Scitel Quadro card" bool "Scitel Quadro card"
depends on PCI depends on PCI && PCI_LEGACY
help help
This enables HiSax support for the Scitel Quadro card. This enables HiSax support for the Scitel Quadro card.
@ -316,7 +316,7 @@ config HISAX_GAZEL
config HISAX_HFC_PCI config HISAX_HFC_PCI
bool "HFC PCI-Bus cards" bool "HFC PCI-Bus cards"
depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) depends on PCI && PCI_LEGACY && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV))
help help
This enables HiSax support for the HFC-S PCI 2BDS0 based cards. This enables HiSax support for the HFC-S PCI 2BDS0 based cards.
@ -325,7 +325,7 @@ config HISAX_HFC_PCI
config HISAX_W6692 config HISAX_W6692
bool "Winbond W6692 based cards" bool "Winbond W6692 based cards"
depends on PCI depends on PCI && PCI_LEGACY
help help
This enables HiSax support for Winbond W6692 based PCI ISDN cards. This enables HiSax support for Winbond W6692 based PCI ISDN cards.
@ -341,7 +341,7 @@ config HISAX_HFC_SX
config HISAX_ENTERNOW_PCI config HISAX_ENTERNOW_PCI
bool "Formula-n enter:now PCI card" bool "Formula-n enter:now PCI card"
depends on HISAX_NETJET && PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) depends on HISAX_NETJET && PCI && PCI_LEGACY && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV))
help help
This enables HiSax support for the Formula-n enter:now PCI This enables HiSax support for the Formula-n enter:now PCI
ISDN card. ISDN card.
@ -411,7 +411,7 @@ config HISAX_HFC4S8S
config HISAX_FRITZ_PCIPNP config HISAX_FRITZ_PCIPNP
tristate "AVM Fritz!Card PCI/PCIv2/PnP support (EXPERIMENTAL)" tristate "AVM Fritz!Card PCI/PCIv2/PnP support (EXPERIMENTAL)"
depends on PCI && EXPERIMENTAL depends on PCI && PCI_LEGACY && EXPERIMENTAL
help help
This enables the driver for the AVM Fritz!Card PCI, This enables the driver for the AVM Fritz!Card PCI,
Fritz!Card PCI v2 and Fritz!Card PnP. Fritz!Card PCI v2 and Fritz!Card PnP.

View File

@ -830,7 +830,7 @@ static int __devinit avm_pnp_setup(struct IsdnCardState *cs)
#endif /* __ISAPNP__ */ #endif /* __ISAPNP__ */
#ifndef CONFIG_PCI #ifndef CONFIG_PCI_LEGACY
static int __devinit avm_pci_setup(struct IsdnCardState *cs) static int __devinit avm_pci_setup(struct IsdnCardState *cs)
{ {
@ -872,7 +872,7 @@ static int __devinit avm_pci_setup(struct IsdnCardState *cs)
return (1); return (1);
} }
#endif /* CONFIG_PCI */ #endif /* CONFIG_PCI_LEGACY */
int __devinit int __devinit
setup_avm_pcipnp(struct IsdnCard *card) setup_avm_pcipnp(struct IsdnCard *card)

View File

@ -1148,7 +1148,7 @@ static int __devinit setup_diva_isapnp(struct IsdnCard *card)
#endif /* ISAPNP */ #endif /* ISAPNP */
#ifdef CONFIG_PCI #ifdef CONFIG_PCI_LEGACY
static struct pci_dev *dev_diva __devinitdata = NULL; static struct pci_dev *dev_diva __devinitdata = NULL;
static struct pci_dev *dev_diva_u __devinitdata = NULL; static struct pci_dev *dev_diva_u __devinitdata = NULL;
static struct pci_dev *dev_diva201 __devinitdata = NULL; static struct pci_dev *dev_diva201 __devinitdata = NULL;
@ -1229,14 +1229,14 @@ static int __devinit setup_diva_pci(struct IsdnCard *card)
return (1); /* card found */ return (1); /* card found */
} }
#else /* if !CONFIG_PCI */ #else /* if !CONFIG_PCI_LEGACY */
static int __devinit setup_diva_pci(struct IsdnCard *card) static int __devinit setup_diva_pci(struct IsdnCard *card)
{ {
return (-1); /* card not found; continue search */ return (-1); /* card not found; continue search */
} }
#endif /* CONFIG_PCI */ #endif /* CONFIG_PCI_LEGACY */
int __devinit int __devinit
setup_diva(struct IsdnCard *card) setup_diva(struct IsdnCard *card)

View File

@ -1025,7 +1025,7 @@ setup_elsa_pcmcia(struct IsdnCard *card)
cs->irq); cs->irq);
} }
#ifdef CONFIG_PCI #ifdef CONFIG_PCI_LEGACY
static struct pci_dev *dev_qs1000 __devinitdata = NULL; static struct pci_dev *dev_qs1000 __devinitdata = NULL;
static struct pci_dev *dev_qs3000 __devinitdata = NULL; static struct pci_dev *dev_qs3000 __devinitdata = NULL;
@ -1093,7 +1093,7 @@ setup_elsa_pci(struct IsdnCard *card)
{ {
return (1); return (1);
} }
#endif /* CONFIG_PCI */ #endif /* CONFIG_PCI_LEGACY */
static int __devinit static int __devinit
setup_elsa_common(struct IsdnCard *card) setup_elsa_common(struct IsdnCard *card)

View File

@ -532,6 +532,7 @@ setup_gazelisa(struct IsdnCard *card, struct IsdnCardState *cs)
return (0); return (0);
} }
#ifdef CONFIG_PCI_LEGACY
static struct pci_dev *dev_tel __devinitdata = NULL; static struct pci_dev *dev_tel __devinitdata = NULL;
static int __devinit static int __devinit
@ -620,6 +621,7 @@ setup_gazelpci(struct IsdnCardState *cs)
return (0); return (0);
} }
#endif /* CONFIG_PCI_LEGACY */
int __devinit int __devinit
setup_gazel(struct IsdnCard *card) setup_gazel(struct IsdnCard *card)
@ -639,7 +641,7 @@ setup_gazel(struct IsdnCard *card)
return (0); return (0);
} else { } else {
#ifdef CONFIG_PCI #ifdef CONFIG_PCI_LEGACY
if (setup_gazelpci(cs)) if (setup_gazelpci(cs))
return (0); return (0);
#else #else

View File

@ -223,7 +223,6 @@ static int niccy_card_msg(struct IsdnCardState *cs, int mt, void *arg)
return 0; return 0;
} }
static struct pci_dev *niccy_dev __devinitdata = NULL;
#ifdef __ISAPNP__ #ifdef __ISAPNP__
static struct pnp_card *pnp_c __devinitdata = NULL; static struct pnp_card *pnp_c __devinitdata = NULL;
#endif #endif
@ -299,7 +298,9 @@ int __devinit setup_niccy(struct IsdnCard *card)
return 0; return 0;
} }
} else { } else {
#ifdef CONFIG_PCI #ifdef CONFIG_PCI_LEGACY
static struct pci_dev *niccy_dev __devinitdata;
u_int pci_ioaddr; u_int pci_ioaddr;
cs->subtyp = 0; cs->subtyp = 0;
if ((niccy_dev = pci_find_device(PCI_VENDOR_ID_SATSAGEM, if ((niccy_dev = pci_find_device(PCI_VENDOR_ID_SATSAGEM,
@ -356,7 +357,7 @@ int __devinit setup_niccy(struct IsdnCard *card)
printk(KERN_WARNING "Niccy: io0 0 and NO_PCI_BIOS\n"); printk(KERN_WARNING "Niccy: io0 0 and NO_PCI_BIOS\n");
printk(KERN_WARNING "Niccy: unable to config NICCY PCI\n"); printk(KERN_WARNING "Niccy: unable to config NICCY PCI\n");
return 0; return 0;
#endif /* CONFIG_PCI */ #endif /* CONFIG_PCI_LEGACY */
} }
printk(KERN_INFO "HiSax: %s %s config irq:%d data:0x%X ale:0x%X\n", printk(KERN_INFO "HiSax: %s %s config irq:%d data:0x%X ale:0x%X\n",
CardType[cs->typ], (cs->subtyp == 1) ? "PnP" : "PCI", CardType[cs->typ], (cs->subtyp == 1) ? "PnP" : "PCI",

View File

@ -600,7 +600,7 @@ setup_sedlbauer_isapnp(struct IsdnCard *card, int *bytecnt)
} }
#endif /* __ISAPNP__ */ #endif /* __ISAPNP__ */
#ifdef CONFIG_PCI #ifdef CONFIG_PCI_LEGACY
static struct pci_dev *dev_sedl __devinitdata = NULL; static struct pci_dev *dev_sedl __devinitdata = NULL;
static int __devinit static int __devinit
@ -675,7 +675,7 @@ setup_sedlbauer_pci(struct IsdnCard *card)
return (1); return (1);
} }
#endif /* CONFIG_PCI */ #endif /* CONFIG_PCI_LEGACY */
int __devinit int __devinit
setup_sedlbauer(struct IsdnCard *card) setup_sedlbauer(struct IsdnCard *card)

View File

@ -21,6 +21,17 @@ config PCI_MSI
If you don't know what to do here, say N. If you don't know what to do here, say N.
config PCI_LEGACY
bool "Enable deprecated pci_find_* API"
depends on PCI
default y
help
Say Y here if you want to include support for the deprecated
pci_find_slot() and pci_find_device() APIs. Most drivers have
been converted over to using the proper hotplug APIs, so this
option serves to include/exclude only a few drivers that are
still using this API.
config PCI_DEBUG config PCI_DEBUG
bool "PCI Debugging" bool "PCI Debugging"
depends on PCI && DEBUG_KERNEL depends on PCI && DEBUG_KERNEL

View File

@ -41,7 +41,7 @@ config HOTPLUG_PCI_FAKE
config HOTPLUG_PCI_COMPAQ config HOTPLUG_PCI_COMPAQ
tristate "Compaq PCI Hotplug driver" tristate "Compaq PCI Hotplug driver"
depends on X86 && PCI_BIOS depends on X86 && PCI_BIOS && PCI_LEGACY
help help
Say Y here if you have a motherboard with a Compaq PCI Hotplug Say Y here if you have a motherboard with a Compaq PCI Hotplug
controller. controller.
@ -63,7 +63,7 @@ config HOTPLUG_PCI_COMPAQ_NVRAM
config HOTPLUG_PCI_IBM config HOTPLUG_PCI_IBM
tristate "IBM PCI Hotplug driver" tristate "IBM PCI Hotplug driver"
depends on X86_IO_APIC && X86 && PCI_BIOS depends on X86_IO_APIC && X86 && PCI_BIOS && PCI_LEGACY
help help
Say Y here if you have a motherboard with a IBM PCI Hotplug Say Y here if you have a motherboard with a IBM PCI Hotplug
controller. controller.
@ -119,7 +119,7 @@ config HOTPLUG_PCI_CPCI_ZT5550
config HOTPLUG_PCI_CPCI_GENERIC config HOTPLUG_PCI_CPCI_GENERIC
tristate "Generic port I/O CompactPCI Hotplug driver" tristate "Generic port I/O CompactPCI Hotplug driver"
depends on HOTPLUG_PCI_CPCI && X86 depends on HOTPLUG_PCI_CPCI && X86 && PCI_LEGACY
help help
Say Y here if you have a CompactPCI system card that exposes the #ENUM Say Y here if you have a CompactPCI system card that exposes the #ENUM
hotswap signal as a bit in a system register that can be read through hotswap signal as a bit in a system register that can be read through

View File

@ -113,6 +113,8 @@ pci_find_next_bus(const struct pci_bus *from)
return b; return b;
} }
#ifdef CONFIG_PCI_LEGACY
/** /**
* pci_find_slot - locate PCI device from a given PCI slot * pci_find_slot - locate PCI device from a given PCI slot
* @bus: number of PCI bus on which desired PCI device resides * @bus: number of PCI bus on which desired PCI device resides
@ -137,6 +139,8 @@ pci_find_slot(unsigned int bus, unsigned int devfn)
return NULL; return NULL;
} }
#endif /* CONFIG_PCI_LEGACY */
/** /**
* pci_get_slot - locate PCI device for a given PCI slot * pci_get_slot - locate PCI device for a given PCI slot
* @bus: PCI bus on which desired PCI device resides * @bus: PCI bus on which desired PCI device resides
@ -200,6 +204,7 @@ struct pci_dev * pci_get_bus_and_slot(unsigned int bus, unsigned int devfn)
return NULL; return NULL;
} }
#ifdef CONFIG_PCI_LEGACY
/** /**
* pci_find_subsys - begin or continue searching for a PCI device by vendor/subvendor/device/subdevice id * pci_find_subsys - begin or continue searching for a PCI device by vendor/subvendor/device/subdevice id
* @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids * @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids
@ -278,6 +283,7 @@ pci_find_device(unsigned int vendor, unsigned int device, const struct pci_dev *
{ {
return pci_find_subsys(vendor, device, PCI_ANY_ID, PCI_ANY_ID, from); return pci_find_subsys(vendor, device, PCI_ANY_ID, PCI_ANY_ID, from);
} }
#endif /* CONFIG_PCI_LEGACY */
/** /**
* pci_get_subsys - begin or continue searching for a PCI device by vendor/subvendor/device/subdevice id * pci_get_subsys - begin or continue searching for a PCI device by vendor/subvendor/device/subdevice id
@ -468,8 +474,11 @@ int pci_dev_present(const struct pci_device_id *ids)
EXPORT_SYMBOL(pci_dev_present); EXPORT_SYMBOL(pci_dev_present);
EXPORT_SYMBOL(pci_find_present); EXPORT_SYMBOL(pci_find_present);
#ifdef CONFIG_PCI_LEGACY
EXPORT_SYMBOL(pci_find_device); EXPORT_SYMBOL(pci_find_device);
EXPORT_SYMBOL(pci_find_slot); EXPORT_SYMBOL(pci_find_slot);
#endif /* CONFIG_PCI_LEGACY */
/* For boot time work */ /* For boot time work */
EXPORT_SYMBOL(pci_find_bus); EXPORT_SYMBOL(pci_find_bus);
EXPORT_SYMBOL(pci_find_next_bus); EXPORT_SYMBOL(pci_find_next_bus);

View File

@ -725,7 +725,7 @@ config SCSI_FD_MCS
config SCSI_GDTH config SCSI_GDTH
tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support" tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support"
depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API && PCI_LEGACY
---help--- ---help---
Formerly called GDT SCSI Disk Array Controller Support. Formerly called GDT SCSI Disk Array Controller Support.

View File

@ -488,8 +488,11 @@ extern void pci_sort_breadthfirst(void);
/* Generic PCI functions exported to card drivers */ /* Generic PCI functions exported to card drivers */
#ifdef CONFIG_PCI_LEGACY
struct pci_dev __deprecated *pci_find_device (unsigned int vendor, unsigned int device, const struct pci_dev *from); struct pci_dev __deprecated *pci_find_device (unsigned int vendor, unsigned int device, const struct pci_dev *from);
struct pci_dev __deprecated *pci_find_slot (unsigned int bus, unsigned int devfn); struct pci_dev __deprecated *pci_find_slot (unsigned int bus, unsigned int devfn);
#endif /* CONFIG_PCI_LEGACY */
int pci_find_capability (struct pci_dev *dev, int cap); int pci_find_capability (struct pci_dev *dev, int cap);
int pci_find_next_capability (struct pci_dev *dev, u8 pos, int cap); int pci_find_next_capability (struct pci_dev *dev, u8 pos, int cap);
int pci_find_ext_capability (struct pci_dev *dev, int cap); int pci_find_ext_capability (struct pci_dev *dev, int cap);