| /linux-6.15/include/drm/ |
| H A D | drm_eld.h | 75 static inline int drm_eld_mnl(const u8 *eld) in drm_eld_mnl() argument 87 static inline const u8 *drm_eld_sad(const u8 *eld) in drm_eld_sad() argument 95 mnl = drm_eld_mnl(eld); in drm_eld_sad() 99 return eld + DRM_ELD_CEA_SAD(mnl, 0); in drm_eld_sad() 106 static inline int drm_eld_sad_count(const u8 *eld) in drm_eld_sad_count() argument 119 static inline int drm_eld_calc_baseline_block_size(const u8 *eld) in drm_eld_calc_baseline_block_size() argument 122 drm_eld_mnl(eld) + drm_eld_sad_count(eld) * 3; in drm_eld_calc_baseline_block_size() 135 static inline int drm_eld_size(const u8 *eld) in drm_eld_size() argument 147 static inline u8 drm_eld_get_spk_alloc(const u8 *eld) in drm_eld_get_spk_alloc() argument 149 return eld[DRM_ELD_SPEAKER] & DRM_ELD_SPEAKER_MASK; in drm_eld_get_spk_alloc() [all …]
|
| /linux-6.15/drivers/gpu/drm/ |
| H A D | drm_eld.c | 21 int drm_eld_sad_get(const u8 *eld, int sad_index, struct cea_sad *cta_sad) in drm_eld_sad_get() argument 25 if (sad_index >= drm_eld_sad_count(eld)) in drm_eld_sad_get() 28 sad = eld + DRM_ELD_CEA_SAD(drm_eld_mnl(eld), sad_index); in drm_eld_sad_get() 44 int drm_eld_sad_set(u8 *eld, int sad_index, const struct cea_sad *cta_sad) in drm_eld_sad_set() argument 48 if (sad_index >= drm_eld_sad_count(eld)) in drm_eld_sad_set() 51 sad = eld + DRM_ELD_CEA_SAD(drm_eld_mnl(eld), sad_index); in drm_eld_sad_set()
|
| H A D | drm_edid.c | 5609 memset(connector->eld, 0, sizeof(connector->eld)); in clear_eld() 5655 uint8_t *eld = connector->eld; in drm_edid_to_eld() local 5667 &eld[DRM_ELD_MONITOR_NAME_STRING]); in drm_edid_to_eld() 5670 eld[DRM_ELD_CEA_EDID_VER_MNL] |= mnl; in drm_edid_to_eld() 5672 eld[DRM_ELD_VER] = DRM_ELD_VER_CEA861D; in drm_edid_to_eld() 5676 eld[DRM_ELD_PRODUCT_CODE0] = drm_edid->edid->prod_code[0]; in drm_edid_to_eld() 5690 memcpy(&eld[DRM_ELD_CEA_SAD(mnl, total_sad_count)], in drm_edid_to_eld() 5697 eld[DRM_ELD_SPEAKER] = data[0]; in drm_edid_to_eld() 5718 eld[DRM_ELD_BASELINE_ELD_LEN] = in drm_edid_to_eld() 5719 DIV_ROUND_UP(drm_eld_calc_baseline_block_size(eld), 4); in drm_edid_to_eld() [all …]
|
| /linux-6.15/drivers/gpu/drm/i915/display/ |
| H A D | intel_audio.c | 269 u32 *eld = (u32 *)crtc_state->eld; in g4x_audio_codec_get_config() local 307 const u32 *eld = (const u32 *)crtc_state->eld; in g4x_audio_codec_enable() local 706 if (!connector->eld[0]) { in intel_audio_compute_config() 714 BUILD_BUG_ON(sizeof(crtc_state->eld) != sizeof(connector->eld)); in intel_audio_compute_config() 715 memcpy(crtc_state->eld, connector->eld, sizeof(crtc_state->eld)); in intel_audio_compute_config() 764 BUILD_BUG_ON(sizeof(audio_state->eld) != sizeof(crtc_state->eld)); in intel_audio_codec_enable() 765 memcpy(audio_state->eld, crtc_state->eld, sizeof(audio_state->eld)); in intel_audio_codec_enable() 823 memset(audio_state->eld, 0, sizeof(audio_state->eld)); in intel_audio_codec_disable() 851 memcpy(crtc_state->eld, audio_state->eld, sizeof(audio_state->eld)); in intel_acomp_get_config() 1233 const u8 *eld = audio_state->eld; in intel_audio_component_get_eld() local [all …]
|
| H A D | intel_lpe_audio.c | 330 const void *eld, int ls_clock, bool dp_output) in intel_lpe_audio_notify() argument 347 if (eld != NULL) { in intel_lpe_audio_notify() 348 memcpy(ppdata->eld, eld, HDMI_MAX_ELD_BYTES); in intel_lpe_audio_notify() 357 memset(ppdata->eld, 0, HDMI_MAX_ELD_BYTES); in intel_lpe_audio_notify()
|
| H A D | intel_lpe_audio.h | 21 const void *eld, int ls_clock, bool dp_output); 35 const void *eld, int ls_clock, bool dp_output) in intel_lpe_audio_notify() argument
|
| H A D | intel_crtc_state_dump.c | 286 drm_print_hex_dump(&p, "ELD: ", pipe_config->eld, in intel_crtc_state_dump() 287 drm_eld_size(pipe_config->eld)); in intel_crtc_state_dump()
|
| H A D | intel_display_core.h | 99 u8 eld[MAX_ELD_BYTES]; member
|
| /linux-6.15/sound/soc/codecs/ |
| H A D | hdac_hdmi.c | 91 struct hdac_hdmi_eld eld; member 307 void *eld) in hdac_hdmi_eld_limit_formats() argument 616 port->eld.monitor_present, port->eld.eld_valid, in hdac_hdmi_pcm_open() 942 if (port->eld.monitor_present && port->eld.eld_valid) { in hdac_hdmi_set_pin_port_mux() 1247 port->eld.info.spk_alloc = port->eld.eld_buffer[DRM_ELD_SPEAKER]; in hdac_hdmi_parse_eld() 1300 if (!port->eld.monitor_present || !port->eld.eld_valid) { in hdac_hdmi_present_sense() 1319 if (port->eld.monitor_present && port->eld.eld_valid) { in hdac_hdmi_present_sense() 1326 port->eld.eld_buffer, port->eld.eld_size, false); in hdac_hdmi_present_sense() 1462 eld = &port->eld; in hdac_hdmi_eld_ctl_info() 1502 eld = &port->eld; in hdac_hdmi_eld_ctl_get() [all …]
|
| H A D | hdmi-codec.c | 283 uint8_t eld[MAX_ELD_BYTES]; member 309 uinfo->count = sizeof_field(struct hdmi_codec_priv, eld); in hdmi_eld_ctl_info() 320 memcpy(ucontrol->value.bytes.data, hcp->eld, sizeof(hcp->eld)); in hdmi_eld_ctl_get() 347 spk_alloc = drm_eld_get_spk_alloc(hcp->eld); in hdmi_codec_eld_chmap() 365 spk_alloc = drm_eld_get_spk_alloc(hcp->eld); in hdmi_codec_get_ch_alloc_table_idx() 470 hcp->eld, sizeof(hcp->eld)); in hdmi_codec_startup() 475 hcp->eld, sizeof(hcp->eld)); in hdmi_codec_startup() 477 ret = snd_pcm_hw_constraint_eld(substream->runtime, hcp->eld); in hdmi_codec_startup() 959 hcp->eld, sizeof(hcp->eld)); in plugged_cb() 961 hcp->eld, sizeof(hcp->eld)); in plugged_cb() [all …]
|
| /linux-6.15/sound/pci/hda/ |
| H A D | hda_eld.c | 109 void snd_hdmi_print_eld_info(struct hdmi_eld *eld, in snd_hdmi_print_eld_info() argument 113 snd_iprintf(buffer, "monitor_present\t\t%d\n", eld->monitor_present); in snd_hdmi_print_eld_info() 114 snd_iprintf(buffer, "eld_valid\t\t%d\n", eld->eld_valid); in snd_hdmi_print_eld_info() 119 if (!eld->eld_valid) in snd_hdmi_print_eld_info() 122 snd_print_eld_info(&eld->info, buffer); in snd_hdmi_print_eld_info() 125 void snd_hdmi_write_eld_info(struct hdmi_eld *eld, in snd_hdmi_write_eld_info() argument 128 struct snd_parsed_hdmi_eld *e = &eld->info; in snd_hdmi_write_eld_info() 144 eld->monitor_present = val; in snd_hdmi_write_eld_info() 146 eld->eld_valid = val; in snd_hdmi_write_eld_info()
|
| H A D | patch_hdmi.c | 342 struct hdmi_eld *eld; in hdmi_eld_ctl_info() local 356 uinfo->count = eld->eld_valid ? eld->eld_size : 0; in hdmi_eld_ctl_info() 393 if (eld->eld_valid) in hdmi_eld_ctl_get() 1515 eld->eld_buffer, eld->eld_size) < 0) { in update_eld() 1525 if (!eld->eld_valid || eld->eld_size <= 0 || eld->info.sad_count <= 0) { in update_eld() 1527 eld->eld_size = 0; in update_eld() 1557 if (eld->eld_valid) in update_eld() 1597 (eld->monitor_present && eld->eld_valid) ? in update_eld() 1642 codec->addr, pin_nid, eld->monitor_present, eld->eld_valid); in hdmi_present_sense_via_verbs() 1646 eld->eld_buffer, &eld->eld_size) < 0) in hdmi_present_sense_via_verbs() [all …]
|
| /linux-6.15/sound/core/ |
| H A D | pcm_drm_eld.c | 101 const u8 *sad, *eld = rule->private; in eld_limit_rates() local 103 sad = drm_eld_sad(eld); in eld_limit_rates() 107 for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3) { in eld_limit_rates() 130 const u8 *sad, *eld = rule->private; in eld_limit_channels() local 132 sad = drm_eld_sad(eld); in eld_limit_channels() 142 for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3) in eld_limit_channels() 150 int snd_pcm_hw_constraint_eld(struct snd_pcm_runtime *runtime, void *eld) in snd_pcm_hw_constraint_eld() argument 155 eld_limit_rates, eld, in snd_pcm_hw_constraint_eld() 161 eld_limit_channels, eld, in snd_pcm_hw_constraint_eld()
|
| /linux-6.15/drivers/gpu/drm/bridge/synopsys/ |
| H A D | dw-hdmi-gp-audio.c | 117 u8 *eld; in audio_get_eld() local 119 eld = audio->get_eld(audio->hdmi); in audio_get_eld() 120 if (eld) in audio_get_eld() 121 memcpy(buf, eld, min_t(size_t, MAX_ELD_BYTES, len)); in audio_get_eld()
|
| H A D | dw-hdmi-i2s-audio.c | 138 u8 *eld; in dw_hdmi_i2s_get_eld() local 140 eld = audio->get_eld(audio->hdmi); in dw_hdmi_i2s_get_eld() 141 if (eld) in dw_hdmi_i2s_get_eld() 142 memcpy(buf, eld, min_t(size_t, MAX_ELD_BYTES, len)); in dw_hdmi_i2s_get_eld()
|
| H A D | dw-hdmi-ahb-audio.c | 324 u8 *eld; in dw_hdmi_open() local 329 eld = dw->data.get_eld(dw->data.hdmi); in dw_hdmi_open() 330 if (eld) { in dw_hdmi_open() 331 ret = snd_pcm_hw_constraint_eld(runtime, eld); in dw_hdmi_open()
|
| /linux-6.15/include/sound/ |
| H A D | pcm_drm_eld.h | 87 int snd_pcm_hw_constraint_eld(struct snd_pcm_runtime *runtime, void *eld); 94 void snd_print_eld_info(struct snd_parsed_hdmi_eld *eld,
|
| /linux-6.15/drivers/gpu/drm/display/ |
| H A D | drm_hdmi_audio_helper.c | 88 memcpy(buf, connector->eld, min(sizeof(connector->eld), len)); in drm_connector_hdmi_audio_get_eld()
|
| /linux-6.15/include/drm/intel/ |
| H A D | intel_lpe_audio.h | 35 u8 eld[HDMI_MAX_ELD_BYTES]; member
|
| /linux-6.15/sound/x86/ |
| H A D | intel_hdmi_audio.c | 440 if (intelhaddata->eld[DRM_ELD_SPEAKER] & (1 << i)) in had_channel_allocation() 487 intelhaddata->eld[DRM_ELD_SPEAKER]); in had_build_channel_allocation_map() 498 eld_high = intelhaddata->eld[DRM_ELD_SPEAKER] & eld_high_mask; in had_build_channel_allocation_map() 505 intelhaddata->eld[DRM_ELD_SPEAKER] &= in had_build_channel_allocation_map() 513 if (intelhaddata->eld[DRM_ELD_SPEAKER] & (1 << i)) in had_build_channel_allocation_map() 1453 memcpy(ucontrol->value.bytes.data, intelhaddata->eld, in had_ctl_eld_get() 1553 memset(ctx->eld, 0, sizeof(ctx->eld)); /* clear the old ELD */ in had_audio_wq() 1567 memcpy(ctx->eld, ppdata->eld, sizeof(ctx->eld)); in had_audio_wq()
|
| H A D | intel_hdmi_audio.h | 106 unsigned char eld[HDMI_MAX_ELD_BYTES]; member
|
| /linux-6.15/drivers/gpu/drm/msm/dp/ |
| H A D | dp_audio.c | 232 memcpy(buf, msm_dp_display->connector->eld, in msm_dp_audio_get_eld() 233 min(sizeof(msm_dp_display->connector->eld), len)); in msm_dp_audio_get_eld()
|
| /linux-6.15/Documentation/sound/designs/ |
| H A D | procfile.rst | 178 ``card*/eld#*`` 183 Some ELD fields may be modified by doing ``echo name hex_value > eld#*``.
|
| /linux-6.15/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
| H A D | ior.h | 100 void (*eld)(struct nvkm_ior *, int head, u8 *data, u8 size); member
|
| H A D | gt215.c | 64 .eld = gt215_sor_hda_eld,
|