Lines Matching full:rt
79 static bool acpi_tad_rt_is_invalid(struct acpi_tad_rt *rt) in acpi_tad_rt_is_invalid() argument
81 return rt->year < 1900 || rt->year > 9999 || in acpi_tad_rt_is_invalid()
82 rt->month < 1 || rt->month > 12 || in acpi_tad_rt_is_invalid()
83 rt->hour > 23 || rt->minute > 59 || rt->second > 59 || in acpi_tad_rt_is_invalid()
84 rt->tz < -1440 || in acpi_tad_rt_is_invalid()
85 (rt->tz > 1440 && rt->tz != ACPI_TAD_TZ_UNSPEC) || in acpi_tad_rt_is_invalid()
86 rt->daylight > 3; in acpi_tad_rt_is_invalid()
89 static int acpi_tad_set_real_time(struct device *dev, struct acpi_tad_rt *rt) in acpi_tad_set_real_time() argument
102 if (acpi_tad_rt_is_invalid(rt)) in acpi_tad_set_real_time()
105 rt->valid = 0; in acpi_tad_set_real_time()
106 rt->msec = 0; in acpi_tad_set_real_time()
107 memset(rt->padding, 0, 3); in acpi_tad_set_real_time()
109 args[0].buffer.pointer = (u8 *)rt; in acpi_tad_set_real_time()
110 args[0].buffer.length = sizeof(*rt); in acpi_tad_set_real_time()
123 static int acpi_tad_evaluate_grt(struct device *dev, struct acpi_tad_rt *rt) in acpi_tad_evaluate_grt() argument
140 if (out_obj->buffer.length != sizeof(*rt)) in acpi_tad_evaluate_grt()
147 memcpy(rt, data, sizeof(*rt)); in acpi_tad_evaluate_grt()
155 static int __acpi_tad_get_real_time(struct device *dev, struct acpi_tad_rt *rt) in __acpi_tad_get_real_time() argument
159 ret = acpi_tad_evaluate_grt(dev, rt); in __acpi_tad_get_real_time()
163 if (acpi_tad_rt_is_invalid(rt)) in __acpi_tad_get_real_time()
169 static int acpi_tad_get_real_time(struct device *dev, struct acpi_tad_rt *rt) in acpi_tad_get_real_time() argument
175 return __acpi_tad_get_real_time(dev, rt); in acpi_tad_get_real_time()
245 struct acpi_tad_rt rt; in time_store() local
257 rt.year = val; in time_store()
263 rt.month = val; in time_store()
269 rt.day = val; in time_store()
275 rt.hour = val; in time_store()
281 rt.minute = val; in time_store()
287 rt.second = val; in time_store()
293 rt.tz = val; in time_store()
298 rt.daylight = val; in time_store()
300 ret = acpi_tad_set_real_time(dev, &rt); in time_store()
310 struct acpi_tad_rt rt; in time_show() local
313 ret = acpi_tad_get_real_time(dev, &rt); in time_show()
318 rt.year, rt.month, rt.day, rt.hour, rt.minute, rt.second, in time_show()
319 rt.tz, rt.daylight); in time_show()
618 static void acpi_tad_rt_to_tm(struct acpi_tad_rt *rt, struct rtc_time *tm) in acpi_tad_rt_to_tm() argument
620 tm->tm_year = rt->year - 1900; in acpi_tad_rt_to_tm()
621 tm->tm_mon = rt->month - 1; in acpi_tad_rt_to_tm()
622 tm->tm_mday = rt->day; in acpi_tad_rt_to_tm()
623 tm->tm_hour = rt->hour; in acpi_tad_rt_to_tm()
624 tm->tm_min = rt->minute; in acpi_tad_rt_to_tm()
625 tm->tm_sec = rt->second; in acpi_tad_rt_to_tm()
626 tm->tm_isdst = rt->daylight == ACPI_TAD_TIME_ISDST; in acpi_tad_rt_to_tm()
631 struct acpi_tad_rt rt; in acpi_tad_rtc_set_time() local
633 rt.year = tm->tm_year + 1900; in acpi_tad_rtc_set_time()
634 rt.month = tm->tm_mon + 1; in acpi_tad_rtc_set_time()
635 rt.day = tm->tm_mday; in acpi_tad_rtc_set_time()
636 rt.hour = tm->tm_hour; in acpi_tad_rtc_set_time()
637 rt.minute = tm->tm_min; in acpi_tad_rtc_set_time()
638 rt.second = tm->tm_sec; in acpi_tad_rtc_set_time()
639 rt.tz = ACPI_TAD_TZ_UNSPEC; in acpi_tad_rtc_set_time()
640 rt.daylight = ACPI_TAD_TIME_ISDST * !!tm->tm_isdst; in acpi_tad_rtc_set_time()
642 return acpi_tad_set_real_time(dev, &rt); in acpi_tad_rtc_set_time()
647 struct acpi_tad_rt rt; in acpi_tad_rtc_read_time() local
650 ret = acpi_tad_get_real_time(dev, &rt); in acpi_tad_rtc_read_time()
654 acpi_tad_rt_to_tm(&rt, tm); in acpi_tad_rtc_read_time()
664 struct acpi_tad_rt rt; in acpi_tad_rtc_set_alarm() local
677 ret = __acpi_tad_get_real_time(dev, &rt); in acpi_tad_rtc_set_alarm()
681 acpi_tad_rt_to_tm(&rt, &tm_now); in acpi_tad_rtc_set_alarm()
713 struct acpi_tad_rt rt; in acpi_tad_rtc_read_alarm() local
720 ret = __acpi_tad_get_real_time(dev, &rt); in acpi_tad_rtc_read_alarm()
724 acpi_tad_rt_to_tm(&rt, &tm_now); in acpi_tad_rtc_read_alarm()