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[0] = (reg ? 1 : 0); > + ucontrol->value.integer.value[0] = (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. Tim. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel