Changeset 8ba991f9e17c5bdaa24dccbc5aa0a4e5db690756

Show
Ignore:
Timestamp:
09/29/09 18:31:11 (2 years ago)
Author:
Erwan Velu <erwan.velu@…>
Children:
633ce833e5be19ee51400e5e5771ffb880c4291a, d5d1a306ce4926f907ace0a7cb79e540cadb77c1
Parents:
15c6dc79f8d488c585057987eefddd72b114534e
git-committer:
Erwan Velu <erwan.velu@free.fr> / 2009-09-29T20:31:11Z+0200
Message:

Adding VMX & SVM cpu flags

Impact: Hardware virtualization is now detected

Minor update to detect vmx & svm cpu flags

Location:
com32
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • com32/gplinclude/cpuid.h

    rd302e6 r8ba991  
    6666    bool now;                   /* 3DNow! */ 
    6767    bool smp;                   /* A smp configuration has been found */ 
     68    bool vmx;                   /* Hardware virtualization */ 
     69    bool svm;                   /* Secure virtual machine */ 
    6870} s_cpu_flags; 
    6971 
  • com32/gpllib/cpuid.c

    r5b5b1b r8ba991  
    296296    cpu->flags.now = cpu_has(c, X86_FEATURE_3DNOW); 
    297297    cpu->flags.smp = find_smp_config(); 
     298    cpu->flags.vmx = cpu_has(c, X86_FEATURE_VMX); 
     299    cpu->flags.svm = cpu_has(c, X86_FEATURE_SVM); 
    298300} 
    299301 
  • com32/hdt/hdt-cli-cpu.c

    rd0a0e5 r8ba991  
    175175        if (hardware->cpu.flags.now) 
    176176                strcat(buffer1, "3dnow! "); 
     177        if (hardware->cpu.flags.svm) 
     178                strcat(buffer1, "svm "); 
     179        if (hardware->cpu.flags.vmx) 
     180                strcat(buffer1, "vmx "); 
    177181        if (buffer1[0]) { 
    178182                snprintf(buffer, sizeof buffer, "Flags     : %s\n", buffer1); 
  • com32/hdt/hdt-menu-processor.c

    r5f036a r8ba991  
    232232  if (hardware->cpu.flags.now) 
    233233    strcat(buffer1, "3dnow! "); 
     234  if (hardware->cpu.flags.vmx) 
     235    strcat(buffer1, "vmx "); 
     236  if (hardware->cpu.flags.svm) 
     237    strcat(buffer1, "svm "); 
    234238  snprintf(buffer, sizeof buffer, "Flags     : %s", buffer1); 
    235239  snprintf(statbuffer, sizeof statbuffer, "Flags: %s", buffer1); 
  • com32/include/cpufeature.h

    rb71004 r8ba991  
    7373#define X86_FEATURE_MWAIT       (4*32+ 3)       /* Monitor/Mwait support */ 
    7474#define X86_FEATURE_DSCPL       (4*32+ 4)       /* CPL Qualified Debug Store */ 
     75#define X86_FEATURE_VMX         (4*32+ 5)       /* Hardware virtualization */ 
    7576#define X86_FEATURE_EST         (4*32+ 7)       /* Enhanced SpeedStep */ 
    7677#define X86_FEATURE_TM2         (4*32+ 8)       /* Thermal Monitor 2 */ 
     
    8889#define X86_FEATURE_LAHF_LM     (6*32+ 0)       /* LAHF/SAHF in long mode */ 
    8990#define X86_FEATURE_CMP_LEGACY  (6*32+ 1)       /* If yes HyperThreading not valid */ 
     91#define X86_FEATURE_SVM         (6*32+ 2)       /* Secure virtual machine */ 
    9092 
    9193#endif /* __ASM_I386_CPUFEATURE_H */ 
  • com32/modules/cpuidtest.c

    r7dc104 r8ba991  
    122122        if (cpu.flags.now) 
    123123            printf("3dnow! "); 
     124        if (cpu.flags.vmx) 
     125            printf("vmx "); 
     126        if (cpu.flags.svm) 
     127            printf("svm "); 
    124128        printf("\n"); 
    125129        printf("SMP         = ");