rtc: s3c: initialize driver data before using it
s3c_rtc_setfreq() uses the platform driver data to derive struct rtc_device, so make sure drvdata is set _before_ s3c_rtc_setfreq() is called. Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com> Cc: Paul Gortmaker <p_gortmaker@yahoo.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: Maurus Cuelenaere <mcuelenaere@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
b8a3c6091a
commit
e893de59a4
|
@ -495,8 +495,6 @@ static int __devinit s3c_rtc_probe(struct platform_device *pdev)
|
|||
pr_debug("s3c2410_rtc: RTCCON=%02x\n",
|
||||
readb(s3c_rtc_base + S3C2410_RTCCON));
|
||||
|
||||
s3c_rtc_setfreq(&pdev->dev, 1);
|
||||
|
||||
device_init_wakeup(&pdev->dev, 1);
|
||||
|
||||
/* register RTC and exit */
|
||||
|
@ -518,6 +516,9 @@ static int __devinit s3c_rtc_probe(struct platform_device *pdev)
|
|||
s3c_rtc_cpu_type = platform_get_device_id(pdev)->driver_data;
|
||||
|
||||
platform_set_drvdata(pdev, rtc);
|
||||
|
||||
s3c_rtc_setfreq(&pdev->dev, 1);
|
||||
|
||||
return 0;
|
||||
|
||||
err_nortc:
|
||||
|
|
Loading…
Reference in a new issue