aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/rtc/rtc-ac100.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/rtc/rtc-ac100.c')
-rw-r--r--drivers/rtc/rtc-ac100.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/drivers/rtc/rtc-ac100.c b/drivers/rtc/rtc-ac100.c
index 0282ccc6181c..8ff9dc3fe5bf 100644
--- a/drivers/rtc/rtc-ac100.c
+++ b/drivers/rtc/rtc-ac100.c
@@ -569,6 +569,12 @@ static int ac100_rtc_probe(struct platform_device *pdev)
569 return chip->irq; 569 return chip->irq;
570 } 570 }
571 571
572 chip->rtc = devm_rtc_allocate_device(&pdev->dev);
573 if (IS_ERR(chip->rtc))
574 return PTR_ERR(chip->rtc);
575
576 chip->rtc->ops = &ac100_rtc_ops;
577
572 ret = devm_request_threaded_irq(&pdev->dev, chip->irq, NULL, 578 ret = devm_request_threaded_irq(&pdev->dev, chip->irq, NULL,
573 ac100_rtc_irq, 579 ac100_rtc_irq,
574 IRQF_SHARED | IRQF_ONESHOT, 580 IRQF_SHARED | IRQF_ONESHOT,
@@ -588,17 +594,16 @@ static int ac100_rtc_probe(struct platform_device *pdev)
588 /* clear counter alarm pending interrupts */ 594 /* clear counter alarm pending interrupts */
589 regmap_write(chip->regmap, AC100_ALM_INT_STA, AC100_ALM_INT_ENABLE); 595 regmap_write(chip->regmap, AC100_ALM_INT_STA, AC100_ALM_INT_ENABLE);
590 596
591 chip->rtc = devm_rtc_device_register(&pdev->dev, "rtc-ac100",
592 &ac100_rtc_ops, THIS_MODULE);
593 if (IS_ERR(chip->rtc)) {
594 dev_err(&pdev->dev, "unable to register device\n");
595 return PTR_ERR(chip->rtc);
596 }
597
598 ret = ac100_rtc_register_clks(chip); 597 ret = ac100_rtc_register_clks(chip);
599 if (ret) 598 if (ret)
600 return ret; 599 return ret;
601 600
601 ret = rtc_register_device(chip->rtc);
602 if (ret) {
603 dev_err(&pdev->dev, "unable to register device\n");
604 return ret;
605 }
606
602 dev_info(&pdev->dev, "RTC enabled\n"); 607 dev_info(&pdev->dev, "RTC enabled\n");
603 608
604 return 0; 609 return 0;