Signed-off-by: David Henningsson david.henningsson@canonical.com --- sound/pci/hda/hda_proc.c | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/sound/pci/hda/hda_proc.c b/sound/pci/hda/hda_proc.c index f025200..88e40f0 100644 --- a/sound/pci/hda/hda_proc.c +++ b/sound/pci/hda/hda_proc.c @@ -467,11 +467,23 @@ static void print_unsol_cap(struct snd_info_buffer *buffer, static void print_proc_caps(struct snd_info_buffer *buffer, struct hda_codec *codec, hda_nid_t nid) { + int i, val; unsigned int proc_caps = snd_hda_param_read(codec, nid, AC_PAR_PROC_CAP); + unsigned int ncoeff = (proc_caps & AC_PCAP_NUM_COEF) >> + AC_PCAP_NUM_COEF_SHIFT; + snd_iprintf(buffer, " Processing caps: benign=%d, ncoeff=%d\n", - proc_caps & AC_PCAP_BENIGN, - (proc_caps & AC_PCAP_NUM_COEF) >> AC_PCAP_NUM_COEF_SHIFT); + proc_caps & AC_PCAP_BENIGN, ncoeff); + for (i = 0; i < ncoeff; i++) { + snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_COEF_INDEX, + i); + val = snd_hda_codec_read(codec, nid, 0, + AC_VERB_GET_PROC_COEF, 0); + snd_iprintf(buffer, " Processing coef %d: 0x%x\n", i, + val); + } + }
static void print_conn_list(struct snd_info_buffer *buffer,