rtc: snvs: Remove NULL pointer check before clk_*
authorXu Wang <vulab@iscas.ac.cn>
Fri, 13 Nov 2020 08:03:05 +0000 (08:03 +0000)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sat, 14 Nov 2020 22:54:44 +0000 (23:54 +0100)
Because clk_* already checked NULL clock parameter,
so the additional checks are unnecessary, just remove them.

Signed-off-by: Xu Wang <vulab@iscas.ac.cn>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20201113080305.65961-1-vulab@iscas.ac.cn
drivers/rtc/rtc-snvs.c

index 0263d99..a7d39a4 100644 (file)
@@ -151,17 +151,14 @@ static int snvs_rtc_read_time(struct device *dev, struct rtc_time *tm)
        unsigned long time;
        int ret;
 
-       if (data->clk) {
-               ret = clk_enable(data->clk);
-               if (ret)
-                       return ret;
-       }
+       ret = clk_enable(data->clk);
+       if (ret)
+               return ret;
 
        time = rtc_read_lp_counter(data);
        rtc_time64_to_tm(time, tm);
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return 0;
 }
@@ -172,11 +169,9 @@ static int snvs_rtc_set_time(struct device *dev, struct rtc_time *tm)
        unsigned long time = rtc_tm_to_time64(tm);
        int ret;
 
-       if (data->clk) {
-               ret = clk_enable(data->clk);
-               if (ret)
-                       return ret;
-       }
+       ret = clk_enable(data->clk);
+       if (ret)
+               return ret;
 
        /* Disable RTC first */
        ret = snvs_rtc_enable(data, false);
@@ -190,8 +185,7 @@ static int snvs_rtc_set_time(struct device *dev, struct rtc_time *tm)
        /* Enable RTC again */
        ret = snvs_rtc_enable(data, true);
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return ret;
 }
@@ -202,11 +196,9 @@ static int snvs_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
        u32 lptar, lpsr;
        int ret;
 
-       if (data->clk) {
-               ret = clk_enable(data->clk);
-               if (ret)
-                       return ret;
-       }
+       ret = clk_enable(data->clk);
+       if (ret)
+               return ret;
 
        regmap_read(data->regmap, data->offset + SNVS_LPTAR, &lptar);
        rtc_time64_to_tm(lptar, &alrm->time);
@@ -214,8 +206,7 @@ static int snvs_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
        regmap_read(data->regmap, data->offset + SNVS_LPSR, &lpsr);
        alrm->pending = (lpsr & SNVS_LPSR_LPTA) ? 1 : 0;
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return 0;
 }
@@ -225,11 +216,9 @@ static int snvs_rtc_alarm_irq_enable(struct device *dev, unsigned int enable)
        struct snvs_rtc_data *data = dev_get_drvdata(dev);
        int ret;
 
-       if (data->clk) {
-               ret = clk_enable(data->clk);
-               if (ret)
-                       return ret;
-       }
+       ret = clk_enable(data->clk);
+       if (ret)
+               return ret;
 
        regmap_update_bits(data->regmap, data->offset + SNVS_LPCR,
                           (SNVS_LPCR_LPTA_EN | SNVS_LPCR_LPWUI_EN),
@@ -237,8 +226,7 @@ static int snvs_rtc_alarm_irq_enable(struct device *dev, unsigned int enable)
 
        ret = rtc_write_sync_lp(data);
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return ret;
 }
@@ -249,11 +237,9 @@ static int snvs_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
        unsigned long time = rtc_tm_to_time64(&alrm->time);
        int ret;
 
-       if (data->clk) {
-               ret = clk_enable(data->clk);
-               if (ret)
-                       return ret;
-       }
+       ret = clk_enable(data->clk);
+       if (ret)
+               return ret;
 
        regmap_update_bits(data->regmap, data->offset + SNVS_LPCR, SNVS_LPCR_LPTA_EN, 0);
        ret = rtc_write_sync_lp(data);
@@ -264,8 +250,7 @@ static int snvs_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
        /* Clear alarm interrupt status bit */
        regmap_write(data->regmap, data->offset + SNVS_LPSR, SNVS_LPSR_LPTA);
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return snvs_rtc_alarm_irq_enable(dev, alrm->enabled);
 }
@@ -285,8 +270,7 @@ static irqreturn_t snvs_rtc_irq_handler(int irq, void *dev_id)
        u32 lpsr;
        u32 events = 0;
 
-       if (data->clk)
-               clk_enable(data->clk);
+       clk_enable(data->clk);
 
        regmap_read(data->regmap, data->offset + SNVS_LPSR, &lpsr);
 
@@ -302,8 +286,7 @@ static irqreturn_t snvs_rtc_irq_handler(int irq, void *dev_id)
        /* clear interrupt status */
        regmap_write(data->regmap, data->offset + SNVS_LPSR, lpsr);
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return events ? IRQ_HANDLED : IRQ_NONE;
 }
@@ -316,8 +299,7 @@ static const struct regmap_config snvs_rtc_config = {
 
 static void snvs_rtc_action(void *data)
 {
-       if (data)
-               clk_disable_unprepare(data);
+       clk_disable_unprepare(data);
 }
 
 static int snvs_rtc_probe(struct platform_device *pdev)
@@ -412,8 +394,7 @@ static int __maybe_unused snvs_rtc_suspend_noirq(struct device *dev)
 {
        struct snvs_rtc_data *data = dev_get_drvdata(dev);
 
-       if (data->clk)
-               clk_disable(data->clk);
+       clk_disable(data->clk);
 
        return 0;
 }