summary refs log tree commit diff
path: root/drivers/mfd
diff options
context:
space:
mode:
authorAlexey Khoroshilov <khoroshilov@ispras.ru>2017-10-14 01:06:56 +0300
committerLee Jones <lee.jones@linaro.org>2017-10-24 09:12:14 +0100
commit362741a21a5c4b9ee31e75ce28d63c6d238a745c (patch)
treed972e515422302f7fcc78f20e513c8bef69bddd9 /drivers/mfd
parent07d70913dce59f3c8e5d0ca76250861158a9ca6c (diff)
downloadlinux-362741a21a5c4b9ee31e75ce28d63c6d238a745c.tar.gz
mfd: mxs-lradc: Fix error handling in mxs_lradc_probe()
There is the only path, where mxs_lradc_probe() leaves clk undisabled,
since it does return instead of goto err_clk.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/mxs-lradc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mfd/mxs-lradc.c b/drivers/mfd/mxs-lradc.c
index 630bd19b2c0a..98e732a7ae96 100644
--- a/drivers/mfd/mxs-lradc.c
+++ b/drivers/mfd/mxs-lradc.c
@@ -196,8 +196,10 @@ static int mxs_lradc_probe(struct platform_device *pdev)
 	platform_set_drvdata(pdev, lradc);
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	if (!res)
-		return -ENOMEM;
+	if (!res) {
+		ret = -ENOMEM;
+		goto err_clk;
+	}
 
 	switch (lradc->soc) {
 	case IMX23_LRADC: