/linux-4.4.14/include/sound/ |
H A D | pcm_drm_eld.h | 4 int snd_pcm_hw_constraint_eld(struct snd_pcm_runtime *runtime, void *eld);
|
/linux-4.4.14/drivers/gpu/drm/bridge/ |
H A D | dw_hdmi-audio.h | 11 u8 *eld; member in struct:dw_hdmi_audio_data
|
H A D | dw_hdmi-ahb-audio.c | 334 ret = snd_pcm_hw_constraint_eld(runtime, dw->data.eld); dw_hdmi_open()
|
H A D | dw_hdmi.c | 1803 audio.eld = hdmi->connector.eld; dw_hdmi_bind()
|
/linux-4.4.14/sound/core/ |
H A D | pcm_drm_eld.c | 34 const u8 *sad, *eld = rule->private; eld_limit_rates() local 36 sad = drm_eld_sad(eld); eld_limit_rates() 40 for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3) { eld_limit_rates() 63 const u8 *sad, *eld = rule->private; eld_limit_channels() local 65 sad = drm_eld_sad(eld); eld_limit_channels() 75 for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3) eld_limit_channels() 83 int snd_pcm_hw_constraint_eld(struct snd_pcm_runtime *runtime, void *eld) snd_pcm_hw_constraint_eld() argument 88 eld_limit_rates, eld, snd_pcm_hw_constraint_eld() 94 eld_limit_channels, eld, snd_pcm_hw_constraint_eld()
|
/linux-4.4.14/include/drm/ |
H A D | drm_edid.h | 342 * @eld: pointer to an eld memory structure with mnl set 344 static inline int drm_eld_mnl(const uint8_t *eld) drm_eld_mnl() argument 346 return (eld[DRM_ELD_CEA_EDID_VER_MNL] & DRM_ELD_MNL_MASK) >> DRM_ELD_MNL_SHIFT; drm_eld_mnl() 351 * @eld: pointer to an eld memory structure with sad_count set 353 static inline const uint8_t *drm_eld_sad(const uint8_t *eld) drm_eld_sad() argument 357 ver = (eld[DRM_ELD_VER] & DRM_ELD_VER_MASK) >> DRM_ELD_VER_SHIFT; drm_eld_sad() 361 mnl = drm_eld_mnl(eld); drm_eld_sad() 365 return eld + DRM_ELD_CEA_SAD(mnl, 0); drm_eld_sad() 370 * @eld: pointer to an eld memory structure with sad_count set 372 static inline int drm_eld_sad_count(const uint8_t *eld) drm_eld_sad_count() argument 374 return (eld[DRM_ELD_SAD_COUNT_CONN_TYPE] & DRM_ELD_SAD_COUNT_MASK) >> drm_eld_sad_count() 380 * @eld: pointer to an eld memory structure with mnl and sad_count set 385 static inline int drm_eld_calc_baseline_block_size(const uint8_t *eld) drm_eld_calc_baseline_block_size() argument 388 drm_eld_mnl(eld) + drm_eld_sad_count(eld) * 3; drm_eld_calc_baseline_block_size() 393 * @eld: pointer to a complete eld memory structure 401 static inline int drm_eld_size(const uint8_t *eld) drm_eld_size() argument 403 return DRM_ELD_HEADER_BLOCK_SIZE + eld[DRM_ELD_BASELINE_ELD_LEN] * 4; drm_eld_size()
|
H A D | drm_crtc.h | 639 * @eld: EDID-like data, if present 711 uint8_t eld[MAX_ELD_BYTES]; member in struct:drm_connector
|
/linux-4.4.14/drivers/gpu/drm/i915/ |
H A D | intel_audio.c | 169 uint8_t *eld = connector->eld; intel_eld_uptodate() local 183 for (i = 0; i < drm_eld_size(eld) / 4; i++) intel_eld_uptodate() 184 if (I915_READ(reg_edid) != *((uint32_t *)eld + i)) intel_eld_uptodate() 214 uint8_t *eld = connector->eld; g4x_audio_codec_enable() local 219 DRM_DEBUG_KMS("Enable audio codec, %u bytes ELD\n", eld[2]); g4x_audio_codec_enable() 238 len = min(drm_eld_size(eld) / 4, len); g4x_audio_codec_enable() 241 I915_WRITE(G4X_HDMIW_HDMIEDID, *((uint32_t *)eld + i)); g4x_audio_codec_enable() 286 const uint8_t *eld = connector->eld; hsw_audio_codec_enable() local 295 pipe_name(pipe), drm_eld_size(eld)); hsw_audio_codec_enable() 318 len = min(drm_eld_size(eld), 84); hsw_audio_codec_enable() 320 I915_WRITE(HSW_AUD_EDID_DATA(pipe), *((uint32_t *)eld + i)); hsw_audio_codec_enable() 415 uint8_t *eld = connector->eld; ilk_audio_codec_enable() local 425 port_name(port), pipe_name(pipe), drm_eld_size(eld)); ilk_audio_codec_enable() 467 len = min(drm_eld_size(eld), 84); ilk_audio_codec_enable() 469 I915_WRITE(hdmiw_hdmiedid, *((uint32_t *)eld + i)); ilk_audio_codec_enable() 518 connector->eld[5] &= ~(3 << 2); intel_audio_codec_enable() 520 connector->eld[5] |= (1 << 2); intel_audio_codec_enable() 522 connector->eld[6] = drm_av_sync_delay(connector, adjusted_mode) / 2; intel_audio_codec_enable()
|
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
H A D | hdagt215.c | 43 nvif_ioctl(object, "disp sor hda eld size %d\n", size); gt215_hda_eld() 45 nvif_ioctl(object, "disp sor hda eld vers %d\n", gt215_hda_eld()
|
H A D | hdagf119.c | 46 nvif_ioctl(object, "disp sor hda eld size %d\n", size); gf119_hda_eld() 48 nvif_ioctl(object, "disp sor hda eld vers %d\n", gf119_hda_eld()
|
/linux-4.4.14/sound/pci/hda/ |
H A D | patch_hdmi.c | 411 struct hdmi_eld *eld; hdmi_eld_ctl_info() local 418 eld = &per_pin->sink_eld; hdmi_eld_ctl_info() 421 uinfo->count = eld->eld_valid ? eld->eld_size : 0; hdmi_eld_ctl_info() 433 struct hdmi_eld *eld; hdmi_eld_ctl_get() local 438 eld = &per_pin->sink_eld; hdmi_eld_ctl_get() 441 if (eld->eld_size > ARRAY_SIZE(ucontrol->value.bytes.data) || hdmi_eld_ctl_get() 442 eld->eld_size > ELD_MAX_SIZE) { hdmi_eld_ctl_get() 450 if (eld->eld_valid) hdmi_eld_ctl_get() 451 memcpy(ucontrol->value.bytes.data, eld->eld_buffer, hdmi_eld_ctl_get() 452 eld->eld_size); hdmi_eld_ctl_get() 586 snprintf(name, sizeof(name), "eld#%d.%d", codec->addr, index); eld_proc_new() 655 * eld->spk_alloc => (eld_speaker_allocation_bits[]) => spk_mask 661 struct hdmi_eld *eld, int channels) hdmi_channel_allocation() 681 if (eld->info.spk_alloc & (1 << i)) hdmi_channel_allocation() 706 snd_print_channel_allocation(eld->info.spk_alloc, buf, sizeof(buf)); hdmi_channel_allocation() 1128 struct hdmi_eld *eld; hdmi_setup_audio_infoframe() local 1139 eld = &per_pin->sink_eld; hdmi_setup_audio_infoframe() 1144 ca = hdmi_channel_allocation(codec, eld, channels); hdmi_setup_audio_infoframe() 1162 eld->info.conn_type); hdmi_setup_audio_infoframe() 1450 struct hdmi_eld *eld; hdmi_pcm_open() local 1459 eld = &per_pin->sink_eld; hdmi_pcm_open() 1489 if (!static_hdmi_pcm && eld->eld_valid) { hdmi_pcm_open() 1490 snd_hdmi_eld_update_pcm_info(&eld->info, hinfo); hdmi_pcm_open() 1539 struct hdmi_eld *eld = &spec->temp_eld; hdmi_present_sense() local 1561 eld->eld_valid = !!(present & AC_PINSENSE_ELDV); hdmi_present_sense() 1563 eld->eld_valid = false; hdmi_present_sense() 1567 codec->addr, pin_nid, pin_eld->monitor_present, eld->eld_valid); hdmi_present_sense() 1569 if (eld->eld_valid) { hdmi_present_sense() 1570 if (spec->ops.pin_get_eld(codec, pin_nid, eld->eld_buffer, hdmi_present_sense() 1571 &eld->eld_size) < 0) hdmi_present_sense() 1572 eld->eld_valid = false; hdmi_present_sense() 1574 memset(&eld->info, 0, sizeof(struct parsed_hdmi_eld)); hdmi_present_sense() 1575 if (snd_hdmi_parse_eld(codec, &eld->info, eld->eld_buffer, hdmi_present_sense() 1576 eld->eld_size) < 0) hdmi_present_sense() 1577 eld->eld_valid = false; hdmi_present_sense() 1580 if (eld->eld_valid) { hdmi_present_sense() 1581 snd_hdmi_show_eld(codec, &eld->info); hdmi_present_sense() 1591 if (pin_eld->eld_valid != eld->eld_valid) hdmi_present_sense() 1594 if (pin_eld->eld_valid && !eld->eld_valid) hdmi_present_sense() 1599 pin_eld->eld_valid = eld->eld_valid; hdmi_present_sense() 1600 if (pin_eld->eld_size != eld->eld_size || hdmi_present_sense() 1601 memcmp(pin_eld->eld_buffer, eld->eld_buffer, hdmi_present_sense() 1602 eld->eld_size) != 0) { hdmi_present_sense() 1603 memcpy(pin_eld->eld_buffer, eld->eld_buffer, hdmi_present_sense() 1604 eld->eld_size); hdmi_present_sense() 1607 pin_eld->eld_size = eld->eld_size; hdmi_present_sense() 1608 pin_eld->info = eld->info; hdmi_present_sense() 1616 if (eld->eld_valid && !old_eld_valid && per_pin->setup) { hdmi_present_sense() 660 hdmi_channel_allocation(struct hda_codec *codec, struct hdmi_eld *eld, int channels) hdmi_channel_allocation() argument
|
H A D | hda_eld.c | 479 void snd_hdmi_print_eld_info(struct hdmi_eld *eld, snd_hdmi_print_eld_info() argument 482 struct parsed_hdmi_eld *e = &eld->info; snd_hdmi_print_eld_info() 500 snd_iprintf(buffer, "monitor_present\t\t%d\n", eld->monitor_present); snd_hdmi_print_eld_info() 501 snd_iprintf(buffer, "eld_valid\t\t%d\n", eld->eld_valid); snd_hdmi_print_eld_info() 502 if (!eld->eld_valid) snd_hdmi_print_eld_info() 527 void snd_hdmi_write_eld_info(struct hdmi_eld *eld, snd_hdmi_write_eld_info() argument 530 struct parsed_hdmi_eld *e = &eld->info; snd_hdmi_write_eld_info() 546 eld->monitor_present = val; snd_hdmi_write_eld_info() 548 eld->eld_valid = val; snd_hdmi_write_eld_info()
|
H A D | hda_local.h | 776 void snd_hdmi_print_eld_info(struct hdmi_eld *eld, 778 void snd_hdmi_write_eld_info(struct hdmi_eld *eld,
|
/linux-4.4.14/drivers/gpu/drm/ |
H A D | drm_edid.c | 3160 connector->eld[5] |= (db[6] >> 7) << 1; /* Supports_AI */ parse_hdmi_vsdb() 3211 uint8_t *eld = connector->eld; drm_edid_to_eld() local 3219 memset(eld, 0, sizeof(connector->eld)); drm_edid_to_eld() 3232 eld[20 + mnl] = name[mnl]; drm_edid_to_eld() 3234 eld[4] = (cea[1] << 5) | mnl; drm_edid_to_eld() 3235 DRM_DEBUG_KMS("ELD monitor %s\n", eld + 20); drm_edid_to_eld() 3237 eld[0] = 2 << 3; /* ELD version: 2 */ drm_edid_to_eld() 3239 eld[16] = edid->mfg_id[0]; drm_edid_to_eld() 3240 eld[17] = edid->mfg_id[1]; drm_edid_to_eld() 3241 eld[18] = edid->prod_code[0]; drm_edid_to_eld() 3242 eld[19] = edid->prod_code[1]; drm_edid_to_eld() 3261 memcpy(eld + 20 + mnl, &db[1], dbl); for_each_cea_db() 3266 eld[7] = db[1]; for_each_cea_db() 3278 eld[5] |= sad_count << 4; 3280 eld[DRM_ELD_BASELINE_ELD_LEN] = 3281 DIV_ROUND_UP(drm_eld_calc_baseline_block_size(eld), 4); 3284 drm_eld_size(eld), sad_count); 3463 if (connector->encoder == encoder && connector->eld[0]) drm_select_eld()
|
/linux-4.4.14/drivers/gpu/drm/nouveau/ |
H A D | nv50_display.c | 1740 struct nv50_disp_sor_hda_eld_v0 eld; nv50_audio_mode_set() member in struct:__packed::__anon4388 1742 u8 data[sizeof(nv_connector->base.eld)]; nv50_audio_mode_set() 1756 memcpy(args.data, nv_connector->base.eld, sizeof(args.data)); nv50_audio_mode_set() 1769 struct nv50_disp_sor_hda_eld_v0 eld; nv50_audio_disconnect() member in struct:__anon4389
|