rtc: ls1x: remove useless label and goto
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Thu, 17 May 2018 20:53:26 +0000 (22:53 +0200)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Thu, 17 May 2018 20:55:17 +0000 (22:55 +0200)
The error handling in ls1x_rtc_probe used to release resources but since
it is using devm functions, it only returns a value. Make the code clearer
by returning directly instead of using goto.

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-ls1x.c

index 609bd1d..8aa3f22 100644 (file)
@@ -148,15 +148,13 @@ static int ls1x_rtc_probe(struct platform_device *pdev)
 {
        struct rtc_device *rtcdev;
        unsigned long v;
-       int ret;
 
        v = readl(SYS_COUNTER_CNTRL);
        if (!(v & RTC_CNTR_OK)) {
                dev_err(&pdev->dev, "rtc counters not working\n");
-               ret = -ENODEV;
-               goto err;
+               return -ENODEV;
        }
-       ret = -ETIMEDOUT;
+
        /* set to 1 HZ if needed */
        if (readl(SYS_TOYTRIM) != 32767) {
                v = 0x100000;
@@ -165,7 +163,7 @@ static int ls1x_rtc_probe(struct platform_device *pdev)
 
                if (!v) {
                        dev_err(&pdev->dev, "time out\n");
-                       goto err;
+                       return -ETIMEDOUT;
                }
                writel(32767, SYS_TOYTRIM);
        }
@@ -181,9 +179,6 @@ static int ls1x_rtc_probe(struct platform_device *pdev)
        rtcdev->ops = &ls1x_rtc_ops;
 
        return rtc_register_device(rtcdev);
-
-err:
-       return ret;
 }
 
 static struct platform_driver  ls1x_rtc_driver = {