在为S3C2410平台移植Linux 2.6.14内核后,发现无法获取正确的系统时间,S3C2410的RTC驱动虽然已经编译进内核,但是没有生效,现在已经解决了这个问题。下来,详述一下基于S3C2410的RTC的使用。
(1)将S3C2410 RTC Driver的选项编译进内核。
(2)修改arch/arm/mach-s3c2410/mach-smdk2410.c,在*smdk2410_devices[]结构体中登记RTC驱动,&s3c_device_rtc,
(3)在根文件系统的/dev目录下,创建rtc设备文件,mknod /dev/rtc c 10 135
(4)启动嵌入式环境,会在加载内核后显示:S3C2410 RTC……的驱动信息。
(5)先使用date调整系统时间,然后使用hwclock -w写入硬件时钟,这样在开机时自动运行hwclock -s即可正确获取系统时间了。