VirtualBox

Changeset 20835 in vbox for trunk/src/VBox/VMM/VMMR0


Ignore:
Timestamp:
Jun 23, 2009 1:55:08 PM (16 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
48974
Message:

Interface for generating NMI & SMI added.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/PDMR0Device.cpp

    r20374 r20835  
    8989 * @{
    9090 */
    91 static DECLCALLBACK(void) pdmR0ApicHlp_SetInterruptFF(PPDMDEVINS pDevIns, VMCPUID idCpu);
     91static DECLCALLBACK(void) pdmR0ApicHlp_SetInterruptFF(PPDMDEVINS pDevIns, PDMAPICIRQ enmType, VMCPUID idCpu);
    9292static DECLCALLBACK(void) pdmR0ApicHlp_ClearInterruptFF(PPDMDEVINS pDevIns, VMCPUID idCpu);
    9393static DECLCALLBACK(void) pdmR0ApicHlp_ChangeFeature(PPDMDEVINS pDevIns, PDMAPICVERSION enmVersion);
     
    427427
    428428/** @copydoc PDMAPICHLPR0::pfnSetInterruptFF */
    429 static DECLCALLBACK(void) pdmR0ApicHlp_SetInterruptFF(PPDMDEVINS pDevIns, VMCPUID idCpu)
     429static DECLCALLBACK(void) pdmR0ApicHlp_SetInterruptFF(PPDMDEVINS pDevIns, PDMAPICIRQ enmType, VMCPUID idCpu)
    430430{
    431431    PDMDEV_ASSERT_DEVINS(pDevIns);
     
    437437    LogFlow(("pdmR0ApicHlp_SetInterruptFF: caller=%p/%d: VM_FF_INTERRUPT %d -> 1\n",
    438438             pDevIns, pDevIns->iInstance, VMCPU_FF_ISSET(pVCpu, VMCPU_FF_INTERRUPT_APIC)));
    439     VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC);
     439
     440    switch (enmType)
     441    {
     442    case PDMAPICIRQ_HARDWARE:
     443        VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_APIC);
     444        break;
     445    case PDMAPICIRQ_NMI:
     446        VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_NMI);
     447        break;
     448    case PDMAPICIRQ_SMI:
     449        VMCPU_FF_SET(pVCpu, VMCPU_FF_INTERRUPT_SMI);
     450        break;
     451    }
    440452
    441453    /* We need to wait up the target CPU. */
Note: See TracChangeset for help on using the changeset viewer.

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