Merge tag 'powerpc-5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
[linux-2.6-microblaze.git] / drivers / rtc / rtc-mxc.c
index a8cfbde..65b29b0 100644 (file)
@@ -70,27 +70,12 @@ struct rtc_plat_data {
        enum imx_rtc_type devtype;
 };
 
-static const struct platform_device_id imx_rtc_devtype[] = {
-       {
-               .name = "imx1-rtc",
-               .driver_data = IMX1_RTC,
-       }, {
-               .name = "imx21-rtc",
-               .driver_data = IMX21_RTC,
-       }, {
-               /* sentinel */
-       }
-};
-MODULE_DEVICE_TABLE(platform, imx_rtc_devtype);
-
-#ifdef CONFIG_OF
 static const struct of_device_id imx_rtc_dt_ids[] = {
        { .compatible = "fsl,imx1-rtc", .data = (const void *)IMX1_RTC },
        { .compatible = "fsl,imx21-rtc", .data = (const void *)IMX21_RTC },
        {}
 };
 MODULE_DEVICE_TABLE(of, imx_rtc_dt_ids);
-#endif
 
 static inline int is_imx1_rtc(struct rtc_plat_data *data)
 {
@@ -322,17 +307,12 @@ static int mxc_rtc_probe(struct platform_device *pdev)
        u32 reg;
        unsigned long rate;
        int ret;
-       const struct of_device_id *of_id;
 
        pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
        if (!pdata)
                return -ENOMEM;
 
-       of_id = of_match_device(imx_rtc_dt_ids, &pdev->dev);
-       if (of_id)
-               pdata->devtype = (enum imx_rtc_type)of_id->data;
-       else
-               pdata->devtype = pdev->id_entry->driver_data;
+       pdata->devtype = (enum imx_rtc_type)of_device_get_match_data(&pdev->dev);
 
        pdata->ioaddr = devm_platform_ioremap_resource(pdev, 0);
        if (IS_ERR(pdata->ioaddr))
@@ -428,7 +408,7 @@ static int mxc_rtc_probe(struct platform_device *pdev)
                        dev_err(&pdev->dev, "failed to enable irq wake\n");
        }
 
-       ret = rtc_register_device(rtc);
+       ret = devm_rtc_register_device(rtc);
 
        return ret;
 }
@@ -438,7 +418,6 @@ static struct platform_driver mxc_rtc_driver = {
                   .name        = "mxc_rtc",
                   .of_match_table = of_match_ptr(imx_rtc_dt_ids),
        },
-       .id_table = imx_rtc_devtype,
        .probe = mxc_rtc_probe,
 };