From: Xin Ji Date: Thu, 6 Jan 2022 10:01:26 +0000 (+0800) Subject: drm/bridge: anx7625: add audio codec .get_eld support X-Git-Tag: v6.6.17~3937^2~23^2~3283 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=607a264ea7016b0f811f82c33094a3c2eda5968c;p=platform%2Fkernel%2Flinux-rpi.git drm/bridge: anx7625: add audio codec .get_eld support Provide .get_eld interface in hdmi_codec_ops for hdmi-codec driver. Reviewed-by: Robert Foss Signed-off-by: Xin Ji Signed-off-by: Robert Foss Link: https://patchwork.freedesktop.org/patch/msgid/20220106100127.1862702-3-xji@analogixsemi.com --- diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c index 001460f..33383f8 100644 --- a/drivers/gpu/drm/bridge/analogix/anx7625.c +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c @@ -1840,9 +1840,27 @@ static int anx7625_audio_hook_plugged_cb(struct device *dev, void *data, return 0; } +static int anx7625_audio_get_eld(struct device *dev, void *data, + u8 *buf, size_t len) +{ + struct anx7625_data *ctx = dev_get_drvdata(dev); + + if (!ctx->connector) { + dev_err(dev, "connector not initial\n"); + return -EINVAL; + } + + dev_dbg(dev, "audio copy eld\n"); + memcpy(buf, ctx->connector->eld, + min(sizeof(ctx->connector->eld), len)); + + return 0; +} + static const struct hdmi_codec_ops anx7625_codec_ops = { .hw_params = anx7625_audio_hw_params, .audio_shutdown = anx7625_audio_shutdown, + .get_eld = anx7625_audio_get_eld, .get_dai_id = anx7625_hdmi_i2s_get_dai_id, .hook_plugged_cb = anx7625_audio_hook_plugged_cb, };