From: Yang Yingliang yangyingliang@huawei.com
[ Upstream commit 6f5efd118efafa22139e8670a4e4b506ba757dfd ]
Add the missing destroy_workqueue() before return from anx7625_i2c_probe() in the error handling case.
Fixes: adca62ec370c ("drm/bridge: anx7625: Support reading edid through aux channel") Signed-off-by: Yang Yingliang yangyingliang@huawei.com Reviewed-by: Hsin-Yi Wang hsinyi@chromium.org Signed-off-by: Robert Foss robert.foss@linaro.org Link: https://patchwork.freedesktop.org/patch/msgid/20220326073326.3389347-1-yangy... Signed-off-by: Sasha Levin sashal@kernel.org --- drivers/gpu/drm/bridge/analogix/anx7625.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c index 8e1851a57638..a23e13c29a1d 100644 --- a/drivers/gpu/drm/bridge/analogix/anx7625.c +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c @@ -2657,7 +2657,7 @@ static int anx7625_i2c_probe(struct i2c_client *client, if (ret) { if (ret != -EPROBE_DEFER) DRM_DEV_ERROR(dev, "fail to parse DT : %d\n", ret); - return ret; + goto free_wq; }
if (anx7625_register_i2c_dummy_clients(platform, client) != 0) { @@ -2672,7 +2672,7 @@ static int anx7625_i2c_probe(struct i2c_client *client, pm_suspend_ignore_children(dev, true); ret = devm_add_action_or_reset(dev, anx7625_runtime_disable, dev); if (ret) - return ret; + goto free_wq;
if (!platform->pdata.low_power_mode) { anx7625_disable_pd_protocol(platform);