diff options
Diffstat (limited to 'drivers/rtc/rtc-tps6586x.c')
| -rw-r--r-- | drivers/rtc/rtc-tps6586x.c | 14 | 
1 files changed, 4 insertions, 10 deletions
| diff --git a/drivers/rtc/rtc-tps6586x.c b/drivers/rtc/rtc-tps6586x.c index aab4e8c93622..459c2ffc95a6 100644 --- a/drivers/rtc/rtc-tps6586x.c +++ b/drivers/rtc/rtc-tps6586x.c @@ -274,7 +274,7 @@ static int tps6586x_rtc_probe(struct platform_device *pdev)  	}  	platform_set_drvdata(pdev, rtc); -	rtc->rtc = rtc_device_register(dev_name(&pdev->dev), &pdev->dev, +	rtc->rtc = devm_rtc_device_register(&pdev->dev, dev_name(&pdev->dev),  				       &tps6586x_rtc_ops, THIS_MODULE);  	if (IS_ERR(rtc->rtc)) {  		ret = PTR_ERR(rtc->rtc); @@ -289,15 +289,12 @@ static int tps6586x_rtc_probe(struct platform_device *pdev)  	if (ret < 0) {  		dev_err(&pdev->dev, "request IRQ(%d) failed with ret %d\n",  				rtc->irq, ret); -		goto fail_req_irq; +		goto fail_rtc_register;  	}  	disable_irq(rtc->irq);  	device_set_wakeup_capable(&pdev->dev, 1);  	return 0; -fail_req_irq: -	rtc_device_unregister(rtc->rtc); -  fail_rtc_register:  	tps6586x_update(tps_dev, RTC_CTRL, 0,  		RTC_ENABLE | OSC_SRC_SEL | PRE_BYPASS | CL_SEL_MASK); @@ -306,12 +303,10 @@ fail_rtc_register:  static int tps6586x_rtc_remove(struct platform_device *pdev)  { -	struct tps6586x_rtc *rtc = platform_get_drvdata(pdev);  	struct device *tps_dev = to_tps6586x_dev(&pdev->dev);  	tps6586x_update(tps_dev, RTC_CTRL, 0,  		RTC_ENABLE | OSC_SRC_SEL | PRE_BYPASS | CL_SEL_MASK); -	rtc_device_unregister(rtc->rtc);  	return 0;  } @@ -335,9 +330,8 @@ static int tps6586x_rtc_resume(struct device *dev)  }  #endif -static const struct dev_pm_ops tps6586x_pm_ops = { -	SET_SYSTEM_SLEEP_PM_OPS(tps6586x_rtc_suspend, tps6586x_rtc_resume) -}; +static SIMPLE_DEV_PM_OPS(tps6586x_pm_ops, tps6586x_rtc_suspend, +			tps6586x_rtc_resume);  static struct platform_driver tps6586x_rtc_driver = {  	.driver	= { | 
