您的位置:首页 > 其它

如何才能开机不用修改系统时间?(已解决)

2008-12-09 09:44 477 查看
如何才能开机不用修改系统时间?(已解决)
我用的是fs2410的板子,每次启动后,系统时间就恢复到2003年1月1号12:00,即使我选择了保存注册表到nandflash也不行,通过DNW工具可以看到启动后有这么一句:
Windows CE Firmware Init
INFO: Initializing system interrupts...
INFO: Initializing system clock(s)...
INFO: Initializing driver globals area...
rLCDCON1 : 1f9
rLCDCON2 : 2077c282
rLCDCON3 : 17a7f10
rLCDCON4 : d60
rLCDCON5 : 10b09
rLCDSADDR1 : 18080000
rLCDSADDR2 : cb000
rLCDSADDR3 : 280
rLCDINTMSK : 3
rLPCSEL : 0
rTPAL : 0
SDMMC config current rGPGCON: 26a99a
SDMMC config set rGPGCON: 26a99a
SDMMC config Init Done.
OEMInit Done...
Sp=ffffc7cc
OEMSetRealTime: Year: 3, Month: 1, Day: 1, Hour: 12, Minute: 0, second: 0 rcnr=1h
Prescaler:2
384 clock
FMD::FMD_Init
……
应该是每次开机都会给RTC时钟赋值,使当前时间变成2003.1.1 12:00,请问该在甚么地方改动后,不让系统每次启动都给时钟赋值呢?

在文件Platform/SMDK2410/kernel/hal/oemioctl.c中将
case IOCTL_HAL_INIT_RTC:
// The kernel has detected a cold-boot.
if(nInBufSize >= sizeof(SYSTEMTIME))
return OEMSetRealTime((LPSYSTEMTIME)lpInBuf);
else
return FALSE;
break;
改为:
case IOCTL_HAL_INIT_RTC:
// The kernel has detected a cold-boot.
if(nInBufSize >= sizeof(SYSTEMTIME))
return TRUE; //改这里
else
return FALSE;
break;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: