/Linux-v5.15/sound/core/ |
D | pcm_drm_eld.c | 31 const u8 *sad, *eld = rule->private; in eld_limit_rates() local 33 sad = drm_eld_sad(eld); in eld_limit_rates() 37 for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3) { in eld_limit_rates() 60 const u8 *sad, *eld = rule->private; in eld_limit_channels() local 62 sad = drm_eld_sad(eld); in eld_limit_channels() 72 for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3) in eld_limit_channels() 80 int snd_pcm_hw_constraint_eld(struct snd_pcm_runtime *runtime, void *eld) in snd_pcm_hw_constraint_eld() argument 85 eld_limit_rates, eld, in snd_pcm_hw_constraint_eld() 91 eld_limit_channels, eld, in snd_pcm_hw_constraint_eld()
|
/Linux-v5.15/include/drm/ |
D | drm_edid.h | 425 static inline int drm_eld_mnl(const uint8_t *eld) in drm_eld_mnl() argument 427 return (eld[DRM_ELD_CEA_EDID_VER_MNL] & DRM_ELD_MNL_MASK) >> DRM_ELD_MNL_SHIFT; in drm_eld_mnl() 434 static inline const uint8_t *drm_eld_sad(const uint8_t *eld) in drm_eld_sad() argument 438 ver = (eld[DRM_ELD_VER] & DRM_ELD_VER_MASK) >> DRM_ELD_VER_SHIFT; in drm_eld_sad() 442 mnl = drm_eld_mnl(eld); in drm_eld_sad() 446 return eld + DRM_ELD_CEA_SAD(mnl, 0); in drm_eld_sad() 453 static inline int drm_eld_sad_count(const uint8_t *eld) in drm_eld_sad_count() argument 455 return (eld[DRM_ELD_SAD_COUNT_CONN_TYPE] & DRM_ELD_SAD_COUNT_MASK) >> in drm_eld_sad_count() 466 static inline int drm_eld_calc_baseline_block_size(const uint8_t *eld) in drm_eld_calc_baseline_block_size() argument 469 drm_eld_mnl(eld) + drm_eld_sad_count(eld) * 3; in drm_eld_calc_baseline_block_size() [all …]
|
D | intel_lpe_audio.h | 35 u8 eld[HDMI_MAX_ELD_BYTES]; member
|
/Linux-v5.15/sound/soc/codecs/ |
D | hdac_hdmi.c | 90 struct hdac_hdmi_eld eld; member 306 void *eld) in hdac_hdmi_eld_limit_formats() argument 310 const u8 *sad, *eld_buf = eld; in hdac_hdmi_eld_limit_formats() 372 ca = snd_hdac_channel_allocation(hdev, port->eld.info.spk_alloc, in hdac_hdmi_setup_audio_infoframe() 381 eld_buf = port->eld.eld_buffer; in hdac_hdmi_setup_audio_infoframe() 544 port->eld.monitor_present && in hdac_hdmi_get_port_from_cvt() 545 port->eld.eld_valid) in hdac_hdmi_get_port_from_cvt() 604 if ((!port->eld.monitor_present) || in hdac_hdmi_pcm_open() 605 (!port->eld.eld_valid)) { in hdac_hdmi_pcm_open() 609 port->eld.monitor_present, port->eld.eld_valid, in hdac_hdmi_pcm_open() [all …]
|
D | hdmi-codec.c | 273 uint8_t eld[MAX_ELD_BYTES]; member 297 uinfo->count = sizeof_field(struct hdmi_codec_priv, eld); in hdmi_eld_ctl_info() 308 memcpy(ucontrol->value.bytes.data, hcp->eld, sizeof(hcp->eld)); in hdmi_eld_ctl_get() 335 spk_alloc = drm_eld_get_spk_alloc(hcp->eld); in hdmi_codec_eld_chmap() 353 spk_alloc = drm_eld_get_spk_alloc(hcp->eld); in hdmi_codec_get_ch_alloc_table_idx() 452 hcp->eld, sizeof(hcp->eld)); in hdmi_codec_startup() 456 ret = snd_pcm_hw_constraint_eld(substream->runtime, hcp->eld); in hdmi_codec_startup() 859 hcp->eld, sizeof(hcp->eld)); in plugged_cb() 864 memset(hcp->eld, 0, sizeof(hcp->eld)); in plugged_cb()
|
/Linux-v5.15/drivers/gpu/drm/i915/display/ |
D | intel_audio.c | 302 const u8 *eld = connector->eld; in intel_eld_uptodate() local 316 for (i = 0; i < drm_eld_size(eld) / 4; i++) in intel_eld_uptodate() 317 if (intel_de_read(dev_priv, reg_edid) != *((const u32 *)eld + i)) in intel_eld_uptodate() 350 const u8 *eld = connector->eld; in g4x_audio_codec_enable() local 356 drm_eld_size(eld)); in g4x_audio_codec_enable() 375 len = min(drm_eld_size(eld) / 4, len); in g4x_audio_codec_enable() 379 *((const u32 *)eld + i)); in g4x_audio_codec_enable() 636 const u8 *eld = connector->eld; in hsw_audio_codec_enable() local 642 transcoder_name(cpu_transcoder), drm_eld_size(eld)); in hsw_audio_codec_enable() 669 len = min(drm_eld_size(eld), 84); in hsw_audio_codec_enable() [all …]
|
D | intel_lpe_audio.c | 326 const void *eld, int ls_clock, bool dp_output) in intel_lpe_audio_notify() argument 343 if (eld != NULL) { in intel_lpe_audio_notify() 344 memcpy(ppdata->eld, eld, HDMI_MAX_ELD_BYTES); in intel_lpe_audio_notify() 353 memset(ppdata->eld, 0, HDMI_MAX_ELD_BYTES); in intel_lpe_audio_notify()
|
D | intel_lpe_audio.h | 20 const void *eld, int ls_clock, bool dp_output);
|
/Linux-v5.15/sound/pci/hda/ |
D | patch_hdmi.c | 331 struct hdmi_eld *eld; in hdmi_eld_ctl_info() local 344 eld = &per_pin->sink_eld; in hdmi_eld_ctl_info() 345 uinfo->count = eld->eld_valid ? eld->eld_size : 0; in hdmi_eld_ctl_info() 358 struct hdmi_eld *eld; in hdmi_eld_ctl_get() local 372 eld = &per_pin->sink_eld; in hdmi_eld_ctl_get() 373 if (eld->eld_size > ARRAY_SIZE(ucontrol->value.bytes.data) || in hdmi_eld_ctl_get() 374 eld->eld_size > ELD_MAX_SIZE) { in hdmi_eld_ctl_get() 382 if (eld->eld_valid) in hdmi_eld_ctl_get() 383 memcpy(ucontrol->value.bytes.data, eld->eld_buffer, in hdmi_eld_ctl_get() 384 eld->eld_size); in hdmi_eld_ctl_get() [all …]
|
D | hda_eld.c | 442 void snd_hdmi_print_eld_info(struct hdmi_eld *eld, in snd_hdmi_print_eld_info() argument 445 struct parsed_hdmi_eld *e = &eld->info; in snd_hdmi_print_eld_info() 463 snd_iprintf(buffer, "monitor_present\t\t%d\n", eld->monitor_present); in snd_hdmi_print_eld_info() 464 snd_iprintf(buffer, "eld_valid\t\t%d\n", eld->eld_valid); in snd_hdmi_print_eld_info() 465 if (!eld->eld_valid) in snd_hdmi_print_eld_info() 490 void snd_hdmi_write_eld_info(struct hdmi_eld *eld, in snd_hdmi_write_eld_info() argument 493 struct parsed_hdmi_eld *e = &eld->info; in snd_hdmi_write_eld_info() 509 eld->monitor_present = val; in snd_hdmi_write_eld_info() 511 eld->eld_valid = val; in snd_hdmi_write_eld_info()
|
/Linux-v5.15/drivers/gpu/drm/bridge/synopsys/ |
D | dw-hdmi-audio.h | 12 u8 *eld; member 17 u8 *eld; member
|
D | dw-hdmi-i2s-audio.c | 139 memcpy(buf, audio->eld, min_t(size_t, MAX_ELD_BYTES, len)); in dw_hdmi_i2s_get_eld()
|
/Linux-v5.15/include/sound/ |
D | pcm_drm_eld.h | 5 int snd_pcm_hw_constraint_eld(struct snd_pcm_runtime *runtime, void *eld);
|
/Linux-v5.15/sound/x86/ |
D | intel_hdmi_audio.c | 437 if (intelhaddata->eld[DRM_ELD_SPEAKER] & (1 << i)) in had_channel_allocation() 484 intelhaddata->eld[DRM_ELD_SPEAKER]); in had_build_channel_allocation_map() 495 eld_high = intelhaddata->eld[DRM_ELD_SPEAKER] & eld_high_mask; in had_build_channel_allocation_map() 502 intelhaddata->eld[DRM_ELD_SPEAKER] &= in had_build_channel_allocation_map() 510 if (intelhaddata->eld[DRM_ELD_SPEAKER] & (1 << i)) in had_build_channel_allocation_map() 1461 memcpy(ucontrol->value.bytes.data, intelhaddata->eld, in had_ctl_eld_get() 1557 memset(ctx->eld, 0, sizeof(ctx->eld)); /* clear the old ELD */ in had_audio_wq() 1571 memcpy(ctx->eld, ppdata->eld, sizeof(ctx->eld)); in had_audio_wq()
|
D | intel_hdmi_audio.h | 106 unsigned char eld[HDMI_MAX_ELD_BYTES]; member
|
/Linux-v5.15/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
D | sormcp89.c | 45 .eld = gt215_hda_eld,
|
D | sorgk104.c | 45 .eld = gf119_hda_eld,
|
D | sorgt215.c | 61 .eld = gt215_hda_eld,
|
D | sorgm107.c | 59 .eld = gf119_hda_eld,
|
D | sorgp100.c | 50 .eld = gf119_hda_eld,
|
D | sortu102.c | 90 .eld = gf119_hda_eld,
|
D | sorga102.c | 101 .eld = gf119_hda_eld,
|
D | sorgv100.c | 105 .eld = gf119_hda_eld,
|
D | sorgm200.c | 117 .eld = gf119_hda_eld,
|
/Linux-v5.15/drivers/gpu/drm/ |
D | drm_edid.c | 4383 connector->eld[DRM_ELD_SAD_COUNT_CONN_TYPE] |= DRM_ELD_SUPPORTS_AI; in drm_parse_hdmi_vsdb_audio() 4459 memset(connector->eld, 0, sizeof(connector->eld)); in clear_eld() 4479 uint8_t *eld = connector->eld; in drm_edid_to_eld() local 4497 mnl = get_monitor_name(edid, &eld[DRM_ELD_MONITOR_NAME_STRING]); in drm_edid_to_eld() 4498 DRM_DEBUG_KMS("ELD monitor %s\n", &eld[DRM_ELD_MONITOR_NAME_STRING]); in drm_edid_to_eld() 4500 eld[DRM_ELD_CEA_EDID_VER_MNL] = cea[1] << DRM_ELD_CEA_EDID_VER_SHIFT; in drm_edid_to_eld() 4501 eld[DRM_ELD_CEA_EDID_VER_MNL] |= mnl; in drm_edid_to_eld() 4503 eld[DRM_ELD_VER] = DRM_ELD_VER_CEA861D; in drm_edid_to_eld() 4505 eld[DRM_ELD_MANUFACTURER_NAME0] = edid->mfg_id[0]; in drm_edid_to_eld() 4506 eld[DRM_ELD_MANUFACTURER_NAME1] = edid->mfg_id[1]; in drm_edid_to_eld() [all …]
|