[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <3d96a2f5.6efd.19b59b8bdf0.Coremail.andyshrk@163.com>
Date: Fri, 26 Dec 2025 16:13:58 +0800 (CST)
From: "Andy Yan" <andyshrk@....com>
To: "Alper Ak" <alperyasinak1@...il.com>
Cc: andy.yan@...k-chips.com, "Andrzej Hajda" <andrzej.hajda@...el.com>,
"Neil Armstrong" <neil.armstrong@...aro.org>,
"Robert Foss" <rfoss@...nel.org>,
"Laurent Pinchart" <Laurent.pinchart@...asonboard.com>,
"Jonas Karlman" <jonas@...boo.se>,
"Jernej Skrabec" <jernej.skrabec@...il.com>,
"Maarten Lankhorst" <maarten.lankhorst@...ux.intel.com>,
"Maxime Ripard" <mripard@...nel.org>,
"Thomas Zimmermann" <tzimmermann@...e.de>,
"David Airlie" <airlied@...il.com>,
"Simona Vetter" <simona@...ll.ch>,
"Dmitry Baryshkov" <dmitry.baryshkov@....qualcomm.com>,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Subject: Re:[PATCH] drm/bridge: synopsys: dw-dp: Pass dp->irq instead of ret
to ERR_PTR() on IRQ failure
Hello Alper,
At 2025-12-26 15:20:01, "Alper Ak" <alperyasinak1@...il.com> wrote:
>The error handling after platform_get_irq() incorrectly passes ret to
>ERR_PTR(), but ret still holds the value 0 from the previous successful
>devm_add_action_or_reset() call. This causes ERR_PTR(0) which returns NULL
>instead of a proper error pointer.
>
>Pass dp->irq to ERR_PTR() since platform_get_irq() returns the negative
>error code directly in dp->irq on failure.
>
>Fixes: 86eecc3a9c2e ("drm/bridge: synopsys: Add DW DPTX Controller support library")
>Signed-off-by: Alper Ak <alperyasinak1@...il.com>
Reviewed-by: Andy Yan <andyshrk@....com>
Thanks
>---
> drivers/gpu/drm/bridge/synopsys/dw-dp.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/gpu/drm/bridge/synopsys/dw-dp.c b/drivers/gpu/drm/bridge/synopsys/dw-dp.c
>index 36382956bbe0..718397a29e80 100644
>--- a/drivers/gpu/drm/bridge/synopsys/dw-dp.c
>+++ b/drivers/gpu/drm/bridge/synopsys/dw-dp.c
>@@ -2079,7 +2079,7 @@ struct dw_dp *dw_dp_bind(struct device *dev, struct drm_encoder *encoder,
>
> dp->irq = platform_get_irq(pdev, 0);
> if (dp->irq < 0)
>- return ERR_PTR(ret);
>+ return ERR_PTR(dp->irq);
>
> ret = devm_request_threaded_irq(dev, dp->irq, NULL, dw_dp_irq,
> IRQF_ONESHOT, dev_name(dev), dp);
>--
>2.43.0
Powered by blists - more mailing lists