Fix the NULL pointer dereference when no monitor is connected, and the
sound card is opened from userspace.
Instead return an error as EDID information cannot be provided to
the sound framework if there is no connector attached.
Fixes: e0fd83dbe924 ("drm: bridge: it66121: Add audio support")
Reported-by: Nishanth Menon <[email protected]>
Closes: https://lore.kernel.org/all/20230825105849.crhon42qndxqif4i@gondola/
Signed-off-by: Jai Luthra <[email protected]>
---
drivers/gpu/drm/bridge/ite-it66121.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/gpu/drm/bridge/ite-it66121.c
b/drivers/gpu/drm/bridge/ite-it66121.c
index 466641c77fe9..d6fa00dea464 100644
--- a/drivers/gpu/drm/bridge/ite-it66121.c
+++ b/drivers/gpu/drm/bridge/ite-it66121.c
@@ -1446,6 +1446,11 @@ static int it66121_audio_get_eld(struct device *dev,
void *data,
{
struct it66121_ctx *ctx = dev_get_drvdata(dev);
+ if (!ctx->connector) {
+ dev_dbg(dev, "No connector present, cannot provide EDID data");
+ return -EINVAL;
+ }
+
mutex_lock(&ctx->lock);
memcpy(buf, ctx->connector->eld,
---
base-commit: 6269320850097903b30be8f07a5c61d9f7592393
change-id: 20230825-it66121_edid-6ee98517808b
Best regards,
--
Jai Luthra <[email protected]>