- Added support in system info for extended cpu family and model.

- Take extended family and model into account when generating the cpu
  type and revision.
- Added Intel Core 2 Extreme to the cpu list.

Please review.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24509 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Bruno G. Albuquerque
2008-03-21 16:44:05 +00:00
parent e339f8165b
commit 7a66a9b8e4
5 changed files with 27 additions and 5 deletions
+1
View File
@@ -455,6 +455,7 @@ typedef enum cpu_types {
B_CPU_INTEL_PENTIUM_IV_MODEL_2,
B_CPU_INTEL_PENTIUM_IV_MODEL_3,
B_CPU_INTEL_PENTIUM_IV_MODEL_4,
B_CPU_INTEL_PENTIUM_CORE_2_EXTREME = 0x1467,
/* AMD */
@@ -189,8 +189,10 @@ typedef struct arch_cpu_info {
const char *vendor_name;
int type;
int family;
int extended_family;
int stepping;
int model;
int extended_model;
char feature_string[256];
// local TSS for this cpu
+11 -1
View File
@@ -8,6 +8,7 @@
*/
#include <stdlib.h>
#include <stdio.h>
#include <OS.h>
@@ -48,7 +49,14 @@ get_cpu_vendor_string(enum cpu_types type)
return "VIA";
return "IDT";
case B_CPU_RISE_x86:
return "Rise";
// TODO(bga): There is a conflict between new Intel
// CPUs that sets extended model bits and the RISE
// CPUs. For now we check for it here but there is
// probably a better solution.
if (type == B_CPU_INTEL_PENTIUM_CORE_2_EXTREME)
return "Intel";
else
return "Rise";
case B_CPU_TRANSMETA_x86:
return "Transmeta";
@@ -115,6 +123,8 @@ get_cpu_model_string(system_info *info)
case B_CPU_INTEL_PENTIUM_IV_MODEL_3:
case B_CPU_INTEL_PENTIUM_IV_MODEL_4:
return "Pentium 4";
case B_CPU_INTEL_PENTIUM_CORE_2_EXTREME:
return "Core 2 Extreme";
/* AMD */
case B_CPU_AMD_K5_MODEL_0: