系统加载驱动顺序的调整,根据情况再进行第二次加载
// memcpy(&mTm, &tm, sizeof(mTm));
static struct rtc_time mTm;
static int mSetTimeAgain = 0;
int rk808_set_time(struct rtc_time tm);
int rk808_set_time(struct rtc_time tm)
{
int ret = 0;
pr_info("[%s][%d]::set rts time %d-%d-%d %d:%d:%d\n", __FUNCTION__, __LINE__,
tm.tm_year,tm.tm_mon, tm.tm_mday,tm.tm_hour,tm.tm_min,tm.tm_sec);
if(rk808_dev == NULL)
{
mSetTimeAgain = 1;
memcpy(&mTm, &tm, sizeof(mTm));
return -1;
}
ret = rk808_rtc_set_time(rk808_dev, &tm); // 2011-01-01 12:00:00
if (ret)
{
pr_info("[%s][%d]::Failed to set RTC time\n", __FUNCTION__, __LINE__);
return -1;
}
//rk808_rtc_readtime(rk808_dev, &tm);
mSetTimeAgain = 0;
return 1;
}
if(mSetTimeAgain == 1)
{
rk808_set_time(mTm);
}