ALSA: hda - show ICT/KAE control bits

Enable two debug options for S/PDIF Converter Control.
KAE: Keep Alive Enable; ICT: IEC Coding Type.

Signed-off-by: Wang Xingchao <xingchao.wang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Wang Xingchao 2012-08-13 15:43:49 +08:00 committed by Takashi Iwai
parent 7b03d1d9c0
commit 6152597971
2 changed files with 12 additions and 1 deletions

View File

@ -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<<7)
/* Pin widget control - 8bit */
#define AC_PINCTL_EPT (0x3<<0)
#define AC_PINCTL_EPT_NATIVE 0

View File

@ -402,6 +402,9 @@ static void print_digital_conv(struct snd_info_buffer *buffer,
{
unsigned int digi1 = snd_hda_codec_read(codec, nid, 0,
AC_VERB_GET_DIGI_CONVERT_1, 0);
unsigned char digi2 = digi1 >> 8;
unsigned char digi3 = digi1 >> 16;
snd_iprintf(buffer, " Digital:");
if (digi1 & AC_DIG1_ENABLE)
snd_iprintf(buffer, " Enabled");
@ -419,9 +422,13 @@ static void print_digital_conv(struct snd_info_buffer *buffer,
snd_iprintf(buffer, " Pro");
if (digi1 & AC_DIG1_LEVEL)
snd_iprintf(buffer, " GenLevel");
if (digi3 & AC_DIG3_KAE)
snd_iprintf(buffer, " KAE");
snd_iprintf(buffer, "\n");
snd_iprintf(buffer, " Digital category: 0x%x\n",
(digi1 >> 8) & AC_DIG2_CC);
digi2 & AC_DIG2_CC);
snd_iprintf(buffer, " IEC Coding Type: 0x%x\n",
digi3 & AC_DIG3_ICT);
}
static const char *get_pwr_state(u32 state)