Lines Matching defs:codec

122 static unsigned int hdmi_get_eld_data(struct hda_codec *codec, hda_nid_t nid,
127 val = snd_hda_codec_read(codec, nid, 0,
130 codec_info(codec, "HDMI: ELD data byte %d: 0x%x\n", byte_index, val);
144 static void hdmi_update_short_audio_desc(struct hda_codec *codec,
166 codec_info(codec, "HDMI: audio coding type 0 not expected\n");
210 codec_info(codec,
224 int snd_hdmi_parse_eld(struct hda_codec *codec, struct parsed_hdmi_eld *e,
234 codec_info(codec, "HDMI: Unknown ELD version %d\n", e->eld_ver);
257 codec_info(codec, "HDMI: MNL is reserved value %d\n", mnl);
260 codec_info(codec, "HDMI: out of range MNL %d\n", mnl);
267 codec_info(codec, "HDMI: out of range SAD %d\n", i);
270 hdmi_update_short_audio_desc(codec, e->sad + i,
288 int snd_hdmi_get_eld_size(struct hda_codec *codec, hda_nid_t nid)
290 return snd_hda_codec_read(codec, nid, 0, AC_VERB_GET_HDMI_DIP_SIZE,
294 int snd_hdmi_get_eld(struct hda_codec *codec, hda_nid_t nid,
306 size = snd_hdmi_get_eld_size(codec, nid);
309 codec_info(codec, "HDMI: ELD buf size is 0, force 128\n");
313 codec_info(codec, "HDMI: invalid ELD buf size %d\n", size);
319 unsigned int val = hdmi_get_eld_data(codec, nid, i);
325 codec_info(codec, "HDMI: invalid ELD data byte %d\n", i);
337 codec_dbg(codec, "HDMI: 0 ELD data\n");
371 static void hdmi_show_short_audio_desc(struct hda_codec *codec,
390 codec_dbg(codec,
396 void snd_hdmi_show_eld(struct hda_codec *codec, struct parsed_hdmi_eld *e)
400 codec_dbg(codec, "HDMI: detected monitor %s at connection type %s\n",
407 codec_dbg(codec, "HDMI: available speakers:%s\n", buf);
411 hdmi_show_short_audio_desc(codec, e->sad + i);
595 /* restrict the parameters by the values the codec provides */
636 int snd_hdmi_get_eld_ati(struct hda_codec *codec, hda_nid_t nid,
645 spkalloc = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SPEAKER_ALLOCATION, 0);
648 codec_info(codec, "HDMI ATI/AMD: no speaker allocation for ELD\n");
669 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_SINK_INFO_INDEX, ATI_INFO_IDX_PORT_ID_LOW);
670 sink_info = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
673 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_SINK_INFO_INDEX, ATI_INFO_IDX_PORT_ID_HIGH);
674 sink_info = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
677 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_SINK_INFO_INDEX, ATI_INFO_IDX_MANUFACTURER_ID);
678 sink_info = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
681 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_SINK_INFO_INDEX, ATI_INFO_IDX_PRODUCT_ID);
682 sink_info = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
685 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_SINK_INFO_INDEX, ATI_INFO_IDX_SINK_DESC_LEN);
686 sink_desc_len = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
689 codec_info(codec, "HDMI ATI/AMD: Truncating HDMI sink description with length %d\n",
697 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_SINK_INFO_INDEX, ATI_INFO_IDX_SINK_DESC_FIRST + i);
698 buf[pos++] = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_SINK_INFO_DATA, 0);
706 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_AUDIO_DESCRIPTOR, i << 3);
707 ati_sad = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_AUDIO_DESCRIPTOR, 0);
731 codec_info(codec, "HDMI ATI/AMD: no audio descriptors for ELD\n");
748 aud_synch = snd_hda_codec_read(codec, nid, 0, ATI_VERB_GET_AUDIO_VIDEO_DELAY, 0);