Changeset 550 for GPL


Ignore:
Timestamp:
Apr 14, 2011, 7:32:42 PM (14 years ago)
Author:
David Azarewicz
Message:

merge interrupt fixes from trunk

Location:
GPL/branches/uniaud32-2.1.x
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • GPL/branches/uniaud32-2.1.x/alsa-kernel/core/pcm_lib.c

    r543 r550  
    394394        if (!xrun_debug(substream, XRUN_DEBUG_JIFFIESCHECK))
    395395                goto no_jiffies_check;
     396#endif
    396397        /* Skip the jiffies check for hardwares with BATCH flag.
    397398         * Such hardware usually just increases the position at each IRQ,
     
    436437        }
    437438 no_jiffies_check:
    438 #endif
    439439        if (delta > runtime->period_size + runtime->period_size / 2) {
    440440                hw_ptr_error(substream,
  • GPL/branches/uniaud32-2.1.x/drv32/idc.c

    r548 r550  
    5656                rprintf(("AlsaIDC: Resuming"));
    5757                OSS32_APMResume();
     58                DbgPrintIrq();
    5859        }
    5960
     
    129130
    130131  case IDC32_WAVE_STOP:
     132                DbgPrintIrq();
    131133       return OSS32_WaveStop(pPacket->streamid);
    132134
  • GPL/branches/uniaud32-2.1.x/drv32/irq.cpp

    r548 r550  
    4646};
    4747
    48 extern DBGINT DbgInt;
     48extern "C" DBGINT DbgInt;
    4949
    5050//******************************************************************************
     
    9898   sti();
    9999   if( process_interrupt(ulSlotNo, &ulIrqNo) ) {
    100                 DbgInt.ulIntServiced[DbgInt.usState]++;
     100                DbgInt.ulIntServiced[DbgInt.ulState]++;
    101101       // We've cleared all service requests.
    102102       // Clear (disable) Interrupts, Send EOI
     
    107107       return TRUE;
    108108   }
    109         DbgInt.ulIntUnserviced[DbgInt.usState]++;
     109        DbgInt.ulIntUnserviced[DbgInt.ulState]++;
    110110   // Indicate Interrupt not serviced by setting carry flag before
    111111   // returning to OS/2 kernel.  OS/2 will then shut down the interrupt!
  • GPL/branches/uniaud32-2.1.x/drv32/read.cpp

    r548 r550  
    1616
    1717}
    18 
    19 extern DBGINT DbgInt;
    2018
    2119ULONG StratRead(RP __far* _rp)
  • GPL/branches/uniaud32-2.1.x/drv32/strategy.c

    r548 r550  
    4444extern "C" BOOL fRewired; //pci.c
    4545
    46 DBGINT DbgInt;
     46extern "C" DBGINT DbgInt;
    4747
    4848//******************************************************************************
     
    7272
    7373        memset(&DbgInt, 0, sizeof(DbgInt));
     74        DbgPrintIrq();
    7475
    7576        RPInit __far* rp = (RPInit __far*)_rp;
    7677        rc = DiscardableInit(rp);
    7778        //dprintf(("StratInit End rc=%d", rc));
    78         DbgInt.usState = 1;
     79        DbgPrintIrq();
     80        DbgInt.ulState = 1;
    7981        return rc;
    8082}
     
    8991#pragma on (unreferenced)
    9092{
    91         DbgInt.usState = 2;
     93        DbgInt.ulState = 2;
    9294#ifdef ACPI
    9395        PciAdjustInterrupts();
    9496#endif
    95         rprintf(("StratInitComplete: Init=%ld/%ld Between=%ld/%ld Complete=%ld/%ld",
    96                 DbgInt.ulIntServiced[0], DbgInt.ulIntUnserviced[0],
    97                 DbgInt.ulIntServiced[1], DbgInt.ulIntUnserviced[1],
    98                 DbgInt.ulIntServiced[2], DbgInt.ulIntUnserviced[2]));
     97        DbgPrintIrq();
    9998        //dprintf(("StratInitComplete"));
    10099        return(RPDONE);
     
    176175                rprintf(("Strategy: Resuming"));
    177176                OSS32_APMResume();
     177                DbgPrintIrq();
    178178        }
    179179
  • GPL/branches/uniaud32-2.1.x/include/dbgos2.h

    r548 r550  
    2727
    2828typedef struct {
    29         unsigned short usState;
     29        unsigned long ulState;
    3030        unsigned long ulIntServiced[4];
    3131        unsigned long ulIntUnserviced[4];
     
    3939extern char *szprintBuf;
    4040int _cdecl printk(const char * fmt, ...);
     41extern void DbgPrintIrq(void);
    4142#ifdef __cplusplus
    4243}
  • GPL/branches/uniaud32-2.1.x/lib32/debug.c

    r519 r550  
    4141char hextab[]="0123456789ABCDEF";
    4242
     43DBGINT DbgInt;
    4344                                        //-------------------- DecLongToASCII -
    4445char * DecLongToASCII(char *StrPtr, ULONG lDecVal,USHORT Option)
     
    391392}
    392393
     394void DbgPrintIrq(void) {
     395        rprintf(("Init=%ld/%ld Between=%ld/%ld Complete=%ld/%ld",
     396                DbgInt.ulIntServiced[0], DbgInt.ulIntUnserviced[0],
     397                DbgInt.ulIntServiced[1], DbgInt.ulIntUnserviced[1],
     398                DbgInt.ulIntServiced[2], DbgInt.ulIntUnserviced[2]));
     399}
     400
  • GPL/branches/uniaud32-2.1.x/lib32/ioctl.c

    r543 r550  
    402402        pcms = pcm_instances(deviceid);
    403403
    404         dprintf(("FillCaps: pcms=%i\n", pcms));
     404        //dprintf(("FillCaps: pcms=%i\n", pcms));
    405405        if (!pcmcaps[deviceid])
    406406        {
     
    546546        mixerhandle *pHandle = NULL;
    547547        int              ret, i, j;
    548 //        struct snd_ctl_card_info *pinfo;
    549 
    550         dprintf(("GetUniaudCardInfo"));
     548
     549        //dprintf(("GetUniaudCardInfo"));
    551550
    552551        if(alsa_fops == NULL) {
     
    603602        int              ret, i, j, sz;
    604603
    605         dprintf(("GetUniaudControlNum"));
     604        //dprintf(("GetUniaudControlNum"));
    606605
    607606        if(alsa_fops == NULL) {
     
    670669        int              ret, i, j, sz;
    671670
    672         dprintf(("GetUniaudControls"));
     671        //dprintf(("GetUniaudControls"));
    673672
    674673        if(alsa_fops == NULL) {
     
    762761        int              ret, i, j, sz;
    763762
    764         dprintf(("GetUniaudControlInfo"));
     763        //dprintf(("GetUniaudControlInfo"));
    765764
    766765        if(alsa_fops == NULL) {
     
    863862        if(pHandle) kfree(pHandle);
    864863
    865         dprintf(("GetUniaudControlValueGet: id=%x 0=%x 1=%x", pElem->id.numid, pElem->value.integer.value[0], pElem->value.integer.value[1]));
     864        //dprintf(("GetUniaudControlValueGet: id=%x 0=%x 1=%x", pElem->id.numid, pElem->value.integer.value[0], pElem->value.integer.value[1]));
    866865
    867866        return OSSERR_SUCCESS;
     
    939938        params = (struct snd_pcm_hw_params *)pHwParams;
    940939
    941         dprintf(("UniaudIoctlHWRefine"));
     940        //dprintf(("UniaudIoctlHWRefine"));
    942941
    943942        if (!params) return -1001;
     
    957956        params = (struct snd_pcm_hw_params *)pHwParams;
    958957
    959         dprintf(("UniaudIoctlHWParamSet"));
     958        //dprintf(("UniaudIoctlHWParamSet"));
    960959
    961960        if (!params) return -1001;
     
    975974        params = (struct snd_pcm_sw_params *)pSwParams;
    976975
    977         dprintf(("UniaudIoctlSWParamSet"));
     976        //dprintf(("UniaudIoctlSWParamSet"));
    978977
    979978        if (!params) return -1001;
     
    992991        struct snd_pcm_status   *status = (struct snd_pcm_status *)pstatus;
    993992
    994         dprintf(("UniaudIoctlPCMStatus"));
     993        //dprintf(("UniaudIoctlPCMStatus"));
    995994
    996995        if (!status) return -1001;
     
    10081007        soundhandle        *pHandle = (soundhandle *)streamid;
    10091008
    1010         dprintf(("UniaudIoctlPCMWrite"));
     1009        //dprintf(("UniaudIoctlPCMWrite"));
    10111010
    10121011        if (!buf) return -1001;
     
    10281027        if (!pHandle) return -1002;
    10291028
    1030         dprintf(("UniaudIoctlPCMRead"));
     1029        //dprintf(("UniaudIoctlPCMRead"));
    10311030
    10321031        pHandle->file.f_flags = O_NONBLOCK;
     
    10421041        soundhandle        *pHandle = (soundhandle *)streamid;
    10431042
    1044         dprintf(("UniaudIoctlPCMPrepare"));
     1043        //dprintf(("UniaudIoctlPCMPrepare"));
    10451044
    10461045        if (!pHandle) return -1002;
     
    10571056        soundhandle        *pHandle = (soundhandle *)streamid;
    10581057
    1059         dprintf(("UniaudIoctlPCMResume: %x", pause));
     1058        //dprintf(("UniaudIoctlPCMResume: %x", pause));
    10601059
    10611060        if (!pHandle) return -1002;
     
    10731072        soundhandle        *pHandle = (soundhandle *)streamid;
    10741073
    1075         dprintf(("UniaudIoctlPCMStart"));
     1074        //dprintf(("UniaudIoctlPCMStart"));
    10761075
    10771076        if (!pHandle) return -1002;
     
    10891088        soundhandle        *pHandle = (soundhandle *)streamid;
    10901089
    1091         dprintf(("UniaudIoctlPCMDrop"));
     1090        //dprintf(("UniaudIoctlPCMDrop"));
    10921091
    10931092        if (!pHandle) return -1002;
  • GPL/branches/uniaud32-2.1.x/lib32/irq.c

    r548 r550  
    3838
    3939BOOL fInInterrupt = FALSE;
    40 extern BOOL fSuspended; //pci.c
    41 
    4240
    4341//******************************************************************************
     
    171169
    172170        //dprintf(("enter int proc %d %d",ulSlotNo, *pulIrq));
    173 
    174         if(fSuspended)
    175         {//If our device is suspended, then we can't receive interrupts, so it must
    176                 //be for some other device
    177                 //Don't pass it to the linux handler as the device doesn't respond as expected
    178                 //when suspended
    179                 rprintf(("Slot %d IRQ %d suspended",ulSlotNo, *pulIrq));
    180                 return FALSE;
    181         }
    182171
    183172        if( ulSlotNo < MAX_IRQ_SLOTS )
  • GPL/branches/uniaud32-2.1.x/lib32/pci.c

    r548 r550  
    4747//struct pci_bus pci_busses[MAX_PCI_BUSSES] = {0};
    4848
    49 BOOL    fSuspended = FALSE;
    5049BOOL    fRewired = FALSE;
    5150extern int nrCardsDetected;
     
    934933        dprintf(("OSS32_APMResume"));
    935934
    936         fSuspended = FALSE;
    937 
    938935        for(i=0;i<MAX_PCI_DEVICES;i++)
    939936        {
     
    958955
    959956        dprintf(("OSS32_APMSuspend 1"));
    960 
    961         fSuspended = TRUE;
    962957
    963958        for(i=0;i<MAX_PCI_DEVICES;i++)
     
    994989                        driver = pcidev->pcidriver;
    995990                        if(driver && driver->suspend) driver->suspend(pcidev, SNDRV_CTL_POWER_D0);
    996                         fSuspended = TRUE;
    997991
    998992                        pcidev->irq_resource[0].flags = IORESOURCE_IRQ;
  • GPL/branches/uniaud32-2.1.x/uniaud.inc

    r548 r550  
    1313# ex RC3  GA  FIXPACK2 beta_47
    1414# Comment out to avoid a fixpack line in bldlevel
    15 FIXPACK = BETA SVNr548
     15FIXPACK = BETA SVNr550
    1616
    1717# ALSA BUILD VERSION
Note: See TracChangeset for help on using the changeset viewer.