aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/cpu/intel_cacheinfo.c
diff options
context:
space:
mode:
authorHans Rosenfeld <hans.rosenfeld@amd.com>2010-10-29 11:14:31 -0400
committerBorislav Petkov <borislav.petkov@amd.com>2010-11-18 09:53:05 -0500
commit9653a5c76c8677b05b45b3b999d3b39988d2a064 (patch)
tree9224748c69296fc6ac50beae72f20e6e2ae16aca /arch/x86/kernel/cpu/intel_cacheinfo.c
parenteec1d4fa00c6552ae2fdf71d59f1eded7c88dd89 (diff)
x86, amd-nb: Cleanup AMD northbridge caching code
Support more than just the "Misc Control" part of the northbridges. Support more flags by turning "gart_supported" into a single bit flag that is stored in a flags member. Clean up related code by using a set of functions (amd_nb_num(), amd_nb_has_feature() and node_to_amd_nb()) instead of accessing the NB data structures directly. Reorder the initialization code and put the GART flush words caching in a separate function. Signed-off-by: Hans Rosenfeld <hans.rosenfeld@amd.com> Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Diffstat (limited to 'arch/x86/kernel/cpu/intel_cacheinfo.c')
-rw-r--r--arch/x86/kernel/cpu/intel_cacheinfo.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/kernel/cpu/intel_cacheinfo.c b/arch/x86/kernel/cpu/intel_cacheinfo.c
index 92512ed380e..6b8ea743497 100644
--- a/arch/x86/kernel/cpu/intel_cacheinfo.c
+++ b/arch/x86/kernel/cpu/intel_cacheinfo.c
@@ -333,7 +333,7 @@ static void __cpuinit amd_calc_l3_indices(struct amd_l3_cache *l3)
333static struct amd_l3_cache * __cpuinit amd_init_l3_cache(int node) 333static struct amd_l3_cache * __cpuinit amd_init_l3_cache(int node)
334{ 334{
335 struct amd_l3_cache *l3; 335 struct amd_l3_cache *l3;
336 struct pci_dev *dev = node_to_amd_nb_misc(node); 336 struct pci_dev *dev = node_to_amd_nb(node)->misc;
337 337
338 l3 = kzalloc(sizeof(struct amd_l3_cache), GFP_ATOMIC); 338 l3 = kzalloc(sizeof(struct amd_l3_cache), GFP_ATOMIC);
339 if (!l3) { 339 if (!l3) {
@@ -370,7 +370,7 @@ static void __cpuinit amd_check_l3_disable(struct _cpuid4_info_regs *this_leaf,
370 return; 370 return;
371 371
372 /* not in virtualized environments */ 372 /* not in virtualized environments */
373 if (amd_northbridges.num == 0) 373 if (amd_nb_num() == 0)
374 return; 374 return;
375 375
376 /* 376 /*
@@ -378,7 +378,7 @@ static void __cpuinit amd_check_l3_disable(struct _cpuid4_info_regs *this_leaf,
378 * never freed but this is done only on shutdown so it doesn't matter. 378 * never freed but this is done only on shutdown so it doesn't matter.
379 */ 379 */
380 if (!l3_caches) { 380 if (!l3_caches) {
381 int size = amd_northbridges.num * sizeof(struct amd_l3_cache *); 381 int size = amd_nb_num() * sizeof(struct amd_l3_cache *);
382 382
383 l3_caches = kzalloc(size, GFP_ATOMIC); 383 l3_caches = kzalloc(size, GFP_ATOMIC);
384 if (!l3_caches) 384 if (!l3_caches)