Lines Matching +full:0 +full:- +full:mon
1 // SPDX-License-Identifier: GPL-2.0
34 {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
49 /* Ensure clock and real-time-mode-register are accessible */ in rtc_ioctl()
50 rtc->ctrl = RTC_READ; in rtc_ioctl()
51 memset(&wtime, 0, sizeof(struct rtc_time)); in rtc_ioctl()
52 wtime.tm_sec = bcd2bin(rtc->bcd_sec); in rtc_ioctl()
53 wtime.tm_min = bcd2bin(rtc->bcd_min); in rtc_ioctl()
54 wtime.tm_hour = bcd2bin(rtc->bcd_hr); in rtc_ioctl()
55 wtime.tm_mday = bcd2bin(rtc->bcd_dom); in rtc_ioctl()
56 wtime.tm_mon = bcd2bin(rtc->bcd_mth)-1; in rtc_ioctl()
57 wtime.tm_year = bcd2bin(rtc->bcd_year); in rtc_ioctl()
60 wtime.tm_wday = bcd2bin(rtc->bcd_dow)-1; in rtc_ioctl()
61 rtc->ctrl = 0; in rtc_ioctl()
64 -EFAULT : 0; in rtc_ioctl()
69 unsigned char mon, day, hrs, min, sec, leap_yr; in rtc_ioctl() local
73 return -EACCES; in rtc_ioctl()
76 return -EFAULT; in rtc_ioctl()
81 mon = rtc_tm.tm_mon + 1; /* tm_mon starts at zero */ in rtc_ioctl()
89 if ((mon > 12) || (day == 0)) in rtc_ioctl()
90 return -EINVAL; in rtc_ioctl()
92 if (day > (days_in_mo[mon] + ((mon == 2) && leap_yr))) in rtc_ioctl()
93 return -EINVAL; in rtc_ioctl()
96 return -EINVAL; in rtc_ioctl()
99 return -EINVAL; in rtc_ioctl()
102 rtc->ctrl = RTC_WRITE; in rtc_ioctl()
104 rtc->bcd_sec = bin2bcd(sec); in rtc_ioctl()
105 rtc->bcd_min = bin2bcd(min); in rtc_ioctl()
106 rtc->bcd_hr = bin2bcd(hrs); in rtc_ioctl()
107 rtc->bcd_dom = bin2bcd(day); in rtc_ioctl()
108 rtc->bcd_mth = bin2bcd(mon); in rtc_ioctl()
109 rtc->bcd_year = bin2bcd(yrs%100); in rtc_ioctl()
111 rtc->ctrl = 0; in rtc_ioctl()
113 return 0; in rtc_ioctl()
116 return -EINVAL; in rtc_ioctl()
128 return -EBUSY; in rtc_open()
130 return 0; in rtc_open()
136 return 0; in rtc_release()
160 return -ENODEV; in rtc_MK48T08_init()