diff options
author | Yinghai Lu <yinghai@kernel.org> | 2009-10-05 00:54:24 -0400 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2009-11-04 11:47:09 -0500 |
commit | 99935a7a59eaca0292c1a5880e10bae03f4a5e3d (patch) | |
tree | 44d7265182ad7e1ee795a420088bc99d0096b62c /arch/x86/pci/bus_numa.h | |
parent | 91d3f9bacdb4950d2f79fe2ba296aa249f60d06c (diff) |
x86/PCI: read root resources from IOH on Intel
For intel systems with multi IOH, we should read peer root resources
directly from PCI config space, and don't trust _CRS.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'arch/x86/pci/bus_numa.h')
-rw-r--r-- | arch/x86/pci/bus_numa.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/arch/x86/pci/bus_numa.h b/arch/x86/pci/bus_numa.h new file mode 100644 index 000000000000..4ff126a3e887 --- /dev/null +++ b/arch/x86/pci/bus_numa.h | |||
@@ -0,0 +1,26 @@ | |||
1 | #ifdef CONFIG_X86_64 | ||
2 | |||
3 | /* | ||
4 | * sub bus (transparent) will use entres from 3 to store extra from | ||
5 | * root, so need to make sure we have enought slot there, Should we | ||
6 | * increase PCI_BUS_NUM_RESOURCES? | ||
7 | */ | ||
8 | #define RES_NUM 16 | ||
9 | struct pci_root_info { | ||
10 | char name[12]; | ||
11 | unsigned int res_num; | ||
12 | struct resource res[RES_NUM]; | ||
13 | int bus_min; | ||
14 | int bus_max; | ||
15 | int node; | ||
16 | int link; | ||
17 | }; | ||
18 | |||
19 | /* 4 at this time, it may become to 32 */ | ||
20 | #define PCI_ROOT_NR 4 | ||
21 | extern int pci_root_num; | ||
22 | extern struct pci_root_info pci_root_info[PCI_ROOT_NR]; | ||
23 | |||
24 | extern void update_res(struct pci_root_info *info, size_t start, | ||
25 | size_t end, unsigned long flags, int merge); | ||
26 | #endif | ||