Lines Matching refs:tm
98 static u32 ryxr_calc(struct rtc_time *tm) in ryxr_calc() argument
100 return ((tm->tm_year + 1900) << RYxR_YEAR_S) in ryxr_calc()
101 | ((tm->tm_mon + 1) << RYxR_MONTH_S) in ryxr_calc()
102 | tm->tm_mday; in ryxr_calc()
105 static u32 rdxr_calc(struct rtc_time *tm) in rdxr_calc() argument
107 return ((((tm->tm_mday + 6) / 7) << RDxR_WOM_S) & RDxR_WOM_MASK) in rdxr_calc()
108 | (((tm->tm_wday + 1) << RDxR_DOW_S) & RDxR_DOW_MASK) in rdxr_calc()
109 | (tm->tm_hour << RDxR_HOUR_S) in rdxr_calc()
110 | (tm->tm_min << RDxR_MIN_S) in rdxr_calc()
111 | tm->tm_sec; in rdxr_calc()
114 static void tm_calc(u32 rycr, u32 rdcr, struct rtc_time *tm) in tm_calc() argument
116 tm->tm_year = ((rycr & RYxR_YEAR_MASK) >> RYxR_YEAR_S) - 1900; in tm_calc()
117 tm->tm_mon = (((rycr & RYxR_MONTH_MASK) >> RYxR_MONTH_S)) - 1; in tm_calc()
118 tm->tm_mday = (rycr & RYxR_DAY_MASK); in tm_calc()
119 tm->tm_wday = ((rycr & RDxR_DOW_MASK) >> RDxR_DOW_S) - 1; in tm_calc()
120 tm->tm_hour = (rdcr & RDxR_HOUR_MASK) >> RDxR_HOUR_S; in tm_calc()
121 tm->tm_min = (rdcr & RDxR_MIN_MASK) >> RDxR_MIN_S; in tm_calc()
122 tm->tm_sec = rdcr & RDxR_SEC_MASK; in tm_calc()
237 static int pxa_rtc_read_time(struct device *dev, struct rtc_time *tm) in pxa_rtc_read_time() argument
245 tm_calc(rycr, rdcr, tm); in pxa_rtc_read_time()
249 static int pxa_rtc_set_time(struct device *dev, struct rtc_time *tm) in pxa_rtc_set_time() argument
253 rtc_writel(pxa_rtc, RYCR, ryxr_calc(tm)); in pxa_rtc_set_time()
254 rtc_writel(pxa_rtc, RDCR, rdxr_calc(tm)); in pxa_rtc_set_time()