VirtualBox

Changeset 85916 in vbox for trunk/include/VBox/iommu-amd.h


Ignore:
Timestamp:
Aug 28, 2020 8:37:20 AM (4 years ago)
Author:
vboxsync
Message:

AMD IOMMU: bugref:9654 gcc pedantic build fix.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/iommu-amd.h

    r85913 r85916  
    466466    struct
    467467    {
    468         uint16_t    u3Function : 3;  /**< Bits 2:0   - Function. */
    469         uint16_t    u9Device : 9;    /**< Bits 11:3  - Device. */
    470         uint16_t    u4Bus : 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. */
    471471    } n;
    472472    /** The unsigned integer view. */
     
    917917    struct
    918918    {
    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). */
    934934    } n;
    935935    /** The 32-bit unsigned integer view.  */
     
    952952    struct
    953953    {
    954         uint16_t    u16DevId;               /**< Bits 15:0   - Device ID. */
    955         uint16_t    u4PasidHi : 4;          /**< Bits 19:16  - PASID: Process Address-Space ID (Hi). */
    956         uint16_t    u16DomainOrPasidLo;     /**< Bits 47:32  - D/P: Domain ID or Process Address-Space ID (Lo). */
    957         uint16_t    u1GuestOrNested : 1;    /**< Bit  48     - GN: Guest (GPA) or Nested (GVA). */
    958         uint16_t    u1NoExecute : 1;        /**< Bit  49     - NX: No Execute. */
    959         uint16_t    u1User : 1;             /**< Bit  50     - US: User/Supervisor. */
    960         uint16_t    u1Interrupt : 1;        /**< Bit  51     - I: Interrupt. */
    961         uint16_t    u1Present : 1;          /**< Bit  52     - PR: Present. */
    962         uint16_t    u1ReadWrite : 1;        /**< Bit  53     - RW: Read/Write. */
    963         uint16_t    u1PermDenied : 1;       /**< Bit  54     - PE: Permission Indicator. */
    964         uint16_t    u1RsvdNotZero : 1;      /**< Bit  55     - RZ: Reserved bit not Zero (0=invalid level encoding). */
    965         uint16_t    u1Translation : 1;      /**< Bit  56     - TN: Translation. */
    966         uint16_t    u3Rsvd0 : 3;            /**< Bit  59:57  - Reserved. */
    967         uint16_t    u4EvtCode : 4;          /**< Bits 63:60  - Event code. */
    968         uint64_t    u64Addr;                /**< 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). */
    969969    } n;
    970970    /** The 32-bit unsigned integer view.  */
Note: See TracChangeset for help on using the changeset viewer.

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