在全志A10 rtc驱动下:lichee\linux-3.0\drivers\rtc的rtc-sun4i.c或者相应芯片的c文件里
有这些宏:
/*Date Value*/
#define DATE_GET_DAY_VALUE(x) ((x) &0x0000001f)
#define DATE_GET_MON_VALUE(x) (((x)&0x00000f00) >> 8 )
#define DATE_GET_YEAR_VALUE(x) (((x)&0x003f0000) >> 16)
#define DATE_SET_DAY_VALUE(x) DATE_GET_DAY_VALUE(x)
#define DATE_SET_MON_VALUE(x) (((x)&0x0000000f) << 8 )
#define DATE_SET_YEAR_VALUE(x) (((x)&0x0000003f) << 16)
#define LEAP_SET_VALUE(x) (((x)&0x00000001) << 22)
/*Time Value*/
#define TIME_GET_SEC_VALUE(x) ((x) &0x0000003f)
#define TIME_GET_MIN_VALUE(x) (((x)&0x00003f00) >> 8 )
#define TIME_GET_HOUR_VALUE(x) (((x)&0x001f0000) >> 16)
在下面的static int sunxi_rtc_settim()函数里:
static int sunxi_rtc_gettime():
rtc_tm->tm_year += 113;//原先是110
rtc_tm->tm_mon -= 1;
改这里的就可以了 。