[alsa-devel] [PATCH] ALSA: soc - fsl_ssi.c fix audio capture

Takashi Iwai tiwai at suse.de
Fri Jul 4 16:49:29 CEST 2008


At Fri, 4 Jul 2008 07:02:17 -0400,
Timur Tabi wrote:
> 
> 
> On Jul 3, 2008, at 10:42 AM, Mark Brown wrote:
> 
> > On Thu, Jul 03, 2008 at 06:37:14PM +0400, Anton Vorontsov wrote:
> >> Since we're using SSI in synchronous mode, the STCCR register  
> >> controls
> >> both the receive and transmit sections. So, when we're trying to  
> >> record
> >> anything, stccr register does not get initialized, thus the output  
> >> file
> >> filled with the white noise.
> >
> >> Fix this by initializing the STCCR for both playback and capture. If
> >> TX/RX widths don't match, return that we're busy at the moment.
> >
> >> Signed-off-by: Anton Vorontsov <avorontsov at ru.mvista.com>
> >
> > Acked-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
> >
> > but Timur needs to ack it since I don't have any particular  
> > knowledge of
> > the hardware.
> 
> Anton has the right idea, but I'm not sure the fix is the best.  I was  
> planning on posting my fix after I got back from vacation.
> 
> Part of the problem is that STCK and SRCK can be wired together, which  
> means that even though you're not in synchronous mode, the sample  
> rates have to match.  For the 8610 HPCD, this isn't a problem, but the  
> SSI driver is supposed to support more than just that board.  We need  
> device tree additions to cover all cases.
> 
> Anton, are you sure returning -EBUSY is the right fix?  Would this  
> make applications like mplayer detect the problem and automatically  
> pick a matching sample format that does work?

I guess it won't work in such a way.  But, at least, you can avoid
unexpected machine state, which resulted in white noise.

Since you will post another patch (I suppose it's with hw_constraint
coupling), I'll postpone this patch as now.


thanks,

Takashi


More information about the Alsa-devel mailing list