diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-29 11:26:51 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-29 11:26:51 -0400 |
commit | 5f78e4d33945b291d12765cdd7e4304f437b9361 (patch) | |
tree | 113cea729de15a98bb941cc4afb8d13301534ca7 /include | |
parent | 867a89e0b73af48838c7987e80899a1ff26dd6ff (diff) | |
parent | 5f0b2976cb2b62668a076f54419c24b8ab677167 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-bigbox-pci
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-bigbox-pci:
x86: add pci=check_enable_amd_mmconf and dmi check
x86: work around io allocation overlap of HT links
acpi: get boot_cpu_id as early for k8_scan_nodes
x86_64: don't need set default res if only have one root bus
x86: double check the multi root bus with fam10h mmconf
x86: multi pci root bus with different io resource range, on 64-bit
x86: use bus conf in NB conf fun1 to get bus range on, on 64-bit
x86: get mp_bus_to_node early
x86 pci: remove checking type for mmconfig probe
x86: remove unneeded check in mmconf reject
driver core: try parent numa_node at first before using default
x86: seperate mmconf for fam10h out from setup_64.c
x86: if acpi=off, force setting the mmconf for fam10h
x86_64: check MSR to get MMCONFIG for AMD Family 10h
x86_64: check and enable MMCONFIG for AMD Family 10h
x86_64: set cfg_size for AMD Family 10h in case MMCONFIG
x86: mmconf enable mcfg early
x86: clear pci_mmcfg_virt when mmcfg get rejected
x86: validate against acpi motherboard resources
Fixed up fairly trivial conflicts in arch/x86/pci/{init.c,pci.h} due to
OLPC support manually.
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-x86/pci.h | 2 | ||||
-rw-r--r-- | include/asm-x86/topology.h | 16 | ||||
-rw-r--r-- | include/linux/acpi.h | 5 | ||||
-rw-r--r-- | include/linux/pci.h | 11 |
4 files changed, 33 insertions, 1 deletions
diff --git a/include/asm-x86/pci.h b/include/asm-x86/pci.h index ddd8e248fc0a..30bbde0cb34b 100644 --- a/include/asm-x86/pci.h +++ b/include/asm-x86/pci.h | |||
@@ -19,6 +19,8 @@ struct pci_sysdata { | |||
19 | }; | 19 | }; |
20 | 20 | ||
21 | /* scan a bus after allocating a pci_sysdata for it */ | 21 | /* scan a bus after allocating a pci_sysdata for it */ |
22 | extern struct pci_bus *pci_scan_bus_on_node(int busno, struct pci_ops *ops, | ||
23 | int node); | ||
22 | extern struct pci_bus *pci_scan_bus_with_sysdata(int busno); | 24 | extern struct pci_bus *pci_scan_bus_with_sysdata(int busno); |
23 | 25 | ||
24 | static inline int pci_domain_nr(struct pci_bus *bus) | 26 | static inline int pci_domain_nr(struct pci_bus *bus) |
diff --git a/include/asm-x86/topology.h b/include/asm-x86/topology.h index 22073268b481..0e6d6b03affe 100644 --- a/include/asm-x86/topology.h +++ b/include/asm-x86/topology.h | |||
@@ -193,9 +193,25 @@ extern cpumask_t cpu_coregroup_map(int cpu); | |||
193 | #define topology_thread_siblings(cpu) (per_cpu(cpu_sibling_map, cpu)) | 193 | #define topology_thread_siblings(cpu) (per_cpu(cpu_sibling_map, cpu)) |
194 | #endif | 194 | #endif |
195 | 195 | ||
196 | struct pci_bus; | ||
197 | void set_pci_bus_resources_arch_default(struct pci_bus *b); | ||
198 | |||
196 | #ifdef CONFIG_SMP | 199 | #ifdef CONFIG_SMP |
197 | #define mc_capable() (boot_cpu_data.x86_max_cores > 1) | 200 | #define mc_capable() (boot_cpu_data.x86_max_cores > 1) |
198 | #define smt_capable() (smp_num_siblings > 1) | 201 | #define smt_capable() (smp_num_siblings > 1) |
199 | #endif | 202 | #endif |
200 | 203 | ||
204 | #ifdef CONFIG_NUMA | ||
205 | extern int get_mp_bus_to_node(int busnum); | ||
206 | extern void set_mp_bus_to_node(int busnum, int node); | ||
207 | #else | ||
208 | static inline int get_mp_bus_to_node(int busnum) | ||
209 | { | ||
210 | return 0; | ||
211 | } | ||
212 | static inline void set_mp_bus_to_node(int busnum, int node) | ||
213 | { | ||
214 | } | ||
215 | #endif | ||
216 | |||
201 | #endif | 217 | #endif |
diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 2c7e003356ac..41f7ce7edd7a 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h | |||
@@ -79,6 +79,7 @@ typedef int (*acpi_table_handler) (struct acpi_table_header *table); | |||
79 | typedef int (*acpi_table_entry_handler) (struct acpi_subtable_header *header, const unsigned long end); | 79 | typedef int (*acpi_table_entry_handler) (struct acpi_subtable_header *header, const unsigned long end); |
80 | 80 | ||
81 | char * __acpi_map_table (unsigned long phys_addr, unsigned long size); | 81 | char * __acpi_map_table (unsigned long phys_addr, unsigned long size); |
82 | int early_acpi_boot_init(void); | ||
82 | int acpi_boot_init (void); | 83 | int acpi_boot_init (void); |
83 | int acpi_boot_table_init (void); | 84 | int acpi_boot_table_init (void); |
84 | int acpi_numa_init (void); | 85 | int acpi_numa_init (void); |
@@ -235,6 +236,10 @@ int acpi_check_mem_region(resource_size_t start, resource_size_t n, | |||
235 | 236 | ||
236 | #else /* CONFIG_ACPI */ | 237 | #else /* CONFIG_ACPI */ |
237 | 238 | ||
239 | static inline int early_acpi_boot_init(void) | ||
240 | { | ||
241 | return 0; | ||
242 | } | ||
238 | static inline int acpi_boot_init(void) | 243 | static inline int acpi_boot_init(void) |
239 | { | 244 | { |
240 | return 0; | 245 | return 0; |
diff --git a/include/linux/pci.h b/include/linux/pci.h index 292491324b01..abc998ffb66e 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
@@ -254,7 +254,7 @@ static inline void pci_add_saved_cap(struct pci_dev *pci_dev, | |||
254 | #define PCI_NUM_RESOURCES 11 | 254 | #define PCI_NUM_RESOURCES 11 |
255 | 255 | ||
256 | #ifndef PCI_BUS_NUM_RESOURCES | 256 | #ifndef PCI_BUS_NUM_RESOURCES |
257 | #define PCI_BUS_NUM_RESOURCES 8 | 257 | #define PCI_BUS_NUM_RESOURCES 16 |
258 | #endif | 258 | #endif |
259 | 259 | ||
260 | #define PCI_REGION_FLAG_MASK 0x0fU /* These bits of resource flags tell us the PCI region flags */ | 260 | #define PCI_REGION_FLAG_MASK 0x0fU /* These bits of resource flags tell us the PCI region flags */ |
@@ -666,6 +666,7 @@ int pci_scan_bridge(struct pci_bus *bus, struct pci_dev *dev, int max, | |||
666 | 666 | ||
667 | void pci_walk_bus(struct pci_bus *top, void (*cb)(struct pci_dev *, void *), | 667 | void pci_walk_bus(struct pci_bus *top, void (*cb)(struct pci_dev *, void *), |
668 | void *userdata); | 668 | void *userdata); |
669 | int pci_cfg_space_size_ext(struct pci_dev *dev, unsigned check_exp_pcix); | ||
669 | int pci_cfg_space_size(struct pci_dev *dev); | 670 | int pci_cfg_space_size(struct pci_dev *dev); |
670 | unsigned char pci_bus_max_busnr(struct pci_bus *bus); | 671 | unsigned char pci_bus_max_busnr(struct pci_bus *bus); |
671 | 672 | ||
@@ -1053,5 +1054,13 @@ extern unsigned long pci_cardbus_mem_size; | |||
1053 | 1054 | ||
1054 | extern int pcibios_add_platform_entries(struct pci_dev *dev); | 1055 | extern int pcibios_add_platform_entries(struct pci_dev *dev); |
1055 | 1056 | ||
1057 | #ifdef CONFIG_PCI_MMCONFIG | ||
1058 | extern void __init pci_mmcfg_early_init(void); | ||
1059 | extern void __init pci_mmcfg_late_init(void); | ||
1060 | #else | ||
1061 | static inline void pci_mmcfg_early_init(void) { } | ||
1062 | static inline void pci_mmcfg_late_init(void) { } | ||
1063 | #endif | ||
1064 | |||
1056 | #endif /* __KERNEL__ */ | 1065 | #endif /* __KERNEL__ */ |
1057 | #endif /* LINUX_PCI_H */ | 1066 | #endif /* LINUX_PCI_H */ |