diff options
Diffstat (limited to 'drivers/rtc/rtc-starfire.c')
| -rw-r--r-- | drivers/rtc/rtc-starfire.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/drivers/rtc/rtc-starfire.c b/drivers/rtc/rtc-starfire.c index f7d8a6db8078..fbd1ed41cbf1 100644 --- a/drivers/rtc/rtc-starfire.c +++ b/drivers/rtc/rtc-starfire.c @@ -1,20 +1,18 @@ /* rtc-starfire.c: Starfire platform RTC driver. * + * Author: David S. Miller + * License: GPL + * * Copyright (C) 2008 David S. Miller <davem@davemloft.net> */ #include <linux/kernel.h> -#include <linux/module.h> #include <linux/init.h> #include <linux/rtc.h> #include <linux/platform_device.h> #include <asm/oplib.h> -MODULE_AUTHOR("David S. Miller <davem@davemloft.net>"); -MODULE_DESCRIPTION("Starfire RTC driver"); -MODULE_LICENSE("GPL"); - static u32 starfire_get_time(void) { static char obp_gettod[32]; @@ -29,8 +27,8 @@ static u32 starfire_get_time(void) static int starfire_read_time(struct device *dev, struct rtc_time *tm) { - rtc_time_to_tm(starfire_get_time(), tm); - return rtc_valid_tm(tm); + rtc_time64_to_tm(starfire_get_time(), tm); + return 0; } static const struct rtc_class_ops starfire_rtc_ops = { @@ -41,21 +39,22 @@ static int __init starfire_rtc_probe(struct platform_device *pdev) { struct rtc_device *rtc; - rtc = devm_rtc_device_register(&pdev->dev, "starfire", - &starfire_rtc_ops, THIS_MODULE); + rtc = devm_rtc_allocate_device(&pdev->dev); if (IS_ERR(rtc)) return PTR_ERR(rtc); + rtc->ops = &starfire_rtc_ops; + rtc->range_max = U32_MAX; + platform_set_drvdata(pdev, rtc); - return 0; + return devm_rtc_register_device(rtc); } static struct platform_driver starfire_rtc_driver = { .driver = { .name = "rtc-starfire", - .owner = THIS_MODULE, }, }; -module_platform_driver_probe(starfire_rtc_driver, starfire_rtc_probe); +builtin_platform_driver_probe(starfire_rtc_driver, starfire_rtc_probe); |
