diff options
Diffstat (limited to 'arch/x86/mm/k8topology_64.c')
-rw-r--r-- | arch/x86/mm/k8topology_64.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/arch/x86/mm/k8topology_64.c b/arch/x86/mm/k8topology_64.c index 970ed579d4e4..804a3b6c6e14 100644 --- a/arch/x86/mm/k8topology_64.c +++ b/arch/x86/mm/k8topology_64.c | |||
@@ -11,6 +11,8 @@ | |||
11 | #include <linux/string.h> | 11 | #include <linux/string.h> |
12 | #include <linux/module.h> | 12 | #include <linux/module.h> |
13 | #include <linux/nodemask.h> | 13 | #include <linux/nodemask.h> |
14 | #include <linux/memblock.h> | ||
15 | |||
14 | #include <asm/io.h> | 16 | #include <asm/io.h> |
15 | #include <linux/pci_ids.h> | 17 | #include <linux/pci_ids.h> |
16 | #include <linux/acpi.h> | 18 | #include <linux/acpi.h> |
@@ -22,7 +24,7 @@ | |||
22 | #include <asm/numa.h> | 24 | #include <asm/numa.h> |
23 | #include <asm/mpspec.h> | 25 | #include <asm/mpspec.h> |
24 | #include <asm/apic.h> | 26 | #include <asm/apic.h> |
25 | #include <asm/k8.h> | 27 | #include <asm/amd_nb.h> |
26 | 28 | ||
27 | static struct bootnode __initdata nodes[8]; | 29 | static struct bootnode __initdata nodes[8]; |
28 | static nodemask_t __initdata nodes_parsed = NODE_MASK_NONE; | 30 | static nodemask_t __initdata nodes_parsed = NODE_MASK_NONE; |
@@ -54,8 +56,8 @@ static __init int find_northbridge(void) | |||
54 | static __init void early_get_boot_cpu_id(void) | 56 | static __init void early_get_boot_cpu_id(void) |
55 | { | 57 | { |
56 | /* | 58 | /* |
57 | * need to get boot_cpu_id so can use that to create apicid_to_node | 59 | * need to get the APIC ID of the BSP so can use that to |
58 | * in k8_scan_nodes() | 60 | * create apicid_to_node in k8_scan_nodes() |
59 | */ | 61 | */ |
60 | #ifdef CONFIG_X86_MPPARSE | 62 | #ifdef CONFIG_X86_MPPARSE |
61 | /* | 63 | /* |
@@ -212,7 +214,7 @@ int __init k8_scan_nodes(void) | |||
212 | bits = boot_cpu_data.x86_coreid_bits; | 214 | bits = boot_cpu_data.x86_coreid_bits; |
213 | cores = (1<<bits); | 215 | cores = (1<<bits); |
214 | apicid_base = 0; | 216 | apicid_base = 0; |
215 | /* need to get boot_cpu_id early for system with apicid lifting */ | 217 | /* get the APIC ID of the BSP early for systems with apicid lifting */ |
216 | early_get_boot_cpu_id(); | 218 | early_get_boot_cpu_id(); |
217 | if (boot_cpu_physical_apicid > 0) { | 219 | if (boot_cpu_physical_apicid > 0) { |
218 | pr_info("BSP APIC ID: %02x\n", boot_cpu_physical_apicid); | 220 | pr_info("BSP APIC ID: %02x\n", boot_cpu_physical_apicid); |
@@ -222,7 +224,7 @@ int __init k8_scan_nodes(void) | |||
222 | for_each_node_mask(i, node_possible_map) { | 224 | for_each_node_mask(i, node_possible_map) { |
223 | int j; | 225 | int j; |
224 | 226 | ||
225 | e820_register_active_regions(i, | 227 | memblock_x86_register_active_regions(i, |
226 | nodes[i].start >> PAGE_SHIFT, | 228 | nodes[i].start >> PAGE_SHIFT, |
227 | nodes[i].end >> PAGE_SHIFT); | 229 | nodes[i].end >> PAGE_SHIFT); |
228 | for (j = apicid_base; j < cores + apicid_base; j++) | 230 | for (j = apicid_base; j < cores + apicid_base; j++) |