移植linux2.6.22到s3c2440遇到drivers/rtc/hctosys.c: unable to open rtc device (rtc0) 錯誤提示。 linux
解決辦法: 數組
從啓動信息能夠看出沒有加載成功 RTC 驅動! get
所以在初始化的時候應該加在rtc的驅動, 編譯
S3C2440 的 RTC 已經在 2.6.22 .6 kernel 中,可是沒有加入 SMDK2440 targetboard , im
因此咱們只須要將 RTC 加入初始化的設備列表中。 di
1. menu config 中 RTC 部分使用默認設置。 文件
2. 修改文件 mach-smdk2440.c ( /linux2.6.22.6/arch/arm/mach-s3c2440/mach-smdk2440.c ),在數組 smdk2440_devices[] 中添加 &s3c_device_rtc. vi
3. 在 /dev 目錄下建立 rtc 設備文件 rtc. co
mknod rtc c 10 135 內核
4. 從新編譯內核。看看啓動信息。
……
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c2440-rtc s3c2440-rtc: rtc disabled, re-enabling
s3c2440-rtc s3c2440-rtc: rtc core: registered s3c as rtc0
……
以上信息說明 RTC 設備已經加入內核了。
完事。