diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2005-08-29 16:40:27 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-08-29 16:40:27 -0400 |
commit | c1b054d03f5b31c33eaa0b267c629b118eaf3790 (patch) | |
tree | 9333907ca767be24fcb3667877242976c3e3c8dd /include/asm-ppc64/pci.h | |
parent | 559fb51ba7e66fe298b8355fabde1275b7def35f (diff) | |
parent | bf4e70e54cf31dcca48d279c7f7e71328eebe749 (diff) |
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'include/asm-ppc64/pci.h')
-rw-r--r-- | include/asm-ppc64/pci.h | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/include/asm-ppc64/pci.h b/include/asm-ppc64/pci.h index 6cd593f660a0..4d057452f59b 100644 --- a/include/asm-ppc64/pci.h +++ b/include/asm-ppc64/pci.h | |||
@@ -37,7 +37,7 @@ static inline void pcibios_set_master(struct pci_dev *dev) | |||
37 | /* No special bus mastering setup handling */ | 37 | /* No special bus mastering setup handling */ |
38 | } | 38 | } |
39 | 39 | ||
40 | static inline void pcibios_penalize_isa_irq(int irq) | 40 | static inline void pcibios_penalize_isa_irq(int irq, int active) |
41 | { | 41 | { |
42 | /* We don't do dynamic PCI IRQ allocation */ | 42 | /* We don't do dynamic PCI IRQ allocation */ |
43 | } | 43 | } |
@@ -78,6 +78,25 @@ static inline int pci_dac_dma_supported(struct pci_dev *hwdev,u64 mask) | |||
78 | return 0; | 78 | return 0; |
79 | } | 79 | } |
80 | 80 | ||
81 | #ifdef CONFIG_PCI | ||
82 | static inline void pci_dma_burst_advice(struct pci_dev *pdev, | ||
83 | enum pci_dma_burst_strategy *strat, | ||
84 | unsigned long *strategy_parameter) | ||
85 | { | ||
86 | unsigned long cacheline_size; | ||
87 | u8 byte; | ||
88 | |||
89 | pci_read_config_byte(pdev, PCI_CACHE_LINE_SIZE, &byte); | ||
90 | if (byte == 0) | ||
91 | cacheline_size = 1024; | ||
92 | else | ||
93 | cacheline_size = (int) byte * 4; | ||
94 | |||
95 | *strat = PCI_DMA_BURST_MULTIPLE; | ||
96 | *strategy_parameter = cacheline_size; | ||
97 | } | ||
98 | #endif | ||
99 | |||
81 | extern int pci_domain_nr(struct pci_bus *bus); | 100 | extern int pci_domain_nr(struct pci_bus *bus); |
82 | 101 | ||
83 | /* Decide whether to display the domain number in /proc */ | 102 | /* Decide whether to display the domain number in /proc */ |
@@ -115,6 +134,10 @@ extern void | |||
115 | pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region, | 134 | pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region, |
116 | struct resource *res); | 135 | struct resource *res); |
117 | 136 | ||
137 | extern void | ||
138 | pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res, | ||
139 | struct pci_bus_region *region); | ||
140 | |||
118 | extern int | 141 | extern int |
119 | unmap_bus_range(struct pci_bus *bus); | 142 | unmap_bus_range(struct pci_bus *bus); |
120 | 143 | ||
@@ -136,6 +159,13 @@ extern pgprot_t pci_phys_mem_access_prot(struct file *file, | |||
136 | unsigned long size, | 159 | unsigned long size, |
137 | pgprot_t prot); | 160 | pgprot_t prot); |
138 | 161 | ||
162 | #ifdef CONFIG_PPC_MULTIPLATFORM | ||
163 | #define HAVE_ARCH_PCI_RESOURCE_TO_USER | ||
164 | extern void pci_resource_to_user(const struct pci_dev *dev, int bar, | ||
165 | const struct resource *rsrc, | ||
166 | u64 *start, u64 *end); | ||
167 | #endif /* CONFIG_PPC_MULTIPLATFORM */ | ||
168 | |||
139 | 169 | ||
140 | #endif /* __KERNEL__ */ | 170 | #endif /* __KERNEL__ */ |
141 | 171 | ||