rtc: coh901331: set range
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Sun, 7 Apr 2019 21:10:24 +0000 (23:10 +0200)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Mon, 8 Apr 2019 12:39:59 +0000 (14:39 +0200)
The COH 901 331 is a 32bit seconds counter.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-coh901331.c

index 0b232c84f674d950f456fc3810799697fd6d615e..5b214db919d0caf9ed420ef0d8325ad6281b7089 100644 (file)
@@ -188,6 +188,13 @@ static int __init coh901331_probe(struct platform_device *pdev)
                return ret;
        }
 
+       rtap->rtc = devm_rtc_allocate_device(&pdev->dev);
+       if (IS_ERR(rtap->rtc))
+               return PTR_ERR(rtap->rtc);
+
+       rtap->rtc->ops = &coh901331_ops;
+       rtap->rtc->range_max = U32_MAX;
+
        /* We enable/disable the clock only to assure it works */
        ret = clk_prepare_enable(rtap->clk);
        if (ret) {
@@ -197,12 +204,10 @@ static int __init coh901331_probe(struct platform_device *pdev)
        clk_disable(rtap->clk);
 
        platform_set_drvdata(pdev, rtap);
-       rtap->rtc = devm_rtc_device_register(&pdev->dev, "coh901331",
-                                       &coh901331_ops, THIS_MODULE);
-       if (IS_ERR(rtap->rtc)) {
-               ret = PTR_ERR(rtap->rtc);
+
+       ret = rtc_register_device(rtap->rtc);
+       if (ret)
                goto out_no_rtc;
-       }
 
        return 0;