diff options
Diffstat (limited to 'arch/x86/kernel/cpu/intel_cacheinfo.c')
-rw-r--r-- | arch/x86/kernel/cpu/intel_cacheinfo.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/intel_cacheinfo.c b/arch/x86/kernel/cpu/intel_cacheinfo.c index 951820f4e02b..a3b0811693c9 100644 --- a/arch/x86/kernel/cpu/intel_cacheinfo.c +++ b/arch/x86/kernel/cpu/intel_cacheinfo.c | |||
@@ -314,6 +314,12 @@ static void __cpuinit amd_calc_l3_indices(struct amd_northbridge *nb) | |||
314 | /* calculate subcache sizes */ | 314 | /* calculate subcache sizes */ |
315 | l3->subcaches[0] = sc0 = !(val & BIT(0)); | 315 | l3->subcaches[0] = sc0 = !(val & BIT(0)); |
316 | l3->subcaches[1] = sc1 = !(val & BIT(4)); | 316 | l3->subcaches[1] = sc1 = !(val & BIT(4)); |
317 | |||
318 | if (boot_cpu_data.x86 == 0x15) { | ||
319 | l3->subcaches[0] = sc0 += !(val & BIT(1)); | ||
320 | l3->subcaches[1] = sc1 += !(val & BIT(5)); | ||
321 | } | ||
322 | |||
317 | l3->subcaches[2] = sc2 = !(val & BIT(8)) + !(val & BIT(9)); | 323 | l3->subcaches[2] = sc2 = !(val & BIT(8)) + !(val & BIT(9)); |
318 | l3->subcaches[3] = sc3 = !(val & BIT(12)) + !(val & BIT(13)); | 324 | l3->subcaches[3] = sc3 = !(val & BIT(12)) + !(val & BIT(13)); |
319 | 325 | ||