VirtualBox

Changeset 47996 in vbox for trunk/include/iprt


Ignore:
Timestamp:
Aug 22, 2013 3:09:32 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
88320
Message:

More MSRs fixes on AMD64. MSR_K8_NB_CFG is for recent linux kernels (64-bit), and the MSR_IA32_BIOS_SIGN_ID is for windows 7.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/x86.h

    r47988 r47996  
    11011101
    11021102/** K6 EFER - Extended Feature Enable Register. */
    1103 #define MSR_K6_EFER                         0xc0000080
     1103#define MSR_K6_EFER                         UINT32_C(0xc0000080)
    11041104/** @todo document EFER */
    11051105/** Bit 0 - SCE - System call extensions (SYSCALL / SYSRET). (R/W) */
     
    11181118#define  MSR_K6_EFER_FFXSR                   RT_BIT(14)
    11191119/** K6 STAR - SYSCALL/RET targets. */
    1120 #define MSR_K6_STAR                         0xc0000081
     1120#define MSR_K6_STAR                         UINT32_C(0xc0000081)
    11211121/** Shift value for getting the SYSRET CS and SS value. */
    11221122#define  MSR_K6_STAR_SYSRET_CS_SS_SHIFT     48
     
    11241124#define  MSR_K6_STAR_SYSCALL_CS_SS_SHIFT    32
    11251125/** Selector mask for use after shifting. */
    1126 #define  MSR_K6_STAR_SEL_MASK               0xffff
     1126#define  MSR_K6_STAR_SEL_MASK               UINT32_C(0xffff)
    11271127/** The mask which give the SYSCALL EIP. */
    1128 #define  MSR_K6_STAR_SYSCALL_EIP_MASK       0xffffffff
     1128#define  MSR_K6_STAR_SYSCALL_EIP_MASK       UINT32_C(0xffffffff)
    11291129/** K6 WHCR - Write Handling Control Register. */
    1130 #define MSR_K6_WHCR                         0xc0000082
     1130#define MSR_K6_WHCR                         UINT32_C(0xc0000082)
    11311131/** K6 UWCCR - UC/WC Cacheability Control Register. */
    1132 #define MSR_K6_UWCCR                        0xc0000085
     1132#define MSR_K6_UWCCR                        UINT32_C(0xc0000085)
    11331133/** K6 PSOR - Processor State Observability Register. */
    1134 #define MSR_K6_PSOR                         0xc0000087
     1134#define MSR_K6_PSOR                         UINT32_C(0xc0000087)
    11351135/** K6 PFIR - Page Flush/Invalidate Register. */
    1136 #define MSR_K6_PFIR                         0xc0000088
     1136#define MSR_K6_PFIR                         UINT32_C(0xc0000088)
    11371137
    11381138/** Performance counter MSRs. (AMD only) */
    1139 #define MSR_K7_EVNTSEL0                     0xc0010000
    1140 #define MSR_K7_EVNTSEL1                     0xc0010001
    1141 #define MSR_K7_EVNTSEL2                     0xc0010002
    1142 #define MSR_K7_EVNTSEL3                     0xc0010003
    1143 #define MSR_K7_PERFCTR0                     0xc0010004
    1144 #define MSR_K7_PERFCTR1                     0xc0010005
    1145 #define MSR_K7_PERFCTR2                     0xc0010006
    1146 #define MSR_K7_PERFCTR3                     0xc0010007
     1139#define MSR_K7_EVNTSEL0                     UINT32_C(0xc0010000)
     1140#define MSR_K7_EVNTSEL1                     UINT32_C(0xc0010001)
     1141#define MSR_K7_EVNTSEL2                     UINT32_C(0xc0010002)
     1142#define MSR_K7_EVNTSEL3                     UINT32_C(0xc0010003)
     1143#define MSR_K7_PERFCTR0                     UINT32_C(0xc0010004)
     1144#define MSR_K7_PERFCTR1                     UINT32_C(0xc0010005)
     1145#define MSR_K7_PERFCTR2                     UINT32_C(0xc0010006)
     1146#define MSR_K7_PERFCTR3                     UINT32_C(0xc0010007)
    11471147
    11481148/** K8 LSTAR - Long mode SYSCALL target (RIP). */
    1149 #define MSR_K8_LSTAR                        0xc0000082
     1149#define MSR_K8_LSTAR                        UINT32_C(0xc0000082)
    11501150/** K8 CSTAR - Compatibility mode SYSCALL target (RIP). */
    1151 #define MSR_K8_CSTAR                        0xc0000083
     1151#define MSR_K8_CSTAR                        UINT32_C(0xc0000083)
    11521152/** K8 SF_MASK - SYSCALL flag mask. (aka SFMASK) */
    1153 #define MSR_K8_SF_MASK                      0xc0000084
     1153#define MSR_K8_SF_MASK                      UINT32_C(0xc0000084)
    11541154/** K8 FS.base - The 64-bit base FS register. */
    1155 #define MSR_K8_FS_BASE                      0xc0000100
    1156 /** K8 GS.base - The 64-bit base GS register. */
    1157 #define MSR_K8_GS_BASE                      0xc0000101
     1155#define MSR_K8_FS_BASE                      UINT32_C(0xc0000100)
     1156/** K8 GS.base - The 64-bit base GS register. */     
     1157#define MSR_K8_GS_BASE                      UINT32_C(0xc0000101)
    11581158/** K8 KernelGSbase - Used with SWAPGS. */
    1159 #define MSR_K8_KERNEL_GS_BASE               0xc0000102
     1159#define MSR_K8_KERNEL_GS_BASE               UINT32_C(0xc0000102)
    11601160/** K8 TSC_AUX - Used with RDTSCP. */
    1161 #define MSR_K8_TSC_AUX                      0xc0000103
    1162 #define MSR_K8_SYSCFG                       0xc0010010
    1163 #define MSR_K8_HWCR                         0xc0010015
    1164 #define MSR_K8_IORRBASE0                    0xc0010016
    1165 #define MSR_K8_IORRMASK0                    0xc0010017
    1166 #define MSR_K8_IORRBASE1                    0xc0010018
    1167 #define MSR_K8_IORRMASK1                    0xc0010019
    1168 #define MSR_K8_TOP_MEM1                     0xc001001a
    1169 #define MSR_K8_TOP_MEM2                     0xc001001d
     1161#define MSR_K8_TSC_AUX                      UINT32_C(0xc0000103)
     1162#define MSR_K8_SYSCFG                       UINT32_C(0xc0010010)
     1163#define MSR_K8_HWCR                         UINT32_C(0xc0010015)
     1164#define MSR_K8_IORRBASE0                    UINT32_C(0xc0010016)
     1165#define MSR_K8_IORRMASK0                    UINT32_C(0xc0010017)
     1166#define MSR_K8_IORRBASE1                    UINT32_C(0xc0010018)
     1167#define MSR_K8_IORRMASK1                    UINT32_C(0xc0010019)
     1168#define MSR_K8_TOP_MEM1                     UINT32_C(0xc001001a)
     1169#define MSR_K8_TOP_MEM2                     UINT32_C(0xc001001d)
     1170/** North bridge config? See BIOS & Kernel dev guides for
     1171 * details. */
     1172#define MSR_K8_NB_CFG                       UINT32_C(0xc001001f)
     1173
    11701174/** Hypertransport interrupt pending register.
    11711175 * "BIOS and Kernel Developer's Guide for AMD NPT Family 0Fh Processors" */
    1172 #define MSR_K8_INT_PENDING                  0xc0010055
    1173 #define MSR_K8_VM_CR                        0xc0010114
     1176#define MSR_K8_INT_PENDING                  UINT32_C(0xc0010055)
     1177#define MSR_K8_VM_CR                        UINT32_C(0xc0010114)
    11741178#define MSR_K8_VM_CR_SVM_DISABLE            RT_BIT(4)
    11751179
    1176 #define MSR_K8_IGNNE                        0xc0010115
    1177 #define MSR_K8_SMM_CTL                      0xc0010116
     1180#define MSR_K8_IGNNE                        UINT32_C(0xc0010115)
     1181#define MSR_K8_SMM_CTL                      UINT32_C(0xc0010116)
    11781182/** SVM - VM_HSAVE_PA - Physical address for saving and restoring
    1179  *                      host state during world switch.
    1180  */
    1181 #define MSR_K8_VM_HSAVE_PA                  0xc0010117
     1183 *                      host state during world switch. */
     1184#define MSR_K8_VM_HSAVE_PA                  UINT32_C(0xc0010117)
    11821185
    11831186/** @} */
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette