VirtualBox

Changeset 24926 in vbox for trunk/src


Ignore:
Timestamp:
Nov 25, 2009 8:34:23 AM (15 years ago)
Author:
vboxsync
Message:

2d accel: clear the Graphics Device IRQ in case it is set on reset

Location:
trunk/src/VBox/Devices/Graphics
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Graphics/DevVGA.h

    r24714 r24926  
    463463int      VBVAUpdateDisplay (PVGASTATE pVGAState);
    464464void     VBVAReset (PVGASTATE pVGAState);
    465 void     HGSMIReset (PHGSMIINSTANCE pIns);
     465/* @return host-guest flags that were set on reset
     466 * this allows the caller to make further cleaning when needed,
     467 * e.g. reset the IRQ */
     468uint32_t HGSMIReset (PHGSMIINSTANCE pIns);
    466469
    467470# ifdef VBOX_WITH_VIDEOHWACCEL
  • trunk/src/VBox/Devices/Graphics/DevVGA_VBVA.cpp

    r24925 r24926  
    15581558#endif
    15591559
    1560     HGSMIReset (pVGAState->pHGSMI);
     1560    uint32_t HgFlags = HGSMIReset (pVGAState->pHGSMI);
     1561    if(HgFlags & HGSMIHOSTFLAGS_IRQ)
     1562    {
     1563        /* this means the IRQ is LEVEL_HIGH, need to reset it */
     1564        PDMDevHlpPCISetIrq(pVGAState->pDevInsR3, 0, PDM_IRQ_LEVEL_LOW);
     1565    }
    15611566
    15621567    if (pCtx)
  • trunk/src/VBox/Devices/Graphics/HGSMI/HGSMIHost.cpp

    r24678 r24926  
    15381538}
    15391539
    1540 void HGSMIReset (PHGSMIINSTANCE pIns)
    1541 {
     1540uint32_t HGSMIReset (PHGSMIINSTANCE pIns)
     1541{
     1542    uint32_t flags = 0;
    15421543    if(pIns->pHGFlags)
    15431544    {
    15441545        /* treat the abandoned commands as read.. */
    15451546        while(HGSMIHostRead (pIns) != HGSMIOFFSET_VOID)  {}
     1547        flags = pIns->pHGFlags->u32HostFlags;
     1548        pIns->pHGFlags->u32HostFlags = 0;
    15461549    }
    15471550
     
    15501553
    15511554    HGSMIHeapSetupUnitialized (&pIns->hostHeap);
     1555
     1556    return flags;
    15521557}
    15531558
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