- Timestamp:
- May 12, 2021 9:23:03 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Bus/DevIommuIntel.cpp
r89001 r89007 1120 1120 /* 1121 1121 * Interrupt is unmasked, raise it. 1122 *1123 1122 * Interrupts generated by the DMAR have trigger mode and level as 0. 1124 1123 * See Intel spec. 5.1.6 "Remapping Hardware Event Interrupt Programming". 1125 1124 */ 1126 1125 MSIMSG Msi; 1127 Msi.Addr.au32[0] 1128 Msi.Addr.au32[1] 1129 Msi.Data.u32 1130 Msi.Data.n.u1Level = 0;1131 Msi.Data.n.u1TriggerMode = 0;1126 Msi.Addr.au32[0] = dmarRegReadRaw32(pThis, offMsiAddrLoReg); 1127 Msi.Addr.au32[1] = (pThis->fExtCapReg & VTD_BF_ECAP_REG_EIM_MASK) ? dmarRegReadRaw32(pThis, offMsiAddrHiReg) : 0; 1128 Msi.Data.u32 = dmarRegReadRaw32(pThis, offMsiDataReg); 1129 Assert(Msi.Data.n.u1Level == 0); 1130 Assert(Msi.Data.n.u1TriggerMode == 0); 1132 1131 1133 1132 PCDMARCC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PCDMARCC); … … 1789 1788 if (uGstsReg & VTD_BF_GSTS_REG_IRES_MASK) 1790 1789 { 1791 /* Handle compatibility format interrupts. */1792 1790 bool const fIsRemappable = RT_BF_GET(pMsiIn->Addr.au32[0], VTD_BF_REMAPPABLE_MSI_ADDR_INTR_FMT); 1793 1791 if (!fIsRemappable) 1794 1792 { 1793 /* Handle compatibility format interrupts. */ 1795 1794 STAM_COUNTER_INC(&pThis->CTX_SUFF_Z(StatMsiRemapCfi)); 1796 1795
Note:
See TracChangeset
for help on using the changeset viewer.