Lines Matching +full:3 +full:e

29 	CEA_EDID_VER_CEA861BCD	= 3,
37 "3-reserved"
44 AUDIO_CODING_TYPE_MPEG1 = 3,
67 AUDIO_CODING_XTYPE_MPEG_SURROUND = 3,
74 /* 2 */ "AC-3",
75 /* 3 */ "MPEG1",
82 /* 10 */ "E-AC-3/DD+ (Dolby Digital Plus)",
95 * - CEA E-EDID Extension (sink to source)
105 AC_SUPPCM_BITS_24, /* 3: 24 bits */
115 SNDRV_PCM_RATE_48000, /* 3: 48000Hz */
157 a->channels = GRAB_BITS(buf, 0, 0, 3); in hdmi_update_short_audio_desc()
163 a->format = GRAB_BITS(buf, 0, 3, 4); in hdmi_update_short_audio_desc()
170 val = GRAB_BITS(buf, 2, 0, 3); in hdmi_update_short_audio_desc()
171 for (i = 0; i < 3; i++) in hdmi_update_short_audio_desc()
203 a->profile = GRAB_BITS(buf, 2, 0, 3); in hdmi_update_short_audio_desc()
207 a->format = GRAB_BITS(buf, 2, 3, 5); in hdmi_update_short_audio_desc()
224 int snd_hdmi_parse_eld(struct hda_codec *codec, struct parsed_hdmi_eld *e, in snd_hdmi_parse_eld() argument
230 memset(e, 0, sizeof(*e)); in snd_hdmi_parse_eld()
231 e->eld_ver = GRAB_BITS(buf, 0, 3, 5); in snd_hdmi_parse_eld()
232 if (e->eld_ver != ELD_VER_CEA_861D && in snd_hdmi_parse_eld()
233 e->eld_ver != ELD_VER_PARTIAL) { in snd_hdmi_parse_eld()
234 codec_info(codec, "HDMI: Unknown ELD version %d\n", e->eld_ver); in snd_hdmi_parse_eld()
238 e->baseline_len = GRAB_BITS(buf, 2, 0, 8); in snd_hdmi_parse_eld()
240 e->cea_edid_ver = GRAB_BITS(buf, 4, 5, 3); in snd_hdmi_parse_eld()
242 e->support_hdcp = GRAB_BITS(buf, 5, 0, 1); in snd_hdmi_parse_eld()
243 e->support_ai = GRAB_BITS(buf, 5, 1, 1); in snd_hdmi_parse_eld()
244 e->conn_type = GRAB_BITS(buf, 5, 2, 2); in snd_hdmi_parse_eld()
245 e->sad_count = GRAB_BITS(buf, 5, 4, 4); in snd_hdmi_parse_eld()
247 e->aud_synch_delay = GRAB_BITS(buf, 6, 0, 8) * 2; in snd_hdmi_parse_eld()
248 e->spk_alloc = GRAB_BITS(buf, 7, 0, 7); in snd_hdmi_parse_eld()
250 e->port_id = get_unaligned_le64(buf + 8); in snd_hdmi_parse_eld()
253 e->manufacture_id = get_unaligned_le16(buf + 16); in snd_hdmi_parse_eld()
254 e->product_id = get_unaligned_le16(buf + 18); in snd_hdmi_parse_eld()
263 strscpy(e->monitor_name, buf + ELD_FIXED_BYTES, mnl + 1); in snd_hdmi_parse_eld()
265 for (i = 0; i < e->sad_count; i++) { in snd_hdmi_parse_eld()
266 if (ELD_FIXED_BYTES + mnl + 3 * (i + 1) > size) { in snd_hdmi_parse_eld()
270 hdmi_update_short_audio_desc(codec, e->sad + i, in snd_hdmi_parse_eld()
271 buf + ELD_FIXED_BYTES + mnl + 3 * i); in snd_hdmi_parse_eld()
275 * HDMI sink's ELD info cannot always be retrieved for now, e.g. in snd_hdmi_parse_eld()
279 if (!e->spk_alloc) in snd_hdmi_parse_eld()
280 e->spk_alloc = 0xffff; in snd_hdmi_parse_eld()
396 void snd_hdmi_show_eld(struct hda_codec *codec, struct parsed_hdmi_eld *e) in snd_hdmi_show_eld() argument
401 e->monitor_name, in snd_hdmi_show_eld()
402 eld_connection_type_names[e->conn_type]); in snd_hdmi_show_eld()
404 if (e->spk_alloc) { in snd_hdmi_show_eld()
406 snd_hdac_print_channel_allocation(e->spk_alloc, buf, sizeof(buf)); in snd_hdmi_show_eld()
410 for (i = 0; i < e->sad_count; i++) in snd_hdmi_show_eld()
411 hdmi_show_short_audio_desc(codec, e->sad + i); in snd_hdmi_show_eld()
446 struct parsed_hdmi_eld *e = &eld->info; in snd_hdmi_print_eld_info() local
453 [3 ... 30] = "reserved", in snd_hdmi_print_eld_info()
471 snd_iprintf(buffer, "monitor_name\t\t%s\n", e->monitor_name); in snd_hdmi_print_eld_info()
473 eld_connection_type_names[e->conn_type]); in snd_hdmi_print_eld_info()
474 snd_iprintf(buffer, "eld_version\t\t[0x%x] %s\n", e->eld_ver, in snd_hdmi_print_eld_info()
475 eld_version_names[e->eld_ver]); in snd_hdmi_print_eld_info()
476 snd_iprintf(buffer, "edid_version\t\t[0x%x] %s\n", e->cea_edid_ver, in snd_hdmi_print_eld_info()
477 cea_edid_version_names[e->cea_edid_ver]); in snd_hdmi_print_eld_info()
478 snd_iprintf(buffer, "manufacture_id\t\t0x%x\n", e->manufacture_id); in snd_hdmi_print_eld_info()
479 snd_iprintf(buffer, "product_id\t\t0x%x\n", e->product_id); in snd_hdmi_print_eld_info()
480 snd_iprintf(buffer, "port_id\t\t\t0x%llx\n", (long long)e->port_id); in snd_hdmi_print_eld_info()
481 snd_iprintf(buffer, "support_hdcp\t\t%d\n", e->support_hdcp); in snd_hdmi_print_eld_info()
482 snd_iprintf(buffer, "support_ai\t\t%d\n", e->support_ai); in snd_hdmi_print_eld_info()
483 snd_iprintf(buffer, "audio_sync_delay\t%d\n", e->aud_synch_delay); in snd_hdmi_print_eld_info()
485 snd_hdac_print_channel_allocation(e->spk_alloc, buf, sizeof(buf)); in snd_hdmi_print_eld_info()
486 snd_iprintf(buffer, "speakers\t\t[0x%x]%s\n", e->spk_alloc, buf); in snd_hdmi_print_eld_info()
488 snd_iprintf(buffer, "sad_count\t\t%d\n", e->sad_count); in snd_hdmi_print_eld_info()
490 for (i = 0; i < e->sad_count; i++) in snd_hdmi_print_eld_info()
491 hdmi_print_sad_info(i, e->sad + i, buffer); in snd_hdmi_print_eld_info()
497 struct parsed_hdmi_eld *e = &eld->info; in snd_hdmi_write_eld_info() local
517 e->conn_type = val; in snd_hdmi_write_eld_info()
519 e->port_id = val; in snd_hdmi_write_eld_info()
521 e->support_hdcp = val; in snd_hdmi_write_eld_info()
523 e->support_ai = val; in snd_hdmi_write_eld_info()
525 e->aud_synch_delay = val; in snd_hdmi_write_eld_info()
527 e->spk_alloc = val; in snd_hdmi_write_eld_info()
529 e->sad_count = val; in snd_hdmi_write_eld_info()
530 else if (!strncmp(name, "sad", 3)) { in snd_hdmi_write_eld_info()
532 n = name[3] - '0'; in snd_hdmi_write_eld_info()
540 e->sad[n].format = val; in snd_hdmi_write_eld_info()
542 e->sad[n].channels = val; in snd_hdmi_write_eld_info()
544 e->sad[n].rates = val; in snd_hdmi_write_eld_info()
546 e->sad[n].sample_bits = val; in snd_hdmi_write_eld_info()
548 e->sad[n].max_bitrate = val; in snd_hdmi_write_eld_info()
550 e->sad[n].profile = val; in snd_hdmi_write_eld_info()
551 if (n >= e->sad_count) in snd_hdmi_write_eld_info()
552 e->sad_count = n + 1; in snd_hdmi_write_eld_info()
559 void snd_hdmi_eld_update_pcm_info(struct parsed_hdmi_eld *e, in snd_hdmi_eld_update_pcm_info() argument
576 for (i = 0; i < e->sad_count; i++) { in snd_hdmi_eld_update_pcm_info()
577 struct cea_sad *a = &e->sad[i]; in snd_hdmi_eld_update_pcm_info()
630 ATI_INFO_IDX_PORT_ID_LOW = 3,
652 memset(buf, 0, ELD_FIXED_BYTES + ELD_MAX_MNL + ELD_MAX_SAD * 3); in snd_hdmi_get_eld_ati()
655 buf[0] = ELD_VER_CEA_861D << 3; in snd_hdmi_get_eld_ati()
706 snd_hda_codec_write(codec, nid, 0, ATI_VERB_SET_AUDIO_DESCRIPTOR, i << 3); in snd_hdmi_get_eld_ati()
760 buf[5] |= ((pos - ELD_FIXED_BYTES - sink_desc_len) / 3) << 4; in snd_hdmi_get_eld_ati()