Changeset 73340 in vbox for trunk/src/VBox/VMM/include
- Timestamp:
- Jul 24, 2018 3:12:17 AM (6 years ago)
- Location:
- trunk/src/VBox/VMM/include
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/include/GIMHvInternal.h
r73335 r73340 224 224 */ 225 225 /** Start of range 0. */ 226 #define MSR_GIM_HV_RANGE0_ START UINT32_C(0x40000000)226 #define MSR_GIM_HV_RANGE0_FIRST UINT32_C(0x40000000) 227 227 /** Guest OS identification (R/W) */ 228 228 #define MSR_GIM_HV_GUEST_OS_ID UINT32_C(0x40000000) … … 234 234 #define MSR_GIM_HV_RESET UINT32_C(0x40000003) 235 235 /** End of range 0. */ 236 #define MSR_GIM_HV_RANGE0_ ENDMSR_GIM_HV_RESET236 #define MSR_GIM_HV_RANGE0_LAST MSR_GIM_HV_RESET 237 237 238 238 /** Start of range 1. */ 239 #define MSR_GIM_HV_RANGE1_ START UINT32_C(0x40000010)239 #define MSR_GIM_HV_RANGE1_FIRST UINT32_C(0x40000010) 240 240 /** Virtual processor's (VCPU) runtime (R) */ 241 241 #define MSR_GIM_HV_VP_RUNTIME UINT32_C(0x40000010) 242 242 /** End of range 1. */ 243 #define MSR_GIM_HV_RANGE1_ ENDMSR_GIM_HV_VP_RUNTIME243 #define MSR_GIM_HV_RANGE1_LAST MSR_GIM_HV_VP_RUNTIME 244 244 245 245 /** Start of range 2. */ 246 #define MSR_GIM_HV_RANGE2_ START UINT32_C(0x40000020)246 #define MSR_GIM_HV_RANGE2_FIRST UINT32_C(0x40000020) 247 247 /** Per-VM reference counter (R) */ 248 248 #define MSR_GIM_HV_TIME_REF_COUNT UINT32_C(0x40000020) … … 254 254 #define MSR_GIM_HV_APIC_FREQ UINT32_C(0x40000023) 255 255 /** End of range 2. */ 256 #define MSR_GIM_HV_RANGE2_ ENDMSR_GIM_HV_APIC_FREQ256 #define MSR_GIM_HV_RANGE2_LAST MSR_GIM_HV_APIC_FREQ 257 257 258 258 /** Start of range 3. */ 259 #define MSR_GIM_HV_RANGE3_ START UINT32_C(0x40000070)259 #define MSR_GIM_HV_RANGE3_FIRST UINT32_C(0x40000070) 260 260 /** Access to APIC EOI (End-Of-Interrupt) register (W) */ 261 261 #define MSR_GIM_HV_EOI UINT32_C(0x40000070) … … 267 267 #define MSR_GIM_HV_APIC_ASSIST_PAGE UINT32_C(0x40000073) 268 268 /** End of range 3. */ 269 #define MSR_GIM_HV_RANGE3_ ENDMSR_GIM_HV_APIC_ASSIST_PAGE269 #define MSR_GIM_HV_RANGE3_LAST MSR_GIM_HV_APIC_ASSIST_PAGE 270 270 271 271 /** Start of range 4. */ 272 #define MSR_GIM_HV_RANGE4_ START UINT32_C(0x40000080)272 #define MSR_GIM_HV_RANGE4_FIRST UINT32_C(0x40000080) 273 273 /** Control behaviour of synthetic interrupt controller (R/W) */ 274 274 #define MSR_GIM_HV_SCONTROL UINT32_C(0x40000080) … … 282 282 #define MSR_GIM_HV_EOM UINT32_C(0x40000084) 283 283 /** End of range 4. */ 284 #define MSR_GIM_HV_RANGE4_ ENDMSR_GIM_HV_EOM284 #define MSR_GIM_HV_RANGE4_LAST MSR_GIM_HV_EOM 285 285 286 286 /** Start of range 5. */ 287 #define MSR_GIM_HV_RANGE5_ START UINT32_C(0x40000090)287 #define MSR_GIM_HV_RANGE5_FIRST UINT32_C(0x40000090) 288 288 /** Configures synthetic interrupt source 0 (R/W) */ 289 289 #define MSR_GIM_HV_SINT0 UINT32_C(0x40000090) … … 319 319 #define MSR_GIM_HV_SINT15 UINT32_C(0x4000009F) 320 320 /** End of range 5. */ 321 #define MSR_GIM_HV_RANGE5_ ENDMSR_GIM_HV_SINT15321 #define MSR_GIM_HV_RANGE5_LAST MSR_GIM_HV_SINT15 322 322 323 323 /** Start of range 6. */ 324 #define MSR_GIM_HV_RANGE6_ START UINT32_C(0x400000B0)324 #define MSR_GIM_HV_RANGE6_FIRST UINT32_C(0x400000B0) 325 325 /** Configures register for synthetic timer 0 (R/W) */ 326 326 #define MSR_GIM_HV_STIMER0_CONFIG UINT32_C(0x400000B0) … … 340 340 #define MSR_GIM_HV_STIMER3_COUNT UINT32_C(0x400000B7) 341 341 /** End of range 6. */ 342 #define MSR_GIM_HV_RANGE6_ ENDMSR_GIM_HV_STIMER3_COUNT342 #define MSR_GIM_HV_RANGE6_LAST MSR_GIM_HV_STIMER3_COUNT 343 343 344 344 /** Start of range 7. */ 345 #define MSR_GIM_HV_RANGE7_ START UINT32_C(0x400000C1)345 #define MSR_GIM_HV_RANGE7_FIRST UINT32_C(0x400000C1) 346 346 /** Trigger to transition to power state C1 (R) */ 347 347 #define MSR_GIM_HV_POWER_STATE_TRIGGER_C1 UINT32_C(0x400000C1) … … 351 351 #define MSR_GIM_HV_POWER_STATE_TRIGGER_C3 UINT32_C(0x400000C3) 352 352 /** End of range 7. */ 353 #define MSR_GIM_HV_RANGE7_ ENDMSR_GIM_HV_POWER_STATE_TRIGGER_C3353 #define MSR_GIM_HV_RANGE7_LAST MSR_GIM_HV_POWER_STATE_TRIGGER_C3 354 354 355 355 /** Start of range 8. */ 356 #define MSR_GIM_HV_RANGE8_ START UINT32_C(0x400000D1)356 #define MSR_GIM_HV_RANGE8_FIRST UINT32_C(0x400000D1) 357 357 /** Configure the recipe for power state transitions to C1 (R/W) */ 358 358 #define MSR_GIM_HV_POWER_STATE_CONFIG_C1 UINT32_C(0x400000D1) … … 362 362 #define MSR_GIM_HV_POWER_STATE_CONFIG_C3 UINT32_C(0x400000D3) 363 363 /** End of range 8. */ 364 #define MSR_GIM_HV_RANGE8_ ENDMSR_GIM_HV_POWER_STATE_CONFIG_C3364 #define MSR_GIM_HV_RANGE8_LAST MSR_GIM_HV_POWER_STATE_CONFIG_C3 365 365 366 366 /** Start of range 9. */ 367 #define MSR_GIM_HV_RANGE9_ START UINT32_C(0x400000E0)367 #define MSR_GIM_HV_RANGE9_FIRST UINT32_C(0x400000E0) 368 368 /** Map the guest's retail partition stats page (R/W) */ 369 369 #define MSR_GIM_HV_STATS_PART_RETAIL_PAGE UINT32_C(0x400000E0) … … 375 375 #define MSR_GIM_HV_STATS_VP_INTERNAL_PAGE UINT32_C(0x400000E3) 376 376 /** End of range 9. */ 377 #define MSR_GIM_HV_RANGE9_ ENDMSR_GIM_HV_STATS_VP_INTERNAL_PAGE377 #define MSR_GIM_HV_RANGE9_LAST MSR_GIM_HV_STATS_VP_INTERNAL_PAGE 378 378 379 379 /** Start of range 10. */ 380 #define MSR_GIM_HV_RANGE10_ START UINT32_C(0x400000F0)380 #define MSR_GIM_HV_RANGE10_FIRST UINT32_C(0x400000F0) 381 381 /** Trigger the guest's transition to idle power state (R) */ 382 382 #define MSR_GIM_HV_GUEST_IDLE UINT32_C(0x400000F0) … … 392 392 #define MSR_GIM_HV_SYNTH_DEBUG_PENDING_BUFFER UINT32_C(0x400000F5) 393 393 /** End of range 10. */ 394 #define MSR_GIM_HV_RANGE10_ ENDMSR_GIM_HV_SYNTH_DEBUG_PENDING_BUFFER394 #define MSR_GIM_HV_RANGE10_LAST MSR_GIM_HV_SYNTH_DEBUG_PENDING_BUFFER 395 395 396 396 /** Start of range 11. */ 397 #define MSR_GIM_HV_RANGE11_ START UINT32_C(0x400000FF)397 #define MSR_GIM_HV_RANGE11_FIRST UINT32_C(0x400000FF) 398 398 /** Undocumented debug options MSR. */ 399 399 #define MSR_GIM_HV_DEBUG_OPTIONS_MSR UINT32_C(0x400000FF) 400 400 /** End of range 11. */ 401 #define MSR_GIM_HV_RANGE11_ ENDMSR_GIM_HV_DEBUG_OPTIONS_MSR401 #define MSR_GIM_HV_RANGE11_LAST MSR_GIM_HV_DEBUG_OPTIONS_MSR 402 402 403 403 /** Start of range 12. */ 404 #define MSR_GIM_HV_RANGE12_ START UINT32_C(0x40000100)404 #define MSR_GIM_HV_RANGE12_FIRST UINT32_C(0x40000100) 405 405 /** Guest crash MSR 0. */ 406 406 #define MSR_GIM_HV_CRASH_P0 UINT32_C(0x40000100) … … 416 416 #define MSR_GIM_HV_CRASH_CTL UINT32_C(0x40000105) 417 417 /** End of range 12. */ 418 #define MSR_GIM_HV_RANGE12_END MSR_GIM_HV_CRASH_CTL 419 /** @} */ 420 421 /** 422 * 423 * @todo r=bird: Incorrect use of the term 'END' here. 424 * The correct term is 'LAST' as it's inclusive. 425 * 'END' is the term for exclusive range terminators. 426 * 427 * See Coding guidelines. 428 * 429 */ 430 AssertCompile(MSR_GIM_HV_RANGE0_START <= MSR_GIM_HV_RANGE0_END); 431 AssertCompile(MSR_GIM_HV_RANGE1_START <= MSR_GIM_HV_RANGE1_END); 432 AssertCompile(MSR_GIM_HV_RANGE2_START <= MSR_GIM_HV_RANGE2_END); 433 AssertCompile(MSR_GIM_HV_RANGE3_START <= MSR_GIM_HV_RANGE3_END); 434 AssertCompile(MSR_GIM_HV_RANGE4_START <= MSR_GIM_HV_RANGE4_END); 435 AssertCompile(MSR_GIM_HV_RANGE5_START <= MSR_GIM_HV_RANGE5_END); 436 AssertCompile(MSR_GIM_HV_RANGE6_START <= MSR_GIM_HV_RANGE6_END); 437 AssertCompile(MSR_GIM_HV_RANGE7_START <= MSR_GIM_HV_RANGE7_END); 438 AssertCompile(MSR_GIM_HV_RANGE8_START <= MSR_GIM_HV_RANGE8_END); 439 AssertCompile(MSR_GIM_HV_RANGE9_START <= MSR_GIM_HV_RANGE9_END); 440 AssertCompile(MSR_GIM_HV_RANGE10_START <= MSR_GIM_HV_RANGE10_END); 441 AssertCompile(MSR_GIM_HV_RANGE11_START <= MSR_GIM_HV_RANGE11_END); 418 #define MSR_GIM_HV_RANGE12_LAST MSR_GIM_HV_CRASH_CTL 419 /** @} */ 420 421 AssertCompile(MSR_GIM_HV_RANGE0_FIRST <= MSR_GIM_HV_RANGE0_LAST); 422 AssertCompile(MSR_GIM_HV_RANGE1_FIRST <= MSR_GIM_HV_RANGE1_LAST); 423 AssertCompile(MSR_GIM_HV_RANGE2_FIRST <= MSR_GIM_HV_RANGE2_LAST); 424 AssertCompile(MSR_GIM_HV_RANGE3_FIRST <= MSR_GIM_HV_RANGE3_LAST); 425 AssertCompile(MSR_GIM_HV_RANGE4_FIRST <= MSR_GIM_HV_RANGE4_LAST); 426 AssertCompile(MSR_GIM_HV_RANGE5_FIRST <= MSR_GIM_HV_RANGE5_LAST); 427 AssertCompile(MSR_GIM_HV_RANGE6_FIRST <= MSR_GIM_HV_RANGE6_LAST); 428 AssertCompile(MSR_GIM_HV_RANGE7_FIRST <= MSR_GIM_HV_RANGE7_LAST); 429 AssertCompile(MSR_GIM_HV_RANGE8_FIRST <= MSR_GIM_HV_RANGE8_LAST); 430 AssertCompile(MSR_GIM_HV_RANGE9_FIRST <= MSR_GIM_HV_RANGE9_LAST); 431 AssertCompile(MSR_GIM_HV_RANGE10_FIRST <= MSR_GIM_HV_RANGE10_LAST); 432 AssertCompile(MSR_GIM_HV_RANGE11_FIRST <= MSR_GIM_HV_RANGE11_LAST); 442 433 443 434 /** @name Hyper-V MSR - Reset (MSR_GIM_HV_RESET). -
trunk/src/VBox/VMM/include/GIMKvmInternal.h
r72469 r73340 51 51 */ 52 52 /** Start of range 0. */ 53 #define MSR_GIM_KVM_RANGE0_ START UINT32_C(0x11)53 #define MSR_GIM_KVM_RANGE0_FIRST UINT32_C(0x11) 54 54 /** Old, deprecated wall clock. */ 55 55 #define MSR_GIM_KVM_WALL_CLOCK_OLD UINT32_C(0x11) … … 57 57 #define MSR_GIM_KVM_SYSTEM_TIME_OLD UINT32_C(0x12) 58 58 /** End of range 0. */ 59 #define MSR_GIM_KVM_RANGE0_ ENDMSR_GIM_KVM_SYSTEM_TIME_OLD59 #define MSR_GIM_KVM_RANGE0_LAST MSR_GIM_KVM_SYSTEM_TIME_OLD 60 60 61 61 /** Start of range 1. */ 62 #define MSR_GIM_KVM_RANGE1_ START UINT32_C(0x4b564d00)62 #define MSR_GIM_KVM_RANGE1_FIRST UINT32_C(0x4b564d00) 63 63 /** Wall clock. */ 64 64 #define MSR_GIM_KVM_WALL_CLOCK UINT32_C(0x4b564d00) … … 72 72 #define MSR_GIM_KVM_EOI UINT32_C(0x4b564d04) 73 73 /** End of range 1. */ 74 #define MSR_GIM_KVM_RANGE1_ ENDMSR_GIM_KVM_EOI75 76 AssertCompile(MSR_GIM_KVM_RANGE0_ START <= MSR_GIM_KVM_RANGE0_END);77 AssertCompile(MSR_GIM_KVM_RANGE1_ START <= MSR_GIM_KVM_RANGE1_END);74 #define MSR_GIM_KVM_RANGE1_LAST MSR_GIM_KVM_EOI 75 76 AssertCompile(MSR_GIM_KVM_RANGE0_FIRST <= MSR_GIM_KVM_RANGE0_LAST); 77 AssertCompile(MSR_GIM_KVM_RANGE1_FIRST <= MSR_GIM_KVM_RANGE1_LAST); 78 78 79 79 /** KVM page size. */
Note:
See TracChangeset
for help on using the changeset viewer.