diff options
| author | Frederic Weisbecker <fweisbec@gmail.com> | 2013-05-02 17:37:49 +0200 | 
|---|---|---|
| committer | Frederic Weisbecker <fweisbec@gmail.com> | 2013-05-02 17:54:19 +0200 | 
| commit | c032862fba51a3ca504752d3a25186b324c5ce83 (patch) | |
| tree | 955dc2ba4ab3df76ecc2bb780ee84aca04967e8d /drivers/rtc/rtc-davinci.c | |
| parent | fda76e074c7737fc57855dd17c762e50ed526052 (diff) | |
| parent | 8700c95adb033843fc163d112b9d21d4fda78018 (diff) | |
| download | olio-linux-3.10-c032862fba51a3ca504752d3a25186b324c5ce83.tar.xz olio-linux-3.10-c032862fba51a3ca504752d3a25186b324c5ce83.zip  | |
Merge commit '8700c95adb03' into timers/nohz
The full dynticks tree needs the latest RCU and sched
upstream updates in order to fix some dependencies.
Merge a common upstream merge point that has these
updates.
Conflicts:
	include/linux/perf_event.h
	kernel/rcutree.h
	kernel/rcutree_plugin.h
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Diffstat (limited to 'drivers/rtc/rtc-davinci.c')
| -rw-r--r-- | drivers/rtc/rtc-davinci.c | 24 | 
1 files changed, 5 insertions, 19 deletions
diff --git a/drivers/rtc/rtc-davinci.c b/drivers/rtc/rtc-davinci.c index 56b73089bb2..a55048c3e26 100644 --- a/drivers/rtc/rtc-davinci.c +++ b/drivers/rtc/rtc-davinci.c @@ -523,7 +523,7 @@ static int __init davinci_rtc_probe(struct platform_device *pdev)  	platform_set_drvdata(pdev, davinci_rtc); -	davinci_rtc->rtc = rtc_device_register(pdev->name, &pdev->dev, +	davinci_rtc->rtc = devm_rtc_device_register(&pdev->dev, pdev->name,  				    &davinci_rtc_ops, THIS_MODULE);  	if (IS_ERR(davinci_rtc->rtc)) {  		ret = PTR_ERR(davinci_rtc->rtc); @@ -543,7 +543,7 @@ static int __init davinci_rtc_probe(struct platform_device *pdev)  			  0, "davinci_rtc", davinci_rtc);  	if (ret < 0) {  		dev_err(dev, "unable to register davinci RTC interrupt\n"); -		goto fail2; +		goto fail1;  	}  	/* Enable interrupts */ @@ -557,14 +557,12 @@ static int __init davinci_rtc_probe(struct platform_device *pdev)  	return 0; -fail2: -	rtc_device_unregister(davinci_rtc->rtc);  fail1:  	platform_set_drvdata(pdev, NULL);  	return ret;  } -static int davinci_rtc_remove(struct platform_device *pdev) +static int __exit davinci_rtc_remove(struct platform_device *pdev)  {  	struct davinci_rtc *davinci_rtc = platform_get_drvdata(pdev); @@ -572,8 +570,6 @@ static int davinci_rtc_remove(struct platform_device *pdev)  	rtcif_write(davinci_rtc, 0, PRTCIF_INTEN); -	rtc_device_unregister(davinci_rtc->rtc); -  	platform_set_drvdata(pdev, NULL);  	return 0; @@ -581,24 +577,14 @@ static int davinci_rtc_remove(struct platform_device *pdev)  static struct platform_driver davinci_rtc_driver = {  	.probe		= davinci_rtc_probe, -	.remove		= davinci_rtc_remove, +	.remove		= __exit_p(davinci_rtc_remove),  	.driver		= {  		.name = "rtc_davinci",  		.owner = THIS_MODULE,  	},  }; -static int __init rtc_init(void) -{ -	return platform_driver_probe(&davinci_rtc_driver, davinci_rtc_probe); -} -module_init(rtc_init); - -static void __exit rtc_exit(void) -{ -	platform_driver_unregister(&davinci_rtc_driver); -} -module_exit(rtc_exit); +module_platform_driver_probe(davinci_rtc_driver, davinci_rtc_probe);  MODULE_AUTHOR("Miguel Aguilar <miguel.aguilar@ridgerun.com>");  MODULE_DESCRIPTION("Texas Instruments DaVinci PRTC Driver");  |