mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-04-01 11:54:10 +00:00
PCI: Turn pcibios_penalize_isa_irq() into a weak function
pcibios_penalize_isa_irq() is only implemented by x86 now, and legacy ISA is not used by some architectures. Make pcibios_penalize_isa_irq() a __weak function to simplify the code. This removes the need for new platforms to add stub implementations of pcibios_penalize_isa_irq(). [bhelgaas: changelog, comments] Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
78916b00f0
commit
a43ae58c84
21 changed files with 12 additions and 79 deletions
|
@ -59,11 +59,6 @@ struct pci_controller {
|
||||||
|
|
||||||
extern void pcibios_set_master(struct pci_dev *dev);
|
extern void pcibios_set_master(struct pci_dev *dev);
|
||||||
|
|
||||||
extern inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* IOMMU controls. */
|
/* IOMMU controls. */
|
||||||
|
|
||||||
/* The PCI address space does not equal the physical memory address space.
|
/* The PCI address space does not equal the physical memory address space.
|
||||||
|
|
|
@ -31,11 +31,6 @@ static inline int pci_proc_domain(struct pci_bus *bus)
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_PCI_DOMAINS */
|
#endif /* CONFIG_PCI_DOMAINS */
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The PCI address space does equal the physical memory address space.
|
* The PCI address space does equal the physical memory address space.
|
||||||
* The networking and block device layers use this boolean for bounce
|
* The networking and block device layers use this boolean for bounce
|
||||||
|
|
|
@ -10,9 +10,4 @@
|
||||||
#define PCIBIOS_MIN_IO 0x00001000
|
#define PCIBIOS_MIN_IO 0x00001000
|
||||||
#define PCIBIOS_MIN_MEM 0x10000000
|
#define PCIBIOS_MIN_MEM 0x10000000
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* _ASM_BFIN_PCI_H */
|
#endif /* _ASM_BFIN_PCI_H */
|
||||||
|
|
|
@ -20,7 +20,6 @@ void pcibios_config_init(void);
|
||||||
struct pci_bus * pcibios_scan_root(int bus);
|
struct pci_bus * pcibios_scan_root(int bus);
|
||||||
|
|
||||||
void pcibios_set_master(struct pci_dev *dev);
|
void pcibios_set_master(struct pci_dev *dev);
|
||||||
void pcibios_penalize_isa_irq(int irq);
|
|
||||||
struct irq_routing_table *pcibios_get_irq_routing_table(void);
|
struct irq_routing_table *pcibios_get_irq_routing_table(void);
|
||||||
int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq);
|
int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq);
|
||||||
|
|
||||||
|
|
|
@ -24,8 +24,6 @@ struct pci_dev;
|
||||||
|
|
||||||
extern void pcibios_set_master(struct pci_dev *dev);
|
extern void pcibios_set_master(struct pci_dev *dev);
|
||||||
|
|
||||||
extern void pcibios_penalize_isa_irq(int irq);
|
|
||||||
|
|
||||||
#ifdef CONFIG_MMU
|
#ifdef CONFIG_MMU
|
||||||
extern void *consistent_alloc(gfp_t gfp, size_t size, dma_addr_t *dma_handle);
|
extern void *consistent_alloc(gfp_t gfp, size_t size, dma_addr_t *dma_handle);
|
||||||
extern void consistent_free(void *vaddr);
|
extern void consistent_free(void *vaddr);
|
||||||
|
|
|
@ -55,10 +55,6 @@ void __init pcibios_fixup_irqs(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void __init pcibios_penalize_isa_irq(int irq)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void pcibios_enable_irq(struct pci_dev *dev)
|
void pcibios_enable_irq(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
|
pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
|
||||||
|
|
|
@ -50,12 +50,6 @@ struct pci_dev;
|
||||||
extern unsigned long ia64_max_iommu_merge_mask;
|
extern unsigned long ia64_max_iommu_merge_mask;
|
||||||
#define PCI_DMA_BUS_IS_PHYS (ia64_max_iommu_merge_mask == ~0UL)
|
#define PCI_DMA_BUS_IS_PHYS (ia64_max_iommu_merge_mask == ~0UL)
|
||||||
|
|
||||||
static inline void
|
|
||||||
pcibios_penalize_isa_irq (int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
#include <asm-generic/pci-dma-compat.h>
|
#include <asm-generic/pci-dma-compat.h>
|
||||||
|
|
||||||
#ifdef CONFIG_PCI
|
#ifdef CONFIG_PCI
|
||||||
|
|
|
@ -44,11 +44,6 @@ struct pci_dev;
|
||||||
*/
|
*/
|
||||||
#define pcibios_assign_all_busses() 0
|
#define pcibios_assign_all_busses() 0
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef CONFIG_PCI
|
#ifdef CONFIG_PCI
|
||||||
extern void set_pci_dma_ops(struct dma_map_ops *dma_ops);
|
extern void set_pci_dma_ops(struct dma_map_ops *dma_ops);
|
||||||
extern struct dma_map_ops *get_pci_dma_ops(void);
|
extern struct dma_map_ops *get_pci_dma_ops(void);
|
||||||
|
|
|
@ -73,11 +73,6 @@ extern unsigned long PCIBIOS_MIN_MEM;
|
||||||
|
|
||||||
extern void pcibios_set_master(struct pci_dev *dev);
|
extern void pcibios_set_master(struct pci_dev *dev);
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
#define HAVE_PCI_MMAP
|
#define HAVE_PCI_MMAP
|
||||||
|
|
||||||
extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
||||||
|
|
|
@ -48,7 +48,6 @@ extern void unit_pci_init(void);
|
||||||
#define PCIBIOS_MIN_MEM 0xB8000000
|
#define PCIBIOS_MIN_MEM 0xB8000000
|
||||||
|
|
||||||
void pcibios_set_master(struct pci_dev *dev);
|
void pcibios_set_master(struct pci_dev *dev);
|
||||||
void pcibios_penalize_isa_irq(int irq);
|
|
||||||
|
|
||||||
/* Dynamic DMA mapping stuff.
|
/* Dynamic DMA mapping stuff.
|
||||||
* i386 has everything mapped statically.
|
* i386 has everything mapped statically.
|
||||||
|
|
|
@ -40,10 +40,6 @@ void __init pcibios_fixup_irqs(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void __init pcibios_penalize_isa_irq(int irq)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void pcibios_enable_irq(struct pci_dev *dev)
|
void pcibios_enable_irq(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
|
pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
|
||||||
|
|
|
@ -215,11 +215,6 @@ static inline void pci_dma_burst_advice(struct pci_dev *pdev,
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't need to penalize isa irq's */
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||||
{
|
{
|
||||||
return channel ? 15 : 14;
|
return channel ? 15 : 14;
|
||||||
|
|
|
@ -46,11 +46,6 @@ struct pci_dev;
|
||||||
#define pcibios_assign_all_busses() \
|
#define pcibios_assign_all_busses() \
|
||||||
(pci_has_flag(PCI_REASSIGN_ALL_BUS))
|
(pci_has_flag(PCI_REASSIGN_ALL_BUS))
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
#define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
|
#define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
|
||||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||||
{
|
{
|
||||||
|
|
|
@ -70,11 +70,6 @@ extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
||||||
enum pci_mmap_state mmap_state, int write_combine);
|
enum pci_mmap_state mmap_state, int write_combine);
|
||||||
extern void pcibios_set_master(struct pci_dev *dev);
|
extern void pcibios_set_master(struct pci_dev *dev);
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Dynamic DMA mapping stuff.
|
/* Dynamic DMA mapping stuff.
|
||||||
* SuperH has everything mapped statically like x86.
|
* SuperH has everything mapped statically like x86.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -16,11 +16,6 @@
|
||||||
|
|
||||||
#define PCI_IRQ_NONE 0xffffffff
|
#define PCI_IRQ_NONE 0xffffffff
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Dynamic DMA mapping stuff.
|
/* Dynamic DMA mapping stuff.
|
||||||
*/
|
*/
|
||||||
#define PCI_DMA_BUS_IS_PHYS (0)
|
#define PCI_DMA_BUS_IS_PHYS (0)
|
||||||
|
|
|
@ -16,11 +16,6 @@
|
||||||
|
|
||||||
#define PCI_IRQ_NONE 0xffffffff
|
#define PCI_IRQ_NONE 0xffffffff
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The PCI address space does not equal the physical memory
|
/* The PCI address space does not equal the physical memory
|
||||||
* address space. The networking and block device layers use
|
* address space. The networking and block device layers use
|
||||||
* this boolean for bounce buffer decisions.
|
* this boolean for bounce buffer decisions.
|
||||||
|
|
|
@ -18,11 +18,6 @@
|
||||||
#include <asm-generic/pci.h>
|
#include <asm-generic/pci.h>
|
||||||
#include <mach/hardware.h> /* for PCIBIOS_MIN_* */
|
#include <mach/hardware.h> /* for PCIBIOS_MIN_* */
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq, int active)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef CONFIG_PCI
|
#ifdef CONFIG_PCI
|
||||||
static inline void pci_dma_burst_advice(struct pci_dev *pdev,
|
static inline void pci_dma_burst_advice(struct pci_dev *pdev,
|
||||||
enum pci_dma_burst_strategy *strat,
|
enum pci_dma_burst_strategy *strat,
|
||||||
|
|
|
@ -68,7 +68,6 @@ void pcibios_config_init(void);
|
||||||
void pcibios_scan_root(int bus);
|
void pcibios_scan_root(int bus);
|
||||||
|
|
||||||
void pcibios_set_master(struct pci_dev *dev);
|
void pcibios_set_master(struct pci_dev *dev);
|
||||||
void pcibios_penalize_isa_irq(int irq, int active);
|
|
||||||
struct irq_routing_table *pcibios_get_irq_routing_table(void);
|
struct irq_routing_table *pcibios_get_irq_routing_table(void);
|
||||||
int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq);
|
int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq);
|
||||||
|
|
||||||
|
|
|
@ -22,11 +22,6 @@
|
||||||
|
|
||||||
extern struct pci_controller* pcibios_alloc_controller(void);
|
extern struct pci_controller* pcibios_alloc_controller(void);
|
||||||
|
|
||||||
static inline void pcibios_penalize_isa_irq(int irq)
|
|
||||||
{
|
|
||||||
/* We don't do dynamic PCI IRQ allocation */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Assume some values. (We should revise them, if necessary) */
|
/* Assume some values. (We should revise them, if necessary) */
|
||||||
|
|
||||||
#define PCIBIOS_MIN_IO 0x2000
|
#define PCIBIOS_MIN_IO 0x2000
|
||||||
|
|
|
@ -1468,6 +1468,17 @@ void __weak pcibios_release_device(struct pci_dev *dev) {}
|
||||||
*/
|
*/
|
||||||
void __weak pcibios_disable_device (struct pci_dev *dev) {}
|
void __weak pcibios_disable_device (struct pci_dev *dev) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pcibios_penalize_isa_irq - penalize an ISA IRQ
|
||||||
|
* @irq: ISA IRQ to penalize
|
||||||
|
* @active: IRQ active or not
|
||||||
|
*
|
||||||
|
* Permits the platform to provide architecture-specific functionality when
|
||||||
|
* penalizing ISA IRQs. This is the default implementation. Architecture
|
||||||
|
* implementations can override this.
|
||||||
|
*/
|
||||||
|
void __weak pcibios_penalize_isa_irq(int irq, int active) {}
|
||||||
|
|
||||||
static void do_pci_disable_device(struct pci_dev *dev)
|
static void do_pci_disable_device(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
u16 pci_command;
|
u16 pci_command;
|
||||||
|
|
|
@ -1578,6 +1578,7 @@ int pcibios_set_pcie_reset_state(struct pci_dev *dev,
|
||||||
enum pcie_reset_state state);
|
enum pcie_reset_state state);
|
||||||
int pcibios_add_device(struct pci_dev *dev);
|
int pcibios_add_device(struct pci_dev *dev);
|
||||||
void pcibios_release_device(struct pci_dev *dev);
|
void pcibios_release_device(struct pci_dev *dev);
|
||||||
|
void pcibios_penalize_isa_irq(int irq, int active);
|
||||||
|
|
||||||
#ifdef CONFIG_HIBERNATE_CALLBACKS
|
#ifdef CONFIG_HIBERNATE_CALLBACKS
|
||||||
extern struct dev_pm_ops pcibios_pm_ops;
|
extern struct dev_pm_ops pcibios_pm_ops;
|
||||||
|
|
Loading…
Add table
Reference in a new issue