diff options
author | Wang Xingchao <xingchao.wang@intel.com> | 2012-08-13 03:43:49 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-08-13 04:01:29 -0400 |
commit | 6152597971db4055b7b03ccc60afcd62214d41f4 (patch) | |
tree | ba3d5a9eb41bb4022dba76ab340c2446152f30b6 | |
parent | 7b03d1d9c0fd5d6df8da75d595c0768224d2a146 (diff) |
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>
-rw-r--r-- | sound/pci/hda/hda_codec.h | 4 | ||||
-rw-r--r-- | sound/pci/hda/hda_proc.c | 9 |
2 files changed, 12 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h index 39e43753ddbf..d772c2521cd9 100644 --- a/sound/pci/hda/hda_codec.h +++ b/sound/pci/hda/hda_codec.h | |||
@@ -386,6 +386,10 @@ enum { | |||
386 | /* DIGITAL2 bits */ | 386 | /* DIGITAL2 bits */ |
387 | #define AC_DIG2_CC (0x7f<<0) | 387 | #define AC_DIG2_CC (0x7f<<0) |
388 | 388 | ||
389 | /* DIGITAL3 bits */ | ||
390 | #define AC_DIG3_ICT (0xf<<0) | ||
391 | #define AC_DIG3_KAE (1<<7) | ||
392 | |||
389 | /* Pin widget control - 8bit */ | 393 | /* Pin widget control - 8bit */ |
390 | #define AC_PINCTL_EPT (0x3<<0) | 394 | #define AC_PINCTL_EPT (0x3<<0) |
391 | #define AC_PINCTL_EPT_NATIVE 0 | 395 | #define AC_PINCTL_EPT_NATIVE 0 |
diff --git a/sound/pci/hda/hda_proc.c b/sound/pci/hda/hda_proc.c index 7e46258fc700..32bb3d9bfc62 100644 --- a/sound/pci/hda/hda_proc.c +++ b/sound/pci/hda/hda_proc.c | |||
@@ -402,6 +402,9 @@ static void print_digital_conv(struct snd_info_buffer *buffer, | |||
402 | { | 402 | { |
403 | unsigned int digi1 = snd_hda_codec_read(codec, nid, 0, | 403 | unsigned int digi1 = snd_hda_codec_read(codec, nid, 0, |
404 | AC_VERB_GET_DIGI_CONVERT_1, 0); | 404 | AC_VERB_GET_DIGI_CONVERT_1, 0); |
405 | unsigned char digi2 = digi1 >> 8; | ||
406 | unsigned char digi3 = digi1 >> 16; | ||
407 | |||
405 | snd_iprintf(buffer, " Digital:"); | 408 | snd_iprintf(buffer, " Digital:"); |
406 | if (digi1 & AC_DIG1_ENABLE) | 409 | if (digi1 & AC_DIG1_ENABLE) |
407 | snd_iprintf(buffer, " Enabled"); | 410 | snd_iprintf(buffer, " Enabled"); |
@@ -419,9 +422,13 @@ static void print_digital_conv(struct snd_info_buffer *buffer, | |||
419 | snd_iprintf(buffer, " Pro"); | 422 | snd_iprintf(buffer, " Pro"); |
420 | if (digi1 & AC_DIG1_LEVEL) | 423 | if (digi1 & AC_DIG1_LEVEL) |
421 | snd_iprintf(buffer, " GenLevel"); | 424 | snd_iprintf(buffer, " GenLevel"); |
425 | if (digi3 & AC_DIG3_KAE) | ||
426 | snd_iprintf(buffer, " KAE"); | ||
422 | snd_iprintf(buffer, "\n"); | 427 | snd_iprintf(buffer, "\n"); |
423 | snd_iprintf(buffer, " Digital category: 0x%x\n", | 428 | snd_iprintf(buffer, " Digital category: 0x%x\n", |
424 | (digi1 >> 8) & AC_DIG2_CC); | 429 | digi2 & AC_DIG2_CC); |
430 | snd_iprintf(buffer, " IEC Coding Type: 0x%x\n", | ||
431 | digi3 & AC_DIG3_ICT); | ||
425 | } | 432 | } |
426 | 433 | ||
427 | static const char *get_pwr_state(u32 state) | 434 | static const char *get_pwr_state(u32 state) |