OSDN Git Service

drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe()
authorYang Yingliang <yangyingliang@huawei.com>
Sat, 26 Mar 2022 07:33:26 +0000 (15:33 +0800)
committerRobert Foss <robert.foss@linaro.org>
Thu, 31 Mar 2022 12:04:25 +0000 (14:04 +0200)
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-yangyingliang@huawei.com
drivers/gpu/drm/bridge/analogix/anx7625.c

index dcf3275..6516f95 100644 (file)
@@ -2660,7 +2660,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) {
@@ -2675,7 +2675,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);