| .. | .. |
|---|
| 27 | 27 | |
|---|
| 28 | 28 | static int starfire_read_time(struct device *dev, struct rtc_time *tm) |
|---|
| 29 | 29 | { |
|---|
| 30 | | - rtc_time_to_tm(starfire_get_time(), tm); |
|---|
| 30 | + rtc_time64_to_tm(starfire_get_time(), tm); |
|---|
| 31 | 31 | return 0; |
|---|
| 32 | 32 | } |
|---|
| 33 | 33 | |
|---|
| .. | .. |
|---|
| 39 | 39 | { |
|---|
| 40 | 40 | struct rtc_device *rtc; |
|---|
| 41 | 41 | |
|---|
| 42 | | - rtc = devm_rtc_device_register(&pdev->dev, "starfire", |
|---|
| 43 | | - &starfire_rtc_ops, THIS_MODULE); |
|---|
| 42 | + rtc = devm_rtc_allocate_device(&pdev->dev); |
|---|
| 44 | 43 | if (IS_ERR(rtc)) |
|---|
| 45 | 44 | return PTR_ERR(rtc); |
|---|
| 46 | 45 | |
|---|
| 46 | + rtc->ops = &starfire_rtc_ops; |
|---|
| 47 | + rtc->range_max = U32_MAX; |
|---|
| 48 | + |
|---|
| 47 | 49 | platform_set_drvdata(pdev, rtc); |
|---|
| 48 | 50 | |
|---|
| 49 | | - return 0; |
|---|
| 51 | + return rtc_register_device(rtc); |
|---|
| 50 | 52 | } |
|---|
| 51 | 53 | |
|---|
| 52 | 54 | static struct platform_driver starfire_rtc_driver = { |
|---|