Commit c4920606 authored by Takashi Iwai's avatar Takashi Iwai Committed by Jaroslav Kysela

ALSA: hda - print a few HDMI information in proc

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@perex.cz>
parent 955d2488
...@@ -229,8 +229,13 @@ static void print_pin_caps(struct snd_info_buffer *buffer, ...@@ -229,8 +229,13 @@ static void print_pin_caps(struct snd_info_buffer *buffer,
snd_iprintf(buffer, " Detect"); snd_iprintf(buffer, " Detect");
if (caps & AC_PINCAP_BALANCE) if (caps & AC_PINCAP_BALANCE)
snd_iprintf(buffer, " Balanced"); snd_iprintf(buffer, " Balanced");
if (caps & AC_PINCAP_LR_SWAP) if (caps & AC_PINCAP_HDMI) {
snd_iprintf(buffer, " R/L"); /* Realtek uses this bit as a different meaning */
if ((codec->vendor_id >> 16) == 0x10ec)
snd_iprintf(buffer, " R/L");
else
snd_iprintf(buffer, " HDMI");
}
if (caps & AC_PINCAP_TRIG_REQ) if (caps & AC_PINCAP_TRIG_REQ)
snd_iprintf(buffer, " Trigger"); snd_iprintf(buffer, " Trigger");
if (caps & AC_PINCAP_IMP_SENSE) if (caps & AC_PINCAP_IMP_SENSE)
...@@ -552,9 +557,15 @@ static void print_codec_info(struct snd_info_entry *entry, ...@@ -552,9 +557,15 @@ static void print_codec_info(struct snd_info_entry *entry,
snd_iprintf(buffer, "Node 0x%02x [%s] wcaps 0x%x:", nid, snd_iprintf(buffer, "Node 0x%02x [%s] wcaps 0x%x:", nid,
get_wid_type_name(wid_type), wid_caps); get_wid_type_name(wid_type), wid_caps);
if (wid_caps & AC_WCAP_STEREO) if (wid_caps & AC_WCAP_STEREO) {
snd_iprintf(buffer, " Stereo"); unsigned int chans;
else chans = (wid_caps & AC_WCAP_CHAN_CNT_EXT) >> 13;
chans = ((chans << 1) | 1) + 1;
if (chans == 2)
snd_iprintf(buffer, " Stereo");
else
snd_iprintf(buffer, " %d-Channels", chans);
} else
snd_iprintf(buffer, " Mono"); snd_iprintf(buffer, " Mono");
if (wid_caps & AC_WCAP_DIGITAL) if (wid_caps & AC_WCAP_DIGITAL)
snd_iprintf(buffer, " Digital"); snd_iprintf(buffer, " Digital");
...@@ -566,6 +577,8 @@ static void print_codec_info(struct snd_info_entry *entry, ...@@ -566,6 +577,8 @@ static void print_codec_info(struct snd_info_entry *entry,
snd_iprintf(buffer, " Stripe"); snd_iprintf(buffer, " Stripe");
if (wid_caps & AC_WCAP_LR_SWAP) if (wid_caps & AC_WCAP_LR_SWAP)
snd_iprintf(buffer, " R/L"); snd_iprintf(buffer, " R/L");
if (wid_caps & AC_WCAP_CP_CAPS)
snd_iprintf(buffer, " CP");
snd_iprintf(buffer, "\n"); snd_iprintf(buffer, "\n");
/* volume knob is a special widget that always have connection /* volume knob is a special widget that always have connection
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment