From 04b2b06665b669da536bf192158a3f9ca3f1dbbe Mon Sep 17 00:00:00 2001 From: Elliot Saba Date: Fri, 10 Feb 2017 14:47:10 -0800 Subject: [PATCH 1/2] CPUID mappings for Core i5-7600K (Kaby Lake) --- cpuid_x86.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/cpuid_x86.c b/cpuid_x86.c index 48ac1c134..3e8a92b31 100644 --- a/cpuid_x86.c +++ b/cpuid_x86.c @@ -636,6 +636,13 @@ int get_cacheinfo(int type, cache_info_t *cacheinfo){ LD1.associative = 8; LD1.linesize = 64; break; + case 0x63 : + DTB.size = 2048; + DTB.associative = 4; + DTB.linesize = 32; + LDTB.size = 4096; + LDTB.associative= 4; + LDTB.linesize = 32; case 0x66 : LD1.size = 8; LD1.associative = 4; @@ -667,6 +674,13 @@ int get_cacheinfo(int type, cache_info_t *cacheinfo){ LC1.size = 64; LC1.associative = 8; break; + case 0x76 : + ITB.size = 2048; + ITB.associative = 0; + ITB.linesize = 8; + LITB.size = 4096; + LITB.associative= 0; + LITB.linesize = 8; case 0x77 : LC1.size = 16; LC1.associative = 4; @@ -1220,6 +1234,7 @@ int get_cpuname(void){ return CPUTYPE_NEHALEM; } break; + case 9: case 8: switch (model) { case 14: // Kaby Lake @@ -1759,6 +1774,7 @@ int get_coretype(void){ return CORE_NEHALEM; } break; + case 9: case 8: if (model == 14) // Kaby Lake return CORE_HASWELL; From 1d8ab99e0984e14591b3ea3b8294054682c18adb Mon Sep 17 00:00:00 2001 From: Elliot Saba Date: Fri, 10 Feb 2017 15:23:34 -0800 Subject: [PATCH 2/2] Add `exfamily == 9` case (Kaby Lake) to dynamic arch detection --- driver/others/dynamic.c | 1 + 1 file changed, 1 insertion(+) diff --git a/driver/others/dynamic.c b/driver/others/dynamic.c index d569e7097..ee79dd531 100644 --- a/driver/others/dynamic.c +++ b/driver/others/dynamic.c @@ -300,6 +300,7 @@ static gotoblas_t *get_coretype(void){ return &gotoblas_NEHALEM; } return NULL; + case 9: case 8: if (model == 14 ) { // Kaby Lake if(support_avx())