From cc927c9a3e0021648af355911dbb009ffd99424c Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 3 Jun 2003 02:41:07 -0700 Subject: [PATCH] PCI: make pci_setup_device(), pci_alloc_primary_bus() and pci_alloc_primary_bus_parented() static No one is calling these functions. --- include/linux/pci.h | 6 ------ 1 file changed, 6 deletions(-) (limited to 'include/linux') diff --git a/include/linux/pci.h b/include/linux/pci.h index fd6f80c5142d..b72da17b18ad 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -546,11 +546,6 @@ static inline struct pci_bus *pci_scan_bus(int bus, struct pci_ops *ops, void *s { return pci_scan_bus_parented(NULL, bus, ops, sysdata); } -struct pci_bus *pci_alloc_primary_bus_parented(struct device * parent, int bus); -static inline struct pci_bus *pci_alloc_primary_bus(int bus) -{ - return pci_alloc_primary_bus_parented(NULL, bus); -} int pci_scan_slot(struct pci_bus *bus, int devfn); void pci_bus_add_devices(struct pci_bus *bus); int pci_proc_attach_device(struct pci_dev *dev); @@ -561,7 +556,6 @@ void pci_name_device(struct pci_dev *dev); char *pci_class_name(u32 class); void pci_read_bridge_bases(struct pci_bus *child); struct resource *pci_find_parent_resource(const struct pci_dev *dev, struct resource *res); -int pci_setup_device(struct pci_dev *dev); int pci_get_interrupt_pin(struct pci_dev *dev, struct pci_dev **bridge); extern struct pci_dev *pci_get_dev(struct pci_dev *dev); extern void pci_put_dev(struct pci_dev *dev); -- cgit v1.2.3 From 9cc268e9647fe4b08cfb939ff7ac48ed67487eb1 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 3 Jun 2003 02:41:35 -0700 Subject: [PATCH] PCI: make pools_lock and pci_lock static. No one is using them outside the pci core. --- drivers/pci/access.c | 3 +-- drivers/pci/pool.c | 2 +- include/linux/pci.h | 2 -- 3 files changed, 2 insertions(+), 5 deletions(-) (limited to 'include/linux') diff --git a/drivers/pci/access.c b/drivers/pci/access.c index 9d8b4ee63756..e3f33efdfcf1 100644 --- a/drivers/pci/access.c +++ b/drivers/pci/access.c @@ -7,7 +7,7 @@ * configuration space. */ -spinlock_t pci_lock = SPIN_LOCK_UNLOCKED; +static spinlock_t pci_lock = SPIN_LOCK_UNLOCKED; /* * Wrappers for all PCI configuration access functions. They just check @@ -60,4 +60,3 @@ EXPORT_SYMBOL(pci_bus_read_config_dword); EXPORT_SYMBOL(pci_bus_write_config_byte); EXPORT_SYMBOL(pci_bus_write_config_word); EXPORT_SYMBOL(pci_bus_write_config_dword); -EXPORT_SYMBOL(pci_lock); diff --git a/drivers/pci/pool.c b/drivers/pci/pool.c index d9e1362a4a87..ce7067248eac 100644 --- a/drivers/pci/pool.c +++ b/drivers/pci/pool.c @@ -31,7 +31,7 @@ struct pci_page { /* cacheable header for 'allocation' bytes */ #define POOL_TIMEOUT_JIFFIES ((100 /* msec */ * HZ) / 1000) #define POOL_POISON_BYTE 0xa7 -DECLARE_MUTEX (pools_lock); +static DECLARE_MUTEX (pools_lock); static ssize_t show_pools (struct device *dev, char *buf) diff --git a/include/linux/pci.h b/include/linux/pci.h index b72da17b18ad..442e1da02dca 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -606,8 +606,6 @@ static inline int pci_write_config_dword(struct pci_dev *dev, int where, u32 val return pci_bus_write_config_dword (dev->bus, dev->devfn, where, val); } -extern spinlock_t pci_lock; - int pci_enable_device(struct pci_dev *dev); int pci_enable_device_bars(struct pci_dev *dev, int mask); void pci_disable_device(struct pci_dev *dev); -- cgit v1.2.3 From e1a2f13ec577a24d9b2b6c2f42235c7602f71e19 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 3 Jun 2003 08:48:45 -0700 Subject: [PATCH] PCI: Remove a lot of PCI core only functions from include/linux/pci.h --- drivers/pci/bus.c | 1 - drivers/pci/hotplug/acpiphp_glue.c | 1 + drivers/pci/hotplug/acpiphp_pci.c | 1 + drivers/pci/hotplug/cpci_hotplug_pci.c | 1 + drivers/pci/hotplug/cpqphp_pci.c | 1 + drivers/pci/hotplug/ibmphp_core.c | 1 + drivers/pci/pci.h | 44 +++++++++++++++++++++++++++++ drivers/pci/setup-res.c | 2 +- include/linux/pci.h | 51 ---------------------------------- 9 files changed, 50 insertions(+), 53 deletions(-) (limited to 'include/linux') diff --git a/drivers/pci/bus.c b/drivers/pci/bus.c index 9f176d9a6b1c..dda1e005bb08 100644 --- a/drivers/pci/bus.c +++ b/drivers/pci/bus.c @@ -129,6 +129,5 @@ void pci_enable_bridges(struct pci_bus *bus) } } -EXPORT_SYMBOL(pci_bus_alloc_resource); EXPORT_SYMBOL(pci_bus_add_devices); EXPORT_SYMBOL(pci_enable_bridges); diff --git a/drivers/pci/hotplug/acpiphp_glue.c b/drivers/pci/hotplug/acpiphp_glue.c index 42cf2749cf89..9ab2cda79548 100644 --- a/drivers/pci/hotplug/acpiphp_glue.c +++ b/drivers/pci/hotplug/acpiphp_glue.c @@ -34,6 +34,7 @@ #include #include +#include "../pci.h" #include "pci_hotplug.h" #include "acpiphp.h" diff --git a/drivers/pci/hotplug/acpiphp_pci.c b/drivers/pci/hotplug/acpiphp_pci.c index 5a5d24cc064f..6ebbb975d6f7 100644 --- a/drivers/pci/hotplug/acpiphp_pci.c +++ b/drivers/pci/hotplug/acpiphp_pci.c @@ -35,6 +35,7 @@ #include #include #include +#include "../pci.h" #include "pci_hotplug.h" #include "acpiphp.h" diff --git a/drivers/pci/hotplug/cpci_hotplug_pci.c b/drivers/pci/hotplug/cpci_hotplug_pci.c index b11615d7529a..9834f9357520 100644 --- a/drivers/pci/hotplug/cpci_hotplug_pci.c +++ b/drivers/pci/hotplug/cpci_hotplug_pci.c @@ -28,6 +28,7 @@ #include #include #include +#include "../pci.h" #include "pci_hotplug.h" #include "cpci_hotplug.h" diff --git a/drivers/pci/hotplug/cpqphp_pci.c b/drivers/pci/hotplug/cpqphp_pci.c index 9b3a3c4b387d..a30c5c42f8b2 100644 --- a/drivers/pci/hotplug/cpqphp_pci.c +++ b/drivers/pci/hotplug/cpqphp_pci.c @@ -34,6 +34,7 @@ #include #include #include +#include "../pci.h" #include "cpqphp.h" #include "cpqphp_nvram.h" #include "../../../arch/i386/pci/pci.h" /* horrible hack showing how processor dependent we are... */ diff --git a/drivers/pci/hotplug/ibmphp_core.c b/drivers/pci/hotplug/ibmphp_core.c index cff6a27a1679..aebcddcbefd5 100644 --- a/drivers/pci/hotplug/ibmphp_core.c +++ b/drivers/pci/hotplug/ibmphp_core.c @@ -35,6 +35,7 @@ #include #include #include +#include "../pci.h" #include "../../../arch/i386/pci/pci.h" /* for struct irq_routing_table */ #include "ibmphp.h" diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h index b6bffd1aefb8..ef631358a13c 100644 --- a/drivers/pci/pci.h +++ b/drivers/pci/pci.h @@ -3,3 +3,47 @@ extern int pci_hotplug (struct device *dev, char **envp, int num_envp, char *buffer, int buffer_size); extern void pci_create_sysfs_dev_files(struct pci_dev *pdev); +extern int pci_bus_alloc_resource(struct pci_bus *bus, struct resource *res, + unsigned long size, unsigned long align, + unsigned long min, unsigned int type_mask, + void (*alignf)(void *, struct resource *, + unsigned long, unsigned long), + void *alignf_data); +extern int pci_proc_attach_device(struct pci_dev *dev); +extern int pci_proc_detach_device(struct pci_dev *dev); +extern int pci_proc_attach_bus(struct pci_bus *bus); +extern int pci_proc_detach_bus(struct pci_bus *bus); + +/* Functions for PCI Hotplug drivers to use */ +extern struct pci_bus * pci_add_new_bus(struct pci_bus *parent, struct pci_dev *dev, int busnr); +extern unsigned int pci_do_scan_bus(struct pci_bus *bus); +extern void pci_remove_bus_device(struct pci_dev *dev); +extern int pci_remove_device_safe(struct pci_dev *dev); + +struct pci_dev_wrapped { + struct pci_dev *dev; + void *data; +}; + +struct pci_bus_wrapped { + struct pci_bus *bus; + void *data; +}; + +struct pci_visit { + int (* pre_visit_pci_bus) (struct pci_bus_wrapped *, + struct pci_dev_wrapped *); + int (* post_visit_pci_bus) (struct pci_bus_wrapped *, + struct pci_dev_wrapped *); + + int (* pre_visit_pci_dev) (struct pci_dev_wrapped *, + struct pci_bus_wrapped *); + int (* visit_pci_dev) (struct pci_dev_wrapped *, + struct pci_bus_wrapped *); + int (* post_visit_pci_dev) (struct pci_dev_wrapped *, + struct pci_bus_wrapped *); +}; + +extern int pci_visit_dev(struct pci_visit *fn, + struct pci_dev_wrapped *wrapped_dev, + struct pci_bus_wrapped *wrapped_parent); diff --git a/drivers/pci/setup-res.c b/drivers/pci/setup-res.c index 64343bc4833c..93238208b822 100644 --- a/drivers/pci/setup-res.c +++ b/drivers/pci/setup-res.c @@ -23,7 +23,7 @@ #include #include #include - +#include "pci.h" #define DEBUG_CONFIG 0 #if DEBUG_CONFIG diff --git a/include/linux/pci.h b/include/linux/pci.h index 442e1da02dca..9ef6bcb13d1a 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -548,10 +548,6 @@ static inline struct pci_bus *pci_scan_bus(int bus, struct pci_ops *ops, void *s } int pci_scan_slot(struct pci_bus *bus, int devfn); void pci_bus_add_devices(struct pci_bus *bus); -int pci_proc_attach_device(struct pci_dev *dev); -int pci_proc_detach_device(struct pci_dev *dev); -int pci_proc_attach_bus(struct pci_bus *bus); -int pci_proc_detach_bus(struct pci_bus *bus); void pci_name_device(struct pci_dev *dev); char *pci_class_name(u32 class); void pci_read_bridge_bases(struct pci_bus *child); @@ -640,24 +636,14 @@ int pci_request_region(struct pci_dev *, int, char *); void pci_release_region(struct pci_dev *, int); /* drivers/pci/bus.c */ - -int pci_bus_alloc_resource(struct pci_bus *bus, struct resource *res, - unsigned long size, unsigned long align, - unsigned long min, unsigned int type_mask, - void (*alignf)(void *, struct resource *, - unsigned long, unsigned long), - void *alignf_data); void pci_enable_bridges(struct pci_bus *bus); /* New-style probing supporting hot-pluggable devices */ int pci_register_driver(struct pci_driver *); void pci_unregister_driver(struct pci_driver *); -void pci_remove_bus_device(struct pci_dev *); void pci_remove_behind_bridge(struct pci_dev *); struct pci_driver *pci_dev_driver(const struct pci_dev *); const struct pci_device_id *pci_match_device(const struct pci_device_id *ids, const struct pci_dev *dev); -unsigned int pci_do_scan_bus(struct pci_bus *bus); -struct pci_bus * pci_add_new_bus(struct pci_bus *parent, struct pci_dev *dev, int busnr); int pci_scan_bridge(struct pci_bus *bus, struct pci_dev * dev, int max, int pass); /* kmem_cache style wrapper around pci_alloc_consistent() */ @@ -672,42 +658,6 @@ void pci_pool_free (struct pci_pool *pool, void *vaddr, dma_addr_t addr); extern struct pci_dev *isa_bridge; #endif -/* Some worker functions that PCI Hotplug drivers find useful */ -struct pci_dev_wrapped { - struct pci_dev *dev; - void *data; -}; - -struct pci_bus_wrapped { - struct pci_bus *bus; - void *data; -}; - -struct pci_visit { - int (* pre_visit_pci_bus) (struct pci_bus_wrapped *, - struct pci_dev_wrapped *); - int (* post_visit_pci_bus) (struct pci_bus_wrapped *, - struct pci_dev_wrapped *); - - int (* pre_visit_pci_dev) (struct pci_dev_wrapped *, - struct pci_bus_wrapped *); - int (* visit_pci_dev) (struct pci_dev_wrapped *, - struct pci_bus_wrapped *); - int (* post_visit_pci_dev) (struct pci_dev_wrapped *, - struct pci_bus_wrapped *); -}; - -extern int pci_visit_dev(struct pci_visit *fn, - struct pci_dev_wrapped *wrapped_dev, - struct pci_bus_wrapped *wrapped_parent); -extern int pci_remove_device_safe(struct pci_dev *dev); - -static inline void -pci_dynids_set_use_driver_data(struct pci_driver *pdrv, int val) -{ - pdrv->dynids.use_driver_data = val; -} - #endif /* CONFIG_PCI */ /* Include architecture-dependent settings and functions */ @@ -756,7 +706,6 @@ static inline void pci_unregister_driver(struct pci_driver *drv) { } static inline int scsi_to_pci_dma_dir(unsigned char scsi_dir) { return scsi_dir; } static inline int pci_find_capability (struct pci_dev *dev, int cap) {return 0; } static inline const struct pci_device_id *pci_match_device(const struct pci_device_id *ids, const struct pci_dev *dev) { return NULL; } -static inline void pci_dynids_set_use_driver_data(struct pci_driver *pdrv, int val) { } /* Power management related routines */ static inline int pci_save_state(struct pci_dev *dev, u32 *buffer) { return 0; } -- cgit v1.2.3 From 16360235e93f9f432e3b8da807d8be582f33c44d Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 3 Jun 2003 10:02:59 -0700 Subject: [PATCH] PCI: Move more functions out of include/linux/pci.h that don't need to be there. --- drivers/pci/pci.h | 4 ++++ include/linux/pci.h | 5 ----- 2 files changed, 4 insertions(+), 5 deletions(-) (limited to 'include/linux') diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h index 11dfcf3ed4cd..090a168fa8ef 100644 --- a/drivers/pci/pci.h +++ b/drivers/pci/pci.h @@ -27,6 +27,10 @@ extern struct pci_bus * pci_add_new_bus(struct pci_bus *parent, struct pci_dev * extern unsigned int pci_do_scan_bus(struct pci_bus *bus); extern void pci_remove_bus_device(struct pci_dev *dev); extern int pci_remove_device_safe(struct pci_dev *dev); +extern unsigned char pci_max_busnr(void); +extern unsigned char pci_bus_max_busnr(struct pci_bus *bus); +extern int pci_bus_find_capability (struct pci_bus *bus, unsigned int devfn, int cap); +extern struct pci_bus *pci_find_bus(unsigned char busnr); struct pci_dev_wrapped { struct pci_dev *dev; diff --git a/include/linux/pci.h b/include/linux/pci.h index 9ef6bcb13d1a..8cf85f8627d7 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -563,12 +563,8 @@ struct pci_dev *pci_find_subsys (unsigned int vendor, unsigned int device, unsigned int ss_vendor, unsigned int ss_device, const struct pci_dev *from); struct pci_dev *pci_find_class (unsigned int class, const struct pci_dev *from); -struct pci_bus *pci_find_bus(unsigned char busnr); struct pci_dev *pci_find_slot (unsigned int bus, unsigned int devfn); -unsigned char pci_bus_max_busnr(struct pci_bus* bus); -unsigned char pci_max_busnr(void); int pci_find_capability (struct pci_dev *dev, int cap); -int pci_bus_find_capability (struct pci_bus *bus, unsigned int devfn, int cap); int pci_bus_read_config_byte (struct pci_bus *bus, unsigned int devfn, int where, u8 *val); int pci_bus_read_config_word (struct pci_bus *bus, unsigned int devfn, int where, u16 *val); @@ -620,7 +616,6 @@ int pci_set_power_state(struct pci_dev *dev, int state); int pci_enable_wake(struct pci_dev *dev, u32 state, int enable); /* Helper functions for low-level code (drivers/pci/setup-[bus,res].c) */ - void pci_bus_assign_resources(struct pci_bus *bus); void pci_bus_size_bridges(struct pci_bus *bus); int pci_claim_resource(struct pci_dev *, int); -- cgit v1.2.3