|
@@ -477,11 +477,16 @@ static int ds1511_rtc_probe(struct platform_device *pdev)
|
|
|
spin_lock_init(&pdata->lock);
|
|
|
platform_set_drvdata(pdev, pdata);
|
|
|
|
|
|
- pdata->rtc = devm_rtc_device_register(&pdev->dev, pdev->name,
|
|
|
- &ds1511_rtc_ops, THIS_MODULE);
|
|
|
+ pdata->rtc = devm_rtc_allocate_device(&pdev->dev);
|
|
|
if (IS_ERR(pdata->rtc))
|
|
|
return PTR_ERR(pdata->rtc);
|
|
|
|
|
|
+ pdata->rtc->ops = &ds1511_rtc_ops;
|
|
|
+
|
|
|
+ ret = rtc_register_device(pdata->rtc);
|
|
|
+ if (ret)
|
|
|
+ return ret;
|
|
|
+
|
|
|
/*
|
|
|
* if the platform has an interrupt in mind for this device,
|
|
|
* then by all means, set it
|