Changeset 85916 in vbox for trunk/include/VBox/iommu-amd.h
- Timestamp:
- Aug 28, 2020 8:37:20 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/iommu-amd.h
r85913 r85916 466 466 struct 467 467 { 468 uint16_tu3Function : 3; /**< Bits 2:0 - Function. */469 uint16_tu9Device : 9; /**< Bits 11:3 - Device. */470 uint16_tu4Bus : 4; /**< Bits 15:12 - Bus. */468 RT_GCC_EXTENSION uint16_t u3Function : 3; /**< Bits 2:0 - Function. */ 469 RT_GCC_EXTENSION uint16_t u9Device : 9; /**< Bits 11:3 - Device. */ 470 RT_GCC_EXTENSION uint16_t u4Bus : 4; /**< Bits 15:12 - Bus. */ 471 471 } n; 472 472 /** The unsigned integer view. */ … … 917 917 struct 918 918 { 919 uint16_t u16DevId;/**< Bits 15:0 - Device ID. */920 uint16_t u4PasidHi : 4;/**< Bits 19:16 - PASID: Process Address-Space ID (Hi). */921 uint16_t u12Rsvd0 : 12;/**< Bits 31:20 - Reserved. */922 uint16_t u16PasidLo;/**< Bits 47:32 - PASID: Process Address-Space ID (Lo). */923 uint16_t u1GuestOrNested : 1;/**< Bit 48 - GN: Guest (GPA) or Nested (GVA). */924 uint16_t u2Rsvd0 : 2;/**< Bits 50:49 - Reserved. */925 uint16_t u1Interrupt : 1;/**< Bit 51 - I: Interrupt. */926 uint16_t u1Rsvd0 : 1;/**< Bit 52 - Reserved. */927 uint16_t u1ReadWrite : 1;/**< Bit 53 - RW: Read/Write. */928 uint16_t u1Rsvd1 : 1;/**< Bit 54 - Reserved. */929 uint16_t u1RsvdNotZero : 1;/**< Bit 55 - RZ: Reserved bit not Zero (0=invalid level encoding). */930 uint16_t u1Translation : 1;/**< Bit 56 - TN: Translation. */931 uint16_t u3Rsvd0 : 3;/**< Bits 59:57 - Reserved. */932 uint16_t u4EvtCode : 4;/**< Bits 63:60 - Event code. */933 uint64_t u64Addr;/**< Bits 127:64 - Address: I/O Virtual Address (IOVA). */919 uint16_t u16DevId; /**< Bits 15:0 - Device ID. */ 920 RT_GCC_EXTENSION uint16_t u4PasidHi : 4; /**< Bits 19:16 - PASID: Process Address-Space ID (Hi). */ 921 RT_GCC_EXTENSION uint16_t u12Rsvd0 : 12; /**< Bits 31:20 - Reserved. */ 922 uint16_t u16PasidLo; /**< Bits 47:32 - PASID: Process Address-Space ID (Lo). */ 923 RT_GCC_EXTENSION uint16_t u1GuestOrNested : 1; /**< Bit 48 - GN: Guest (GPA) or Nested (GVA). */ 924 RT_GCC_EXTENSION uint16_t u2Rsvd0 : 2; /**< Bits 50:49 - Reserved. */ 925 RT_GCC_EXTENSION uint16_t u1Interrupt : 1; /**< Bit 51 - I: Interrupt. */ 926 RT_GCC_EXTENSION uint16_t u1Rsvd0 : 1; /**< Bit 52 - Reserved. */ 927 RT_GCC_EXTENSION uint16_t u1ReadWrite : 1; /**< Bit 53 - RW: Read/Write. */ 928 RT_GCC_EXTENSION uint16_t u1Rsvd1 : 1; /**< Bit 54 - Reserved. */ 929 RT_GCC_EXTENSION uint16_t u1RsvdNotZero : 1; /**< Bit 55 - RZ: Reserved bit not Zero (0=invalid level encoding). */ 930 RT_GCC_EXTENSION uint16_t u1Translation : 1; /**< Bit 56 - TN: Translation. */ 931 RT_GCC_EXTENSION uint16_t u3Rsvd0 : 3; /**< Bits 59:57 - Reserved. */ 932 RT_GCC_EXTENSION uint16_t u4EvtCode : 4; /**< Bits 63:60 - Event code. */ 933 uint64_t u64Addr; /**< Bits 127:64 - Address: I/O Virtual Address (IOVA). */ 934 934 } n; 935 935 /** The 32-bit unsigned integer view. */ … … 952 952 struct 953 953 { 954 uint16_tu16DevId; /**< Bits 15:0 - Device ID. */955 uint16_tu4PasidHi : 4; /**< Bits 19:16 - PASID: Process Address-Space ID (Hi). */956 uint16_tu16DomainOrPasidLo; /**< Bits 47:32 - D/P: Domain ID or Process Address-Space ID (Lo). */957 uint16_tu1GuestOrNested : 1; /**< Bit 48 - GN: Guest (GPA) or Nested (GVA). */958 uint16_tu1NoExecute : 1; /**< Bit 49 - NX: No Execute. */959 uint16_tu1User : 1; /**< Bit 50 - US: User/Supervisor. */960 uint16_tu1Interrupt : 1; /**< Bit 51 - I: Interrupt. */961 uint16_tu1Present : 1; /**< Bit 52 - PR: Present. */962 uint16_tu1ReadWrite : 1; /**< Bit 53 - RW: Read/Write. */963 uint16_tu1PermDenied : 1; /**< Bit 54 - PE: Permission Indicator. */964 uint16_tu1RsvdNotZero : 1; /**< Bit 55 - RZ: Reserved bit not Zero (0=invalid level encoding). */965 uint16_tu1Translation : 1; /**< Bit 56 - TN: Translation. */966 uint16_tu3Rsvd0 : 3; /**< Bit 59:57 - Reserved. */967 uint16_tu4EvtCode : 4; /**< Bits 63:60 - Event code. */968 uint64_tu64Addr; /**< Bits 127:64 - Address: I/O Virtual Address (IOVA). */954 uint16_t u16DevId; /**< Bits 15:0 - Device ID. */ 955 RT_GCC_EXTENSION uint16_t u4PasidHi : 4; /**< Bits 19:16 - PASID: Process Address-Space ID (Hi). */ 956 RT_GCC_EXTENSION uint16_t u16DomainOrPasidLo; /**< Bits 47:32 - D/P: Domain ID or Process Address-Space ID (Lo). */ 957 RT_GCC_EXTENSION uint16_t u1GuestOrNested : 1; /**< Bit 48 - GN: Guest (GPA) or Nested (GVA). */ 958 RT_GCC_EXTENSION uint16_t u1NoExecute : 1; /**< Bit 49 - NX: No Execute. */ 959 RT_GCC_EXTENSION uint16_t u1User : 1; /**< Bit 50 - US: User/Supervisor. */ 960 RT_GCC_EXTENSION uint16_t u1Interrupt : 1; /**< Bit 51 - I: Interrupt. */ 961 RT_GCC_EXTENSION uint16_t u1Present : 1; /**< Bit 52 - PR: Present. */ 962 RT_GCC_EXTENSION uint16_t u1ReadWrite : 1; /**< Bit 53 - RW: Read/Write. */ 963 RT_GCC_EXTENSION uint16_t u1PermDenied : 1; /**< Bit 54 - PE: Permission Indicator. */ 964 RT_GCC_EXTENSION uint16_t u1RsvdNotZero : 1; /**< Bit 55 - RZ: Reserved bit not Zero (0=invalid level encoding). */ 965 RT_GCC_EXTENSION uint16_t u1Translation : 1; /**< Bit 56 - TN: Translation. */ 966 RT_GCC_EXTENSION uint16_t u3Rsvd0 : 3; /**< Bit 59:57 - Reserved. */ 967 RT_GCC_EXTENSION uint16_t u4EvtCode : 4; /**< Bits 63:60 - Event code. */ 968 uint64_t u64Addr; /**< Bits 127:64 - Address: I/O Virtual Address (IOVA). */ 969 969 } n; 970 970 /** The 32-bit unsigned integer view. */
Note:
See TracChangeset
for help on using the changeset viewer.