Lines Matching +full:sdi +full:- +full:pin

1 // SPDX-License-Identifier: GPL-2.0-or-later
17 static int dump_coef = -1;
19 MODULE_PARM_DESC(dump_coef, "Dump processing coefficients in codec proc file (-1=auto, 0=disable, 1=enable)");
23 snd_hdac_read_parm_uncached(&(codec)->core, nid, parm)
32 [AC_WID_PIN] = "Pin Complex",
38 if (wid_value == -1)
52 struct hda_nid_item *items = array->list, *item;
54 for (i = 0; i < array->used; i++) {
56 if (item->nid == nid) {
57 kctl = item->kctl;
60 kctl->id.name, kctl->id.index + item->index,
61 kctl->id.device);
62 if (item->flags & HDA_NID_ITEM_AMP)
80 list_for_each_entry(cpcm, &codec->pcm_list_head, list) {
82 if (cpcm->stream[type].nid != nid || cpcm->pcm == NULL)
86 cpcm->name,
87 snd_hda_pcm_type_name[cpcm->pcm_type],
88 cpcm->pcm->device);
99 if (caps == -1 || caps == 0) {
111 /* is this a stereo widget or a stereo-to-mono mix? */
119 /* check for a stereo-to-mono mix; it must be:
204 if (pcm == -1 || stream == -1) {
244 * Parse the pin default config value and returns the string of the
260 "Mobile-In", "Mobile-Out"
275 * Parse the pin default config value and returns the string of the
288 * Parse the pin default config value and returns the string of the
289 * jack type, i.e. the purpose of the jack, such as Line-Out or CD.
329 if ((codec->core.vendor_id >> 16) == 0x10ec)
375 snd_iprintf(buffer, " Pin Default 0x%08x: [%s] %s at %s %s\n", caps,
384 * of pin complexes and their sequence within the group. This is used
393 * support presence detection even if the pin complex
408 snd_iprintf(buffer, " Pin-ctls: 0x%02x:", pinctls);
442 snd_iprintf(buffer, " Volume-Knob: delta=%d, steps=%d, ",
461 int sdi = snd_hda_codec_read(codec, nid, 0,
463 snd_iprintf(buffer, " SDI-Select: %d\n",
464 sdi & AC_SDI_SELECT);
486 snd_iprintf(buffer, " Non-Copyright");
488 snd_iprintf(buffer, " Non-Audio");
529 if (sup != -1) {
547 snd_iprintf(buffer, ", Clock-stop-OK");
549 snd_iprintf(buffer, ", Setting-reset");
569 default: return codec->dump_coef;
585 /* Note: This is racy - another process could run in parallel and change
603 int c, curr = -1;
628 snd_iprintf(buffer, " In-driver Connection: %d\n", cache_len);
642 param_read(codec, codec->core.afg, AC_PAR_GPIO_CAP);
677 /* FIXME: add GPO and GPI pin information */
678 print_nid_array(buffer, codec, nid, &codec->mixers);
679 print_nid_array(buffer, codec, nid, &codec->nids);
717 int i, curr = -1;
751 if (codec->vendor_name && codec->chip_name)
753 codec->vendor_name, codec->chip_name);
756 snd_iprintf(buffer, "Address: %d\n", codec->addr);
757 if (codec->afg)
759 codec->afg_function_id, codec->afg_unsol);
760 if (codec->mfg)
762 codec->mfg_function_id, codec->mfg_unsol);
763 snd_iprintf(buffer, "Vendor Id: 0x%08x\n", codec->vendor_id);
764 snd_iprintf(buffer, "Subsystem Id: 0x%08x\n", codec->subsystem_id);
765 snd_iprintf(buffer, "Revision Id: 0x%x\n", codec->revision_id);
767 if (codec->mfg)
768 snd_iprintf(buffer, "Modem Function Group: 0x%x\n", codec->mfg);
776 struct hda_codec *codec = entry->private_data;
780 print_codec_core_info(&codec->core, buffer);
781 fg = codec->core.afg;
787 snd_iprintf(buffer, "Default Amp-In caps: ");
789 snd_iprintf(buffer, "Default Amp-Out caps: ");
801 if (codec->proc_widget_hook)
802 codec->proc_widget_hook(buffer, codec, fg);
818 snd_iprintf(buffer, " %d-Channels", chans);
824 snd_iprintf(buffer, " Amp-In");
826 snd_iprintf(buffer, " Amp-Out");
835 print_nid_array(buffer, codec, nid, &codec->mixers);
836 print_nid_array(buffer, codec, nid, &codec->nids);
860 snd_iprintf(buffer, " Amp-In caps: ");
862 snd_iprintf(buffer, " Amp-In vals: ");
864 (codec->single_adc_amp &&
873 snd_iprintf(buffer, " Amp-Out caps: ");
875 snd_iprintf(buffer, " Amp-Out vals: ");
877 codec->pin_amp_workaround)
918 if (wid_type == AC_WID_PIN && codec->dp_mst)
928 if (codec->proc_widget_hook)
929 codec->proc_widget_hook(buffer, codec, nid);
942 snprintf(name, sizeof(name), "codec#%d", codec->core.addr);
943 return snd_card_ro_proc_new(codec->card, name, codec, print_codec_info);