在 3.1.8内核的实时时钟驱动是非常完善,这里只需要添加到 RTC 设备到设备初始化列表中就行了。
修改内核源码“arch/arm/mach-s3c2440/mach-smdk2440.c”文件,在行添加如下内容:
static struct platform_device *smdk2440_devices[] __initdata = {
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_i2c,
&s3c_device_iis,
&s3c_device_rtc,
};
在mach-smdk2440.c中的
接下来重新配置内核,以加入RTC 的驱动支持,依次选择如下菜单项:
Device Drivers --->
<*> Real Time Clock --->
可以看到这里缺省配置已经选择了RTC 相关的选项,这里特别要注意的是该配置菜单
最下方的<*> Samsung S3C series SoC RTC 选项支持,因为这里才是内核中真正的2440 之
RTC 驱动配置项。
测试RTC
退出内核配置菜单,执行:
#make zImage
把生成的 arch/arm/boot/zImage 烧写到开发板,就可以在/dev 目录下看到/dev/rtc 设备
驱动了。
让我们检验一下吧