drm/bridge: tc358767: Check if fully initialized before signalling HPD event via IRQ
authorMarek Vasut <marex@denx.de>
Fri, 31 May 2024 20:33:12 +0000 (22:33 +0200)
committerRobert Foss <rfoss@kernel.org>
Mon, 10 Jun 2024 14:21:34 +0000 (16:21 +0200)
Make sure the connector is fully initialized before signalling any
HPD events via drm_kms_helper_hotplug_event(), otherwise this may
lead to NULL pointer dereference.

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Robert Foss <rfoss@kernel.org>
Signed-off-by: Robert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240531203333.277476-1-marex@denx.de
drivers/gpu/drm/bridge/tc358767.c

index 32409f4aef6b9c7bab59f93d89f898f7642e7a95..87c7346d037e7ccc316a63d686d5fad8dee43eaa 100644 (file)
@@ -2152,7 +2152,7 @@ static irqreturn_t tc_irq_handler(int irq, void *arg)
                dev_err(tc->dev, "syserr %x\n", stat);
        }
 
-       if (tc->hpd_pin >= 0 && tc->bridge.dev) {
+       if (tc->hpd_pin >= 0 && tc->bridge.dev && tc->aux.drm_dev) {
                /*
                 * H is triggered when the GPIO goes high.
                 *