diff options
author | Xin Ji <xji@analogixsemi.com> | 2022-01-06 13:01:26 +0300 |
---|---|---|
committer | Robert Foss <robert.foss@linaro.org> | 2022-01-10 13:55:03 +0300 |
commit | 607a264ea7016b0f811f82c33094a3c2eda5968c (patch) | |
tree | 62700346def8622a6cdfe87dbb15196a49b398cf /drivers/gpu/drm/bridge | |
parent | cd1637c7e48043503f8ca6d441568e3889998965 (diff) | |
download | linux-607a264ea7016b0f811f82c33094a3c2eda5968c.tar.xz |
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 <robert.foss@linaro.org>
Signed-off-by: Xin Ji <xji@analogixsemi.com>
Signed-off-by: Robert Foss <robert.foss@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220106100127.1862702-3-xji@analogixsemi.com
Diffstat (limited to 'drivers/gpu/drm/bridge')
-rw-r--r-- | drivers/gpu/drm/bridge/analogix/anx7625.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c index 001460f62b0c..33383f83255d 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, }; |