Changeset 107308 in vbox for trunk/src/VBox/VMM/VMMR3
- Timestamp:
- Dec 13, 2024 8:09:39 AM (5 weeks ago)
- Location:
- trunk/src/VBox/VMM/VMMR3
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/APIC.cpp
r107217 r107308 1448 1448 * Register the APIC with PDM. 1449 1449 */ 1450 rc = PDMDevHlp ApicRegister(pDevIns);1450 rc = PDMDevHlpIcRegister(pDevIns); 1451 1451 AssertLogRelRCReturn(rc, rc); 1452 1452 -
trunk/src/VBox/VMM/VMMR3/GICR3.cpp
r106999 r107308 33 33 #include <VBox/log.h> 34 34 #include "GICInternal.h" 35 #include <VBox/vmm/ gic.h>35 #include <VBox/vmm/pdmgic.h> 36 36 #include <VBox/vmm/cpum.h> 37 37 #include <VBox/vmm/hm.h> … … 425 425 * Register the GIC with PDM. 426 426 */ 427 rc = PDMDevHlpApicRegister(pDevIns); 427 rc = PDMDevHlpIcRegister(pDevIns); 428 AssertLogRelRCReturn(rc, rc); 429 430 rc = PDMGicRegisterBackend(pVM, PDMGICBACKENDTYPE_VBOX, &g_GicBackend); 428 431 AssertLogRelRCReturn(rc, rc); 429 432 -
trunk/src/VBox/VMM/VMMR3/GICR3Nem-darwin.cpp
r105687 r107308 33 33 #include <VBox/log.h> 34 34 #include "GICInternal.h" 35 #include "NEMInternal.h" /* Need access to the VM file descriptor . */36 #include <VBox/vmm/ gic.h>35 #include "NEMInternal.h" /* Need access to the VM file descriptor and for GIC API currently implemented in NEM. */ 36 #include <VBox/vmm/pdmgic.h> 37 37 #include <VBox/vmm/cpum.h> 38 38 #include <VBox/vmm/hm.h> … … 46 46 47 47 /********************************************************************************************************************************* 48 * Defined Constants And Macros *49 *********************************************************************************************************************************/50 51 52 /*********************************************************************************************************************************53 48 * Structures and Typedefs * 54 49 *********************************************************************************************************************************/ 55 50 56 51 /** 57 * GIC KvmPDM instance data (per-VM).52 * GIC Hypervisor.Framework PDM instance data (per-VM). 58 53 */ 59 typedef struct GIC KVMDEV54 typedef struct GICHVFDEV 60 55 { 61 56 /** Pointer to the PDM device instance. */ 62 57 PPDMDEVINSR3 pDevIns; 63 } GIC KVMDEV;58 } GICHVFDEV; 64 59 /** Pointer to a GIC KVM device. */ 65 typedef GIC KVMDEV *PGICKVMDEV;60 typedef GICHVFDEV *PGICHVFDEV; 66 61 /** Pointer to a const GIC KVM device. */ 67 typedef GICKVMDEV const *PCGICKVMDEV; 68 69 70 /********************************************************************************************************************************* 71 * Global Variables * 72 *********************************************************************************************************************************/ 73 62 typedef GICHVFDEV const *PCGICHVFDEV; 74 63 75 64 … … 77 66 * @interface_method_impl{PDMDEVREG,pfnConstruct} 78 67 */ 79 DECLCALLBACK(int) gicR3 NemConstruct(PPDMDEVINS pDevIns, int iInstance, PCFGMNODE pCfg)68 DECLCALLBACK(int) gicR3HvfConstruct(PPDMDEVINS pDevIns, int iInstance, PCFGMNODE pCfg) 80 69 { 81 70 PDMDEV_CHECK_VERSIONS_RETURN(pDevIns); 82 PGIC KVMDEV pThis = PDMDEVINS_2_DATA(pDevIns, PGICKVMDEV);71 PGICHVFDEV pThis = PDMDEVINS_2_DATA(pDevIns, PGICHVFDEV); 83 72 PVM pVM = PDMDevHlpGetVM(pDevIns); 84 73 PGIC pGic = VM_TO_GIC(pVM); … … 91 80 */ 92 81 pGic->pDevInsR3 = pDevIns; 93 pGic->fNemGic = true;94 82 pThis->pDevIns = pDevIns; 95 83 … … 103 91 * Register the GIC with PDM. 104 92 */ 105 rc = PDMDevHlpApicRegister(pDevIns); 93 rc = PDMDevHlpIcRegister(pDevIns); 94 AssertLogRelRCReturn(rc, rc); 95 96 rc = PDMGicRegisterBackend(pVM, PDMGICBACKENDTYPE_HVF, &g_GicHvfBackend); 106 97 AssertLogRelRCReturn(rc, rc); 107 98 … … 131 122 /* .szRCMod = */ "VMMRC.rc", 132 123 /* .szR0Mod = */ "VMMR0.r0", 133 /* .pfnConstruct = */ gicR3 NemConstruct,124 /* .pfnConstruct = */ gicR3HvfConstruct, 134 125 /* .pfnDestruct = */ NULL, 135 126 /* .pfnRelocate = */ NULL, … … 159 150 }; 160 151 152 153 /** 154 * The Hypervisor.Framework GIC backend. 155 */ 156 const PDMGICBACKEND g_GicHvfBackend = 157 { 158 /* .pfnReadSysReg = */ NEMR3GicReadSysReg, 159 /* .pfnWriteSysReg = */ NEMR3GicWriteSysReg, 160 /* .pfnSetSpi = */ NEMR3GicSetSpi, 161 /* .pfnSetPpi = */ NEMR3GicSetPpi, 162 }; 163 161 164 #endif /* !VBOX_DEVICE_STRUCT_TESTCASE */ 162 165 -
trunk/src/VBox/VMM/VMMR3/GICR3Nem-linux.cpp
r105687 r107308 34 34 #include "GICInternal.h" 35 35 #include "NEMInternal.h" /* Need access to the VM file descriptor. */ 36 #include <VBox/vmm/ gic.h>36 #include <VBox/vmm/pdmgic.h> 37 37 #include <VBox/vmm/cpum.h> 38 38 #include <VBox/vmm/hm.h> … … 101 101 102 102 /** 103 * Common worker for GICR3KvmSpiSet() and GICR3KvmPpiSet().103 * Common worker for gicR3KvmSpiSet() and gicR3KvmPpiSet(). 104 104 * 105 105 * @returns VBox status code. … … 138 138 * @param fAsserted Flag whether the interrupt is asserted (true) or not (false). 139 139 */ 140 VMMR3_INT_DECL(int) GICR3NemSpiSet(PVMCC pVM, uint32_t uIntId, bool fAsserted)140 static DECLCALLBACK(int) gicR3KvmSetSpi(PVMCC pVM, uint32_t uIntId, bool fAsserted) 141 141 { 142 142 PGIC pGic = VM_TO_GIC(pVM); … … 157 157 * @param fAsserted Flag whether the interrupt is asserted (true) or not (false). 158 158 */ 159 VMMR3_INT_DECL(int) GICR3NemPpiSet(PVMCPUCC pVCpu, uint32_t uIntId, bool fAsserted)159 static DECLCALLBACK(int) gicR3KvmSetPpi(PVMCPUCC pVCpu, uint32_t uIntId, bool fAsserted) 160 160 { 161 161 PPDMDEVINS pDevIns = VMCPU_TO_DEVINS(pVCpu); 162 162 163 return gicR3KvmSetIrq(pDevIns, pVCpu->idCpu, KVM_ARM_IRQ_TYPE_ SPI,163 return gicR3KvmSetIrq(pDevIns, pVCpu->idCpu, KVM_ARM_IRQ_TYPE_PPI, 164 164 uIntId + GIC_INTID_RANGE_PPI_START, fAsserted); 165 165 } … … 294 294 * Register the GIC with PDM. 295 295 */ 296 rc = PDMDevHlpApicRegister(pDevIns); 296 rc = PDMDevHlpIcRegister(pDevIns); 297 AssertLogRelRCReturn(rc, rc); 298 299 rc = PDMGicRegisterBackend(pVM, PDMGICBACKENDTYPE_KVM, &g_GicKvmBackend); 297 300 AssertLogRelRCReturn(rc, rc); 298 301 … … 405 408 }; 406 409 410 /** 411 * The KVM GIC backend. 412 */ 413 const PDMGICBACKEND g_GicKvmBackend = 414 { 415 /* .pfnReadSysReg = */ NULL, 416 /* .pfnWriteSysReg = */ NULL, 417 /* .pfnSetSpi = */ gicR3KvmSetSpi, 418 /* .pfnSetPpi = */ gicR3KvmSetPpi, 419 }; 420 407 421 #endif /* !VBOX_DEVICE_STRUCT_TESTCASE */ 408 422 -
trunk/src/VBox/VMM/VMMR3/GICR3Nem-win.cpp
r106952 r107308 38 38 #include "GICInternal.h" 39 39 #include "NEMInternal.h" /* Need access to the partition handle. */ 40 #include <VBox/vmm/ gic.h>40 #include <VBox/vmm/pdmgic.h> 41 41 #include <VBox/vmm/cpum.h> 42 42 #include <VBox/vmm/hm.h> … … 70 70 WHV_PARTITION_HANDLE hPartition; 71 71 } GICHVDEV; 72 /** Pointer to a GIC KVMdevice. */72 /** Pointer to a GIC Hyper-V device. */ 73 73 typedef GICHVDEV *PGICHVDEV; 74 /** Pointer to a const GIC KVMdevice. */74 /** Pointer to a const GIC Hyper-V device. */ 75 75 typedef GICHVDEV const *PCGICHVDEV; 76 76 … … 124 124 125 125 /** 126 * Common worker for GICR3KvmSpiSet() and GICR3KvmPpiSet().126 * Common worker for gicR3HvSetSpi() and gicR3HvSetPpi(). 127 127 * 128 128 * @returns VBox status code. 129 * @param pDevIns The PDM KVMGIC device instance.129 * @param pDevIns The PDM Hyper-V GIC device instance. 130 130 * @param idCpu The CPU ID for which the interrupt is updated (only valid for PPIs). 131 131 * @param fPpi Flag whether this is a PPI or SPI. … … 163 163 164 164 /** 165 * Sets the given SPI inside the in-kernel KVMGIC.165 * Sets the given SPI inside the in-kernel Hyper-V GIC. 166 166 * 167 167 * @returns VBox status code. … … 170 170 * @param fAsserted Flag whether the interrupt is asserted (true) or not (false). 171 171 */ 172 VMMR3_INT_DECL(int) GICR3NemSpiSet(PVMCC pVM, uint32_t uIntId, bool fAsserted)172 static DECLCALLBACK(int) gicR3HvSetSpi(PVMCC pVM, uint32_t uIntId, bool fAsserted) 173 173 { 174 174 PGIC pGic = VM_TO_GIC(pVM); … … 182 182 183 183 /** 184 * Sets the given PPI inside the in-kernel KVMGIC.184 * Sets the given PPI inside the in-kernel Hyper-V GIC. 185 185 * 186 186 * @returns VBox status code. … … 189 189 * @param fAsserted Flag whether the interrupt is asserted (true) or not (false). 190 190 */ 191 VMMR3_INT_DECL(int) GICR3NemPpiSet(PVMCPUCC pVCpu, uint32_t uIntId, bool fAsserted)191 static DECLCALLBACK(int) gicR3HvSetPpi(PVMCPUCC pVCpu, uint32_t uIntId, bool fAsserted) 192 192 { 193 193 PPDMDEVINS pDevIns = VMCPU_TO_DEVINS(pVCpu); … … 259 259 * Register the GIC with PDM. 260 260 */ 261 rc = PDMDevHlpApicRegister(pDevIns); 261 rc = PDMDevHlpIcRegister(pDevIns); 262 AssertLogRelRCReturn(rc, rc); 263 264 rc = PDMGicRegisterBackend(pVM, PDMGICBACKENDTYPE_HYPERV, &g_GicHvBackend); 262 265 AssertLogRelRCReturn(rc, rc); 263 266 … … 331 334 }; 332 335 336 /** 337 * The Hypervisor.Framework GIC backend. 338 */ 339 const PDMGICBACKEND g_GicHvfBackend = 340 { 341 /* .pfnReadSysReg = */ NULL, 342 /* .pfnWriteSysReg = */ NULL, 343 /* .pfnSetSpi = */ gicR3HvSetSpi, 344 /* .pfnSetPpi = */ gicR3HvSetPpi, 345 }; 346 333 347 #endif /* !VBOX_DEVICE_STRUCT_TESTCASE */ 334 348 -
trunk/src/VBox/VMM/VMMR3/NEMR3Native-darwin-armv8.cpp
r107132 r107308 39 39 #include <VBox/vmm/iem.h> 40 40 #include <VBox/vmm/em.h> 41 #include <VBox/vmm/ gic.h>41 #include <VBox/vmm/pdmgic.h> 42 42 #include <VBox/vmm/pdm.h> 43 43 #include <VBox/vmm/dbgftrace.h> … … 91 91 typedef enum hv_gic_icc_reg_t : uint16_t 92 92 { 93 HV_GIC_ICC_REG_AP0R0_EL1 93 HV_GIC_ICC_REG_PMR_EL1, 94 HV_GIC_ICC_REG_BPR0_EL1, 95 HV_GIC_ICC_REG_AP0R0_EL1, 96 HV_GIC_ICC_REG_AP1R0_EL1, 97 HV_GIC_ICC_REG_RPR_EL1, 98 HV_GIC_ICC_REG_BPR1_EL1, 99 HV_GIC_ICC_REG_CTLR_EL1, 100 HV_GIC_ICC_REG_SRE_EL1, 101 HV_GIC_ICC_REG_IGRPEN0_EL1, 102 HV_GIC_ICC_REG_IGRPEN1_EL1, 103 HV_GIC_ICC_REG_INVALID, 94 104 /** @todo */ 95 105 } hv_gic_icc_reg_t; … … 623 633 } 624 634 return ""; 635 } 636 637 638 /** 639 * Converts an ICC system register into Darwin's Hypervisor.Framework equivalent. 640 * 641 * @returns HvF's ICC system register. 642 * @param u32Reg The ARMv8 ICC system register. 643 */ 644 static hv_gic_icc_reg_t nemR3DarwinIccRegFromSysReg(uint32_t u32Reg) 645 { 646 switch (u32Reg) 647 { 648 case ARMV8_AARCH64_SYSREG_ICC_PMR_EL1: return HV_GIC_ICC_REG_PMR_EL1; 649 case ARMV8_AARCH64_SYSREG_ICC_IAR0_EL1: return HV_GIC_ICC_REG_INVALID; 650 case ARMV8_AARCH64_SYSREG_ICC_EOIR0_EL1: return HV_GIC_ICC_REG_INVALID; 651 case ARMV8_AARCH64_SYSREG_ICC_HPPIR0_EL1: return HV_GIC_ICC_REG_INVALID; 652 case ARMV8_AARCH64_SYSREG_ICC_BPR0_EL1: return HV_GIC_ICC_REG_BPR0_EL1; 653 case ARMV8_AARCH64_SYSREG_ICC_AP0R0_EL1: return HV_GIC_ICC_REG_AP0R0_EL1; 654 case ARMV8_AARCH64_SYSREG_ICC_AP0R1_EL1: return HV_GIC_ICC_REG_INVALID; 655 case ARMV8_AARCH64_SYSREG_ICC_AP0R2_EL1: return HV_GIC_ICC_REG_INVALID; 656 case ARMV8_AARCH64_SYSREG_ICC_AP0R3_EL1: return HV_GIC_ICC_REG_INVALID; 657 case ARMV8_AARCH64_SYSREG_ICC_AP1R0_EL1: return HV_GIC_ICC_REG_AP1R0_EL1; 658 case ARMV8_AARCH64_SYSREG_ICC_AP1R1_EL1: return HV_GIC_ICC_REG_INVALID; 659 case ARMV8_AARCH64_SYSREG_ICC_AP1R2_EL1: return HV_GIC_ICC_REG_INVALID; 660 case ARMV8_AARCH64_SYSREG_ICC_AP1R3_EL1: return HV_GIC_ICC_REG_INVALID; 661 case ARMV8_AARCH64_SYSREG_ICC_NMIAR1_EL1: return HV_GIC_ICC_REG_INVALID; 662 case ARMV8_AARCH64_SYSREG_ICC_DIR_EL1: return HV_GIC_ICC_REG_INVALID; 663 case ARMV8_AARCH64_SYSREG_ICC_RPR_EL1: return HV_GIC_ICC_REG_RPR_EL1; 664 case ARMV8_AARCH64_SYSREG_ICC_SGI1R_EL1: return HV_GIC_ICC_REG_INVALID; 665 case ARMV8_AARCH64_SYSREG_ICC_ASGI1R_EL1: return HV_GIC_ICC_REG_INVALID; 666 case ARMV8_AARCH64_SYSREG_ICC_SGI0R_EL1: return HV_GIC_ICC_REG_INVALID; 667 case ARMV8_AARCH64_SYSREG_ICC_IAR1_EL1: return HV_GIC_ICC_REG_INVALID; 668 case ARMV8_AARCH64_SYSREG_ICC_EOIR1_EL1: return HV_GIC_ICC_REG_INVALID; 669 case ARMV8_AARCH64_SYSREG_ICC_HPPIR1_EL1: return HV_GIC_ICC_REG_INVALID; 670 case ARMV8_AARCH64_SYSREG_ICC_BPR1_EL1: return HV_GIC_ICC_REG_BPR1_EL1; 671 case ARMV8_AARCH64_SYSREG_ICC_CTLR_EL1: return HV_GIC_ICC_REG_CTLR_EL1; 672 case ARMV8_AARCH64_SYSREG_ICC_SRE_EL1: return HV_GIC_ICC_REG_SRE_EL1; 673 case ARMV8_AARCH64_SYSREG_ICC_IGRPEN0_EL1: return HV_GIC_ICC_REG_IGRPEN0_EL1; 674 case ARMV8_AARCH64_SYSREG_ICC_IGRPEN1_EL1: return HV_GIC_ICC_REG_IGRPEN1_EL1; 675 } 676 AssertReleaseFailed(); 677 return HV_GIC_ICC_REG_INVALID; 625 678 } 626 679 … … 1141 1194 1142 1195 /** 1143 * Sets the given SPI inside the in-kernel KVMGIC.1196 * Sets the given SPI inside the in-kernel HvF GIC. 1144 1197 * 1145 1198 * @returns VBox status code. … … 1148 1201 * @param fAsserted Flag whether the interrupt is asserted (true) or not (false). 1149 1202 */ 1150 VMM R3_INT_DECL(int) GICR3NemSpiSet(PVMCC pVM, uint32_t uIntId, bool fAsserted)1203 VMM_INT_DECL(int) NEMR3GicSetSpi(PVMCC pVM, uint32_t uIntId, bool fAsserted) 1151 1204 { 1152 1205 RT_NOREF(pVM); … … 1159 1212 1160 1213 /** 1161 * Sets the given PPI inside the in-kernel KVMGIC.1214 * Sets the given PPI inside the in-kernel HvF GIC. 1162 1215 * 1163 1216 * @returns VBox status code. 1164 * @param pVCpu The vCPU for whi h the PPI state isupdated.1217 * @param pVCpu The vCPU for which the PPI state is to be updated. 1165 1218 * @param uIntId The PPI ID to update. 1166 1219 * @param fAsserted Flag whether the interrupt is asserted (true) or not (false). 1167 1220 */ 1168 VMM R3_INT_DECL(int) GICR3NemPpiSet(PVMCPUCC pVCpu, uint32_t uIntId, bool fAsserted)1221 VMM_INT_DECL(int) NEMR3GicSetPpi(PVMCPUCC pVCpu, uint32_t uIntId, bool fAsserted) 1169 1222 { 1170 1223 RT_NOREF(pVCpu, uIntId, fAsserted); … … 1173 1226 AssertFailed(); 1174 1227 return VERR_NEM_IPE_9; 1228 } 1229 1230 1231 /** 1232 * Writes a system ICC register inside the in-kernel HvF GIC. 1233 * 1234 * @returns VBox status code. 1235 * @param pVCpu The cross context virtual CPU structure. 1236 * @param u32Reg The ICC register. 1237 * @param u64Value The value being set. 1238 */ 1239 VMM_INT_DECL(VBOXSTRICTRC) NEMR3GicWriteSysReg(PVMCPUCC pVCpu, uint32_t u32Reg, uint64_t u64Value) 1240 { 1241 hv_gic_icc_reg_t const enmIccReg = nemR3DarwinIccRegFromSysReg(u32Reg); 1242 hv_return_t const hrc = hv_gic_set_icc_reg(pVCpu->nem.s.hVCpu, enmIccReg, u64Value); 1243 return nemR3DarwinHvSts2Rc(hrc); 1244 } 1245 1246 1247 /** 1248 * Reads a system ICC register inside the in-kernel HvF GIC. 1249 * 1250 * @returns VBox status code. 1251 * @param pVCpu The cross context virtual CPU structure. 1252 * @param u32Reg The ICC register. 1253 * @param u64Value Where to store value. 1254 */ 1255 VMM_INT_DECL(VBOXSTRICTRC) NEMR3GicReadSysReg(PVMCPUCC pVCpu, uint32_t u32Reg, uint64_t *pu64Value) 1256 { 1257 hv_gic_icc_reg_t const enmIccReg = nemR3DarwinIccRegFromSysReg(u32Reg); 1258 hv_return_t const hrc = hv_gic_get_icc_reg(pVCpu->nem.s.hVCpu, enmIccReg, pu64Value); 1259 return nemR3DarwinHvSts2Rc(hrc); 1175 1260 } 1176 1261 … … 2121 2206 TMCpuSetVTimerNextActivation(pVCpu, UINT64_MAX); 2122 2207 pVCpu->nem.s.fVTimerActivated = true; 2123 return GICPpiSet(pVCpu, pVM->nem.s.u32GicPpiVTimer, true /*fAsserted*/);2208 return PDMGicSetPpi(pVCpu, pVM->nem.s.u32GicPpiVTimer, true /*fAsserted*/); 2124 2209 } 2125 2210 default: … … 2206 2291 { 2207 2292 /* Clear the interrupt. */ 2208 GICPpiSet(pVCpu, pVM->nem.s.u32GicPpiVTimer, false /*fAsserted*/);2293 PDMGicSetPpi(pVCpu, pVM->nem.s.u32GicPpiVTimer, false /*fAsserted*/); 2209 2294 2210 2295 pVCpu->nem.s.fVTimerActivated = false; -
trunk/src/VBox/VMM/VMMR3/NEMR3Native-linux-armv8.cpp
r107026 r107308 35 35 #include <VBox/vmm/iem.h> 36 36 #include <VBox/vmm/em.h> 37 #include <VBox/vmm/ gic.h>37 #include <VBox/vmm/pdmgic.h> 38 38 #include <VBox/vmm/pdm.h> 39 39 #include <VBox/vmm/trpm.h> … … 1192 1192 { 1193 1193 TMCpuSetVTimerNextActivation(pVCpu, UINT64_MAX); 1194 GICPpiSet(pVCpu, pVM->nem.s.u32GicPpiVTimer, RT_BOOL(pRun->s.regs.device_irq_level & KVM_ARM_DEV_EL1_VTIMER));1194 PDMGicSetPpi(pVCpu, pVM->nem.s.u32GicPpiVTimer, RT_BOOL(pRun->s.regs.device_irq_level & KVM_ARM_DEV_EL1_VTIMER)); 1195 1195 } 1196 1196 … … 1198 1198 { 1199 1199 //TMCpuSetVTimerNextActivation(pVCpu, UINT64_MAX); 1200 GICPpiSet(pVCpu, pVM->nem.s.u32GicPpiVTimer, RT_BOOL(pRun->s.regs.device_irq_level & KVM_ARM_DEV_EL1_PTIMER));1200 PDMGicSetPpi(pVCpu, pVM->nem.s.u32GicPpiVTimer, RT_BOOL(pRun->s.regs.device_irq_level & KVM_ARM_DEV_EL1_PTIMER)); 1201 1201 } 1202 1202 -
trunk/src/VBox/VMM/VMMR3/PDMDevHlp.cpp
r107215 r107308 4186 4186 4187 4187 4188 /** @interface_method_impl{PDMDEVHLPR3,pfn ApicRegister} */4189 static DECLCALLBACK(int) pdmR3DevHlp_ ApicRegister(PPDMDEVINS pDevIns)4188 /** @interface_method_impl{PDMDEVHLPR3,pfnIcRegister} */ 4189 static DECLCALLBACK(int) pdmR3DevHlp_IcRegister(PPDMDEVINS pDevIns) 4190 4190 { 4191 4191 PDMDEV_ASSERT_DEVINS(pDevIns); … … 4221 4221 RTCritSectRwLeaveExcl(&pVM->pdm.s.CoreListCritSectRw); 4222 4222 4223 LogFlow(("pdmR3DevHlp_ ApicRegister: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, VINF_SUCCESS));4223 LogFlow(("pdmR3DevHlp_IcRegister: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, VINF_SUCCESS)); 4224 4224 return VINF_SUCCESS; 4225 4225 } … … 5275 5275 pdmR3DevHlp_IommuRegister, 5276 5276 pdmR3DevHlp_PICRegister, 5277 pdmR3DevHlp_ ApicRegister,5277 pdmR3DevHlp_IcRegister, 5278 5278 pdmR3DevHlp_IoApicRegister, 5279 5279 pdmR3DevHlp_HpetRegister, … … 5676 5676 pdmR3DevHlp_IommuRegister, 5677 5677 pdmR3DevHlp_PICRegister, 5678 pdmR3DevHlp_ ApicRegister,5678 pdmR3DevHlp_IcRegister, 5679 5679 pdmR3DevHlp_IoApicRegister, 5680 5680 pdmR3DevHlp_HpetRegister, … … 6405 6405 pdmR3DevHlp_IommuRegister, 6406 6406 pdmR3DevHlp_PICRegister, 6407 pdmR3DevHlp_ ApicRegister,6407 pdmR3DevHlp_IcRegister, 6408 6408 pdmR3DevHlp_IoApicRegister, 6409 6409 pdmR3DevHlp_HpetRegister, -
trunk/src/VBox/VMM/VMMR3/PDMDevice.cpp
r107227 r107308 35 35 #include <VBox/vmm/pdm.h> 36 36 #ifdef VBOX_VMM_TARGET_ARMV8 37 # include <VBox/vmm/ gic.h>37 # include <VBox/vmm/pdmgic.h> 38 38 # include <VBox/vmm/pmu.h> 39 39 #elif defined(VBOX_VMM_TARGET_X86) -
trunk/src/VBox/VMM/VMMR3/PMUR3.cpp
r106479 r107308 33 33 #include <VBox/log.h> 34 34 #include "PMUInternal.h" 35 #include <VBox/vmm/ gic.h>35 #include <VBox/vmm/pdmgic.h> 36 36 #include <VBox/vmm/cpum.h> 37 37 #include <VBox/vmm/hm.h> -
trunk/src/VBox/VMM/VMMR3/VMM.cpp
r107227 r107308 131 131 #include <VBox/vmm/dbgf.h> 132 132 #ifdef VBOX_VMM_TARGET_ARMV8 133 # include <VBox/vmm/ gic.h>133 # include <VBox/vmm/pdmgic.h> 134 134 #elif defined(VBOX_VMM_TARGET_X86) 135 135 # include <VBox/vmm/pdmapic.h>
Note:
See TracChangeset
for help on using the changeset viewer.