Changeset 24979

Show
Ignore:
Timestamp:
04/15/08 18:51:17 (1 month ago)
Author:
bga
Message:
- Another patch by Hervé W.
- Updated code so Processor IDs for older processor do not have to be 
modified.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • haiku/trunk/headers/os/kernel/OS.h

    r24960 r24979  
    430430         * AP-485 Intel - 24161832.pdf 
    431431         */ 
    432         B_CPU_INTEL_x86                                         = 0x100000
    433         B_CPU_INTEL_PENTIUM                                     = 0x100501, 
     432        B_CPU_INTEL_x86                                         = 0x1000
     433        B_CPU_INTEL_PENTIUM                                     = 0x1051, 
    434434        B_CPU_INTEL_PENTIUM75, 
    435435        B_CPU_INTEL_PENTIUM_486_OVERDRIVE, 
    436436        B_CPU_INTEL_PENTIUM_MMX, 
    437437        B_CPU_INTEL_PENTIUM_MMX_MODEL_4         = B_CPU_INTEL_PENTIUM_MMX, 
    438         B_CPU_INTEL_PENTIUM_MMX_MODEL_8         = 0x100508, 
     438        B_CPU_INTEL_PENTIUM_MMX_MODEL_8         = 0x1058, 
    439439        B_CPU_INTEL_PENTIUM75_486_OVERDRIVE, 
    440         B_CPU_INTEL_PENTIUM_PRO                         = 0x100601, 
    441         B_CPU_INTEL_PENTIUM_II                          = 0x100603, 
    442         B_CPU_INTEL_PENTIUM_II_MODEL_3          = 0x100603, 
    443         B_CPU_INTEL_PENTIUM_II_MODEL_5          = 0x100605, 
    444         B_CPU_INTEL_CELERON                                     = 0x100606, 
    445         B_CPU_INTEL_CELERON_MODEL_22            = 0x101606, 
    446         B_CPU_INTEL_PENTIUM_III                         = 0x100607, 
    447         B_CPU_INTEL_PENTIUM_III_MODEL_8         = 0x100608, 
    448         B_CPU_INTEL_PENTIUM_M                           = 0x100609, 
    449         B_CPU_INTEL_PENTIUM_III_XEON            = 0x10060a, 
    450         B_CPU_INTEL_PENTIUM_III_MODEL_11        = 0x10060b, 
    451         B_CPU_INTEL_PENTIUM_M_MODEL_13          = 0x10060d, /* Dothan */ 
     440        B_CPU_INTEL_PENTIUM_PRO                         = 0x1061, 
     441        B_CPU_INTEL_PENTIUM_II                          = 0x1063, 
     442        B_CPU_INTEL_PENTIUM_II_MODEL_3          = 0x1063, 
     443        B_CPU_INTEL_PENTIUM_II_MODEL_5          = 0x1065, 
     444        B_CPU_INTEL_CELERON                                     = 0x1066, 
     445        B_CPU_INTEL_CELERON_MODEL_22            = 0x11066, 
     446        B_CPU_INTEL_PENTIUM_III                         = 0x1067, 
     447        B_CPU_INTEL_PENTIUM_III_MODEL_8         = 0x1068, 
     448        B_CPU_INTEL_PENTIUM_M                           = 0x1069, 
     449        B_CPU_INTEL_PENTIUM_III_XEON            = 0x106a, 
     450        B_CPU_INTEL_PENTIUM_III_MODEL_11        = 0x106b, 
     451        B_CPU_INTEL_PENTIUM_M_MODEL_13          = 0x106d, /* Dothan */ 
    452452        B_CPU_INTEL_PENTIUM_CORE, 
    453453        B_CPU_INTEL_PENTIUM_CORE_2, 
    454         B_CPU_INTEL_PENTIUM_CORE_2_EXTREME      = 0x101607, /* Core 2 Extreme or Xeon 
     454        B_CPU_INTEL_PENTIUM_CORE_2_EXTREME      = 0x11067, /* Core 2 Extreme or Xeon 
    455455                                                           model 23 on 45 nm */ 
    456         B_CPU_INTEL_PENTIUM_IV                          = 0x100f00, 
     456        B_CPU_INTEL_PENTIUM_IV                          = 0x10f0, 
    457457        B_CPU_INTEL_PENTIUM_IV_MODEL_1, 
    458458        B_CPU_INTEL_PENTIUM_IV_MODEL_2, 
     
    466466         * 20734.pdf 
    467467         */  
    468         B_CPU_AMD_x86                                           = 0x110000
    469         B_CPU_AMD_K5_MODEL_0                            = 0x110500, 
     468        B_CPU_AMD_x86                                           = 0x1100
     469        B_CPU_AMD_K5_MODEL_0                            = 0x1150, 
    470470        B_CPU_AMD_K5_MODEL_1, 
    471471        B_CPU_AMD_K5_MODEL_2, 
    472472        B_CPU_AMD_K5_MODEL_3, 
    473         B_CPU_AMD_K6_MODEL_6                            = 0x110506, 
    474         B_CPU_AMD_K6_MODEL_7                            = 0x110507, 
    475         B_CPU_AMD_K6_MODEL_8                            = 0x110508, 
    476         B_CPU_AMD_K6_2                                          = 0x110508, 
    477         B_CPU_AMD_K6_MODEL_9                            = 0x110509, 
    478         B_CPU_AMD_K6_III                                        = 0x110509, 
    479         B_CPU_AMD_K6_III_MODEL_13                       = 0x11050d, 
    480  
    481         B_CPU_AMD_ATHLON_MODEL_1                        = 0x110601, 
    482         B_CPU_AMD_ATHLON_MODEL_2                        = 0x110602, 
    483                  
    484         B_CPU_AMD_DURON                                         = 0x110603, 
    485          
    486         B_CPU_AMD_ATHLON_THUNDERBIRD            = 0x110604, 
    487         B_CPU_AMD_ATHLON_XP                             = 0x110606, 
     473        B_CPU_AMD_K6_MODEL_6                            = 0x1156, 
     474        B_CPU_AMD_K6_MODEL_7                            = 0x1157, 
     475        B_CPU_AMD_K6_MODEL_8                            = 0x1158, 
     476        B_CPU_AMD_K6_2                                          = 0x1158, 
     477        B_CPU_AMD_K6_MODEL_9                            = 0x1159, 
     478        B_CPU_AMD_K6_III                                        = 0x1159, 
     479        B_CPU_AMD_K6_III_MODEL_13                       = 0x115d, 
     480 
     481        B_CPU_AMD_ATHLON_MODEL_1                        = 0x1161, 
     482        B_CPU_AMD_ATHLON_MODEL_2                        = 0x1162, 
     483 
     484        B_CPU_AMD_DURON                                         = 0x1163, 
     485 
     486        B_CPU_AMD_ATHLON_THUNDERBIRD            = 0x1164, 
     487        B_CPU_AMD_ATHLON_XP                             = 0x1166, 
    488488        B_CPU_AMD_ATHLON_XP_MODEL_7, 
    489489        B_CPU_AMD_ATHLON_XP_MODEL_8, 
    490         B_CPU_AMD_ATHLON_XP_MODEL_10            = 0x11060a, /* Barton */ 
     490        B_CPU_AMD_ATHLON_XP_MODEL_10            = 0x116a, /* Barton */ 
    491491         
    492492        B_CPU_AMD_SEMPRON_MODEL_8                       = B_CPU_AMD_ATHLON_XP_MODEL_8, 
     
    496496         * and AMD Opteron Processors" (25759.pdf) 
    497497         */ 
    498         B_CPU_AMD_ATHLON_64_MODEL_3             = 0x110f03, 
     498        B_CPU_AMD_ATHLON_64_MODEL_3             = 0x11f3, 
    499499        B_CPU_AMD_ATHLON_64_MODEL_4, 
    500500        B_CPU_AMD_ATHLON_64_MODEL_5, 
    501501        B_CPU_AMD_OPTERON                                       = B_CPU_AMD_ATHLON_64_MODEL_5, 
    502502        B_CPU_AMD_ATHLON_64_FX                          = B_CPU_AMD_ATHLON_64_MODEL_5, 
    503         B_CPU_AMD_ATHLON_64_MODEL_7                     = 0x110f07, 
     503        B_CPU_AMD_ATHLON_64_MODEL_7                     = 0x11f7, 
    504504        B_CPU_AMD_ATHLON_64_MODEL_8, 
    505         B_CPU_AMD_ATHLON_64_MODEL_11            = 0x110f0b, 
     505        B_CPU_AMD_ATHLON_64_MODEL_11            = 0x11fb, 
    506506        B_CPU_AMD_ATHLON_64_MODEL_12, 
    507         B_CPU_AMD_ATHLON_64_MODEL_14            = 0x110f0e, 
     507        B_CPU_AMD_ATHLON_64_MODEL_14            = 0x11fe, 
    508508        B_CPU_AMD_ATHLON_64_MODEL_15, 
    509509 
    510         B_CPU_AMD_GEODE_LX                              = 0x11050a, 
     510        B_CPU_AMD_GEODE_LX                                     = 0x115a, 
    511511 
    512512        /* VIA/Cyrix */ 
    513         B_CPU_CYRIX_x86                                         = 0x120000
    514         B_CPU_VIA_CYRIX_x86                                     = 0x120000
    515         B_CPU_CYRIX_GXm                                         = 0x120504, 
    516         B_CPU_CYRIX_6x86MX                                      = 0x120600, 
     513        B_CPU_CYRIX_x86                                         = 0x1200
     514        B_CPU_VIA_CYRIX_x86                                     = 0x1200
     515        B_CPU_CYRIX_GXm                                         = 0x1254, 
     516        B_CPU_CYRIX_6x86MX                                      = 0x1260, 
    517517 
    518518        /* VIA/IDT */ 
    519         B_CPU_IDT_x86                                           = 0x130000
    520         B_CPU_VIA_IDT_x86                                       = 0x130000
    521         B_CPU_IDT_WINCHIP_C6                            = 0x130504, 
    522         B_CPU_IDT_WINCHIP_2                                     = 0x130508, 
     519        B_CPU_IDT_x86                                           = 0x1300
     520        B_CPU_VIA_IDT_x86                                       = 0x1300
     521        B_CPU_IDT_WINCHIP_C6                            = 0x1354, 
     522        B_CPU_IDT_WINCHIP_2                                     = 0x1358, 
    523523        B_CPU_IDT_WINCHIP_3, 
    524         B_CPU_VIA_C3_SAMUEL                                     = 0x130606, 
    525         B_CPU_VIA_C3_SAMUEL_2                           = 0x130607, 
    526         B_CPU_VIA_C3_EZRA_T                                     = 0x130608, 
    527         B_CPU_VIA_C3_NEHEMIAH                           = 0x130609, 
     524        B_CPU_VIA_C3_SAMUEL                                     = 0x1366, 
     525        B_CPU_VIA_C3_SAMUEL_2                           = 0x1367, 
     526        B_CPU_VIA_C3_EZRA_T                                     = 0x1368, 
     527        B_CPU_VIA_C3_NEHEMIAH                           = 0x1369, 
    528528 
    529529        /* Transmeta */ 
    530         B_CPU_TRANSMETA_x86                                     = 0x160000
    531         B_CPU_TRANSMETA_CRUSOE                          = 0x160504, 
     530        B_CPU_TRANSMETA_x86                                     = 0x1600
     531        B_CPU_TRANSMETA_CRUSOE                          = 0x1654, 
    532532 
    533533        /* Rise */ 
    534         B_CPU_RISE_x86                                          = 0x140000
    535         B_CPU_RISE_mP6                                          = 0x140500, 
     534        B_CPU_RISE_x86                                          = 0x1400
     535        B_CPU_RISE_mP6                                          = 0x1450, 
    536536 
    537537        /* National Semiconductor */ 
    538         B_CPU_NATIONAL_x86                                      = 0x150000
    539         B_CPU_NATIONAL_GEODE_GX1                        = 0x150504, 
     538        B_CPU_NATIONAL_x86                                      = 0x1500
     539        B_CPU_NATIONAL_GEODE_GX1                        = 0x1554, 
    540540        B_CPU_NATIONAL_GEODE_GX2, 
    541541 
     
    554554} cpu_type; 
    555555 
    556 #define B_CPU_x86_VENDOR_MASK   0xff0000 
     556#define B_CPU_x86_VENDOR_MASK   0xff00 
    557557 
    558558#ifdef __INTEL__ 
  • haiku/trunk/src/system/kernel/arch/x86/arch_system_info.c

    r24958 r24979  
    117117        if (base != B_CPU_x86) 
    118118                if (base == B_CPU_INTEL_x86) 
    119                         model = (cpu->arch.extended_family + cpu->arch.family << 8) + 
    120                         (cpu->arch.extended_model << 4) + cpu->arch.model; 
     119                        model = (cpu->arch.extended_family << 20) + (cpu->arch.extended_model << 16) + 
     120                        (cpu->arch.family << 4) + cpu->arch.model; 
    121121                else 
    122                         model = (cpu->arch.family << 8) + 
     122                        model = (cpu->arch.family << 4) + 
    123123                        cpu->arch.model; 
    124124                        /*  There isn't much useful information yet in the extended