Ignore:
Timestamp:
Jun 23, 2009, 11:48:55 AM (16 years ago)
Author:
Paul Smedley
Message:

Fixes for suspend/resume in APIC mode from Pasha

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GPL/trunk/drv32/irq.cpp

    r421 r453  
    8787    }
    8888
     89//PS+++ Begin
     90#ifdef ACPI
     91    if (InitCompleteWas == 0)
     92    {
     93        dprintf(("RMSetIrq saved %d %d %x was %d", (ULONG)ulIrq, ulSlotNo,(ULONG)sISRHigh[SaveIRQCounter].LowIRQ));
     94        sISRHigh[SaveIRQCounter].ulSlotNo = ulSlotNo;
     95        ulIrq = sISRHigh[SaveIRQCounter].LowIRQ;
     96        SaveIRQCounter++;
     97    }
     98
     99#endif
     100//PS End
     101
    89102    if(fShared)
    90103    {
     
    106119        return FALSE;
    107120    }
    108 //PS+++ Begin
    109 #ifdef ACPI
    110     if (InitCompleteWas == 0)
    111     {
    112         dprintf(("RMSetIrq saved %d %d %x was %d", (ULONG)ulIrq, ulSlotNo,(ULONG)sISRHigh[SaveIRQCounter].LowIRQ));
    113         sISRHigh[SaveIRQCounter].ulSlotNo = ulSlotNo;
    114         SaveIRQCounter++;
    115         return TRUE;
    116     }
    117 #endif
    118 //PS End
    119121
    120122    return TRUE;
     
    143145       // Note carry flag is handled in setup.asm
    144146       cli();
     147#ifdef ACPI
     148       // Before init complete we must send PIC IRQ (APIC MODE)
     149       if (!InitCompleteWas && SaveIRQCounter)
     150       {
     151           ulIrqNo = sISRHigh[SaveIRQCounter-1].LowIRQ;
     152       }
     153#endif
    145154       DevEOI( (WORD16)ulIrqNo );
    146155       return TRUE;
Note: See TracChangeset for help on using the changeset viewer.