[alsa-devel] multi pcm and mmap problem
tiwai at suse.de
Tue Nov 27 15:06:11 CET 2007
At Mon, 26 Nov 2007 17:46:59 -0500,
> On Monday 26 November 2007 05:38:59 am you wrote:
> > > It seems to me, looking at the 'IEC958 CS8427 Error Status' results
> > > below, that envy24control should perhaps be using it, instead of
> > > 'Word Clock Status', as a 'locked' indicator.
> > Actually 'Word Clock Status' is determined from this register value.
> > So far it checks whether its zero or not. But this seesm too strict.
> > We'll need to check only the UNLOCK bit (bit 4) for sync status.
> > How about the patch below (to alsa-kernel)?
> > diff -r 5e8cab953031 pci/ice1712/delta.c
> > --- a/pci/ice1712/delta.c Mon Nov 26 09:00:56 2007 +0100
> > +++ b/pci/ice1712/delta.c Mon Nov 26 11:56:18 2007 +0100
> > @@ -405,7 +405,7 @@ static int snd_ice1712_delta1010lt_wordc
> > if (snd_i2c_sendbytes(ice->cs8427, ®, 1) != 1)
> > snd_printk(KERN_ERR "unable to send register 0x%x byte to CS8427\n",
> > reg); snd_i2c_readbytes(ice->cs8427, ®, 1);
> > - ucontrol->value.integer.value = (reg ? 1 : 0);
> > + ucontrol->value.integer.value = (reg & CS8427_UNLOCK) ? 1 : 0;
> > return 0;
> > }
> Ah, there we go!
> Tested OK connecting/disconnecting S/PDIF cable -
> says 'locked' then 'no signal'.
> Thanks again, Takashi.
OK, the patch is now on ALSA HG tree.
Thanks for confirmation.
More information about the Alsa-devel