[alsa-devel] [PATCH 1/3] ALSA: hda - show ICT/KAE control bits

Wang, Xingchao xingchao.wang at intel.com
Mon Aug 13 09:49:40 CEST 2012



> -----Original Message-----
> From: alsa-devel-bounces at alsa-project.org
> [mailto:alsa-devel-bounces at alsa-project.org] On Behalf Of Takashi Iwai
> Sent: Monday, August 13, 2012 3:38 PM
> To: Wang, Xingchao
> Cc: alsa-devel at alsa-project.org
> Subject: Re: [alsa-devel] [PATCH 1/3] ALSA: hda - show ICT/KAE control bits
> 
> At Mon, 13 Aug 2012 14:11:09 +0800,
> Wang Xingchao wrote:
> >
> > Enable two debug options for S/PDIF Converter Control.
> > KAE: Keep Alive Enable; ICT: IEC Coding Type.
> >
> > Signed-off-by: Wang Xingchao <xingchao.wang at intel.com>
> > ---
> >  sound/pci/hda/hda_codec.h |    4 ++++
> >  sound/pci/hda/hda_proc.c  |    4 ++++
> >  2 files changed, 8 insertions(+)
> >
> > diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h
> > index c422d33..141b3b8 100644
> > --- a/sound/pci/hda/hda_codec.h
> > +++ b/sound/pci/hda/hda_codec.h
> > @@ -386,6 +386,10 @@ enum {
> >  /* DIGITAL2 bits */
> >  #define AC_DIG2_CC			(0x7f<<0)
> >
> > +/* DIGITAL3 bits */
> > +#define AC_DIG3_ICT			(0xf<<0)
> > +#define AC_DIG3_KAE			(1<<23)
> 
> For DIG3, it should be 1<<7.  (dig3 begins from bit 16.)

Okay. 
> 
> > +
> >  /* Pin widget control - 8bit */
> >  #define AC_PINCTL_EPT			(0x3<<0)
> >  #define AC_PINCTL_EPT_NATIVE		0
> > diff --git a/sound/pci/hda/hda_proc.c b/sound/pci/hda/hda_proc.c index
> > 7e46258..a222aae 100644
> > --- a/sound/pci/hda/hda_proc.c
> > +++ b/sound/pci/hda/hda_proc.c
> > @@ -419,9 +419,13 @@ static void print_digital_conv(struct snd_info_buffer
> *buffer,
> >  		snd_iprintf(buffer, " Pro");
> >  	if (digi1 & AC_DIG1_LEVEL)
> >  		snd_iprintf(buffer, " GenLevel");
> 
> Comparing dig1 and dig3 bitmask looks strange.

What about also add digi2 to specify AC_DIG1_LEVEL and CC? They are bit 7:14.

> For clarity, better to have
> 	unsigned char dig3;
> 	...
> 	dig3 = dig1 >> 16;
> 	if (dig3 & AC_DIG3_KAE)
> 		snd_iprintf(buffer, " KAE");
> 	...
> 	snd_iprintf(buffer, "  IEC Coding Type: 0x%x\n",
> 			dig3 & AC_DIG3_ICT);
> 

Okay, I will fix that in next version.
Thanks your review, Takashi. :)

thanks
--xingchao


More information about the Alsa-devel mailing list