drivers/rtc/rtc-tps80031.c: remove empty function
[firefly-linux-kernel-4.4.55.git] / drivers / rtc / rtc-coh901331.c
index 93c06588ddca58a18ec85025e0ef26f4e1945b3a..73f157519dff08acdf9aa96e4e3d2135ed1721b9 100644 (file)
@@ -152,12 +152,10 @@ static struct rtc_class_ops coh901331_ops = {
 
 static int __exit coh901331_remove(struct platform_device *pdev)
 {
-       struct coh901331_port *rtap = dev_get_drvdata(&pdev->dev);
+       struct coh901331_port *rtap = platform_get_drvdata(pdev);
 
-       if (rtap) {
+       if (rtap)
                clk_unprepare(rtap->clk);
-               platform_set_drvdata(pdev, NULL);
-       }
 
        return 0;
 }
@@ -220,7 +218,6 @@ static int __init coh901331_probe(struct platform_device *pdev)
        return 0;
 
  out_no_rtc:
-       platform_set_drvdata(pdev, NULL);
        clk_unprepare(rtap->clk);
        return ret;
 }
@@ -267,18 +264,24 @@ static SIMPLE_DEV_PM_OPS(coh901331_pm_ops, coh901331_suspend, coh901331_resume);
 
 static void coh901331_shutdown(struct platform_device *pdev)
 {
-       struct coh901331_port *rtap = dev_get_drvdata(&pdev->dev);
+       struct coh901331_port *rtap = platform_get_drvdata(pdev);
 
        clk_enable(rtap->clk);
        writel(0, rtap->virtbase + COH901331_IRQ_MASK);
        clk_disable_unprepare(rtap->clk);
 }
 
+static const struct of_device_id coh901331_dt_match[] = {
+       { .compatible = "stericsson,coh901331" },
+       {},
+};
+
 static struct platform_driver coh901331_driver = {
        .driver = {
                .name = "rtc-coh901331",
                .owner = THIS_MODULE,
                .pm = &coh901331_pm_ops,
+               .of_match_table = coh901331_dt_match,
        },
        .remove = __exit_p(coh901331_remove),
        .shutdown = coh901331_shutdown,