diff options
Diffstat (limited to 'drivers/rtc/rtc-ep93xx.c')
| -rw-r--r-- | drivers/rtc/rtc-ep93xx.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/rtc/rtc-ep93xx.c b/drivers/rtc/rtc-ep93xx.c index 11ae64dcbf3c..335551d333b2 100644 --- a/drivers/rtc/rtc-ep93xx.c +++ b/drivers/rtc/rtc-ep93xx.c | |||
| @@ -151,6 +151,7 @@ static int __init ep93xx_rtc_probe(struct platform_device *pdev) | |||
| 151 | return -ENXIO; | 151 | return -ENXIO; |
| 152 | 152 | ||
| 153 | pdev->dev.platform_data = ep93xx_rtc; | 153 | pdev->dev.platform_data = ep93xx_rtc; |
| 154 | platform_set_drvdata(pdev, rtc); | ||
| 154 | 155 | ||
| 155 | rtc = rtc_device_register(pdev->name, | 156 | rtc = rtc_device_register(pdev->name, |
| 156 | &pdev->dev, &ep93xx_rtc_ops, THIS_MODULE); | 157 | &pdev->dev, &ep93xx_rtc_ops, THIS_MODULE); |
| @@ -159,8 +160,6 @@ static int __init ep93xx_rtc_probe(struct platform_device *pdev) | |||
| 159 | goto exit; | 160 | goto exit; |
| 160 | } | 161 | } |
| 161 | 162 | ||
| 162 | platform_set_drvdata(pdev, rtc); | ||
| 163 | |||
| 164 | err = sysfs_create_group(&pdev->dev.kobj, &ep93xx_rtc_sysfs_files); | 163 | err = sysfs_create_group(&pdev->dev.kobj, &ep93xx_rtc_sysfs_files); |
| 165 | if (err) | 164 | if (err) |
| 166 | goto fail; | 165 | goto fail; |
| @@ -168,9 +167,9 @@ static int __init ep93xx_rtc_probe(struct platform_device *pdev) | |||
| 168 | return 0; | 167 | return 0; |
| 169 | 168 | ||
| 170 | fail: | 169 | fail: |
| 171 | platform_set_drvdata(pdev, NULL); | ||
| 172 | rtc_device_unregister(rtc); | 170 | rtc_device_unregister(rtc); |
| 173 | exit: | 171 | exit: |
| 172 | platform_set_drvdata(pdev, NULL); | ||
| 174 | pdev->dev.platform_data = NULL; | 173 | pdev->dev.platform_data = NULL; |
| 175 | return err; | 174 | return err; |
| 176 | } | 175 | } |
