Re: dual pdaudio-cf cards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 9 Feb 2010, Burris T. Ewell wrote:

> I'm trying to capture 4 tracks using a pair of pdaudio-cf cards.  The
> drivers load and the cards are shown in /proc/asound on IRQs 17 and
> 18.  I have a .asoundrc setup as in the example on TwoCardsAsOne on
> the wiki.  The cards are being fed from a pair of clock-synced ADCs.
>
> Everything seems OK until I try to capture from the route device (or
> multi device.)  The red lights on the cards will come on for a moment,
> then the machine will lock up spewing "PDAUDIOCF SRAM buffer overrun
> detected!" to the console.  Looking in the pdaudiocf driver, the
> interrupt handler says that this condition "should never happen."
>
> 	stat = inw(chip->port + PDAUDIOCF_REG_ISR);
> 	if (stat & (PDAUDIOCF_IRQLVL|PDAUDIOCF_IRQOVR)) {
> 		if (stat & PDAUDIOCF_IRQOVR)	/* should never happen */
> 			snd_printk(KERN_ERR "PDAUDIOCF SRAM buffer overrun detected!\n");
> 		if (chip->pcm_substream)
> 			tasklet_schedule(&chip->tq);
> 		if (!(stat & PDAUDIOCF_IRQAKM))
> 			stat |= PDAUDIOCF_IRQAKM;	/* check rate */
> 	}
>
>
>
> Any ideas on what is wrong or how to fix this?  Perhaps the cards need
> to be reset or the buffers drained before starting capture?  I'm happy
> to hack the driver and submit a patch you tell me what I need to do to
> fix it.  Any pointers would be appreciated

No idea. Does one card work? The pdaudiocf card is reset after each 
operation to default state, so the SRAM buffer should be empty before 
the record starts. The interrupt should be triggered when 1/8 of SRAM 
buffer is filled, so there should be plenty of time to move samples from 
it.

The reason might be a poor I/O performance through the PCMCIA bus.

Just put some printk lines to the interrupt handler showing timestamps 
(for example use jiffies variable) in the pdacf_interrupt() and 
pdacf_tasklet() routines and you'll see the timing. The tasklet routine 
reads and removes samples from the SRAM buffer.

 						Jaroslav

-----
Jaroslav Kysela <perex@xxxxxxxx>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.


------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user

[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux