Lines Matching refs:rtc

35 SRTC_DATA           rtc;  variable
56 rtc.index = -1; in S9xResetSRTC()
57 rtc.mode = MODE_READ; in S9xResetSRTC()
62 memset(&rtc, 0, sizeof(rtc)); in S9xHardResetSRTC()
63 rtc.index = -1; in S9xHardResetSRTC()
64 rtc.mode = MODE_READ; in S9xHardResetSRTC()
65 rtc.count_enable = false; in S9xHardResetSRTC()
66 rtc.needs_init = true; in S9xHardResetSRTC()
67 rtc.system_timestamp = time(NULL); /* Get system timestamp */ in S9xHardResetSRTC()
76 uint32_t year = rtc.data[10] * 10 + rtc.data[9]; in S9xSRTCComputeDayOfWeek()
77 uint32_t month = rtc.data[8]; in S9xSRTCComputeDayOfWeek()
78 uint32_t day = rtc.data[7] * 10 + rtc.data[6]; in S9xSRTCComputeDayOfWeek()
80 year += (rtc.data[11] - 9) * 100; in S9xSRTCComputeDayOfWeek()
137 if (rtc.count_enable && !rtc.needs_init) in S9xUpdateSrtcTime()
140 time_diff = (int32_t)(cur_systime - rtc.system_timestamp); in S9xUpdateSrtcTime()
141 rtc.system_timestamp = cur_systime; in S9xUpdateSrtcTime()
186 seconds += (rtc.data[1] * 10 + rtc.data[0]); in S9xUpdateSrtcTime()
193 minutes += (rtc.data[3] * 10 + rtc.data[2]); in S9xUpdateSrtcTime()
200 hours += (rtc.data[5] * 10 + rtc.data[4]); in S9xUpdateSrtcTime()
209 year = rtc.data[10] * 10 + rtc.data[9]; in S9xUpdateSrtcTime()
210 year += (1000 + rtc.data[11] * 100); in S9xUpdateSrtcTime()
211 month = rtc.data[8]; in S9xUpdateSrtcTime()
212 days += (rtc.data[7] * 10 + rtc.data[6]); in S9xUpdateSrtcTime()
228 rtc.data[6] = days % 10; in S9xUpdateSrtcTime()
229 rtc.data[7] = days / 10; in S9xUpdateSrtcTime()
230 rtc.data[8] = month; in S9xUpdateSrtcTime()
231 rtc.data[9] = year_ones; in S9xUpdateSrtcTime()
232 rtc.data[10] = year_tens; in S9xUpdateSrtcTime()
233 rtc.data[11] = year_hundreds; in S9xUpdateSrtcTime()
234 rtc.data[12] = S9xSRTCComputeDayOfWeek(); in S9xUpdateSrtcTime()
237 rtc.data[0] = seconds % 10; in S9xUpdateSrtcTime()
238 rtc.data[1] = seconds / 10; in S9xUpdateSrtcTime()
239 rtc.data[2] = minutes % 10; in S9xUpdateSrtcTime()
240 rtc.data[3] = minutes / 10; in S9xUpdateSrtcTime()
241 rtc.data[4] = hours % 10; in S9xUpdateSrtcTime()
242 rtc.data[5] = hours / 10; in S9xUpdateSrtcTime()
262 rtc.mode = MODE_READ; in S9xSetSRTC()
263 rtc.index = -1; in S9xSetSRTC()
266 rtc.mode = MODE_COMMAND; in S9xSetSRTC()
275 if (rtc.mode == MODE_LOAD_RTC) in S9xSetSRTC()
277 if ((rtc.index >= 0) || (rtc.index < MAX_RTC_INDEX)) in S9xSetSRTC()
279 rtc.data[rtc.index++] = data; in S9xSetSRTC()
281 if (rtc.index == MAX_RTC_INDEX) /* We have all the data for the RTC load */ in S9xSetSRTC()
283 rtc.system_timestamp = time(NULL); /* Get local system time */ in S9xSetSRTC()
284 rtc.data[rtc.index++] = S9xSRTCComputeDayOfWeek(); /* Get the day of the week */ in S9xSetSRTC()
287 rtc.count_enable = true; in S9xSetSRTC()
288 rtc.needs_init = false; in S9xSetSRTC()
294 else if (rtc.mode == MODE_COMMAND) in S9xSetSRTC()
299 rtc.count_enable = false; /* Disable RTC counter */ in S9xSetSRTC()
300 memset(rtc.data, 0, MAX_RTC_INDEX + 1); in S9xSetSRTC()
301 rtc.index = -1; in S9xSetSRTC()
302 rtc.mode = MODE_COMMAND_DONE; in S9xSetSRTC()
305 rtc.count_enable = false; /* Disable RTC counter */ in S9xSetSRTC()
306 rtc.index = 0; /* Setup for writing */ in S9xSetSRTC()
307 rtc.mode = MODE_LOAD_RTC; in S9xSetSRTC()
310 rtc.mode = MODE_COMMAND_DONE; /* unrecognized command - need to implement. */ in S9xSetSRTC()
324 if (rtc.mode == MODE_READ) in S9xGetSRTC()
326 if (rtc.index < 0) in S9xGetSRTC()
329 rtc.index++; in S9xGetSRTC()
332 else if (rtc.index > MAX_RTC_INDEX) in S9xGetSRTC()
334 rtc.index = -1; /* Setup for next set of reads */ in S9xGetSRTC()
338 return rtc.data[rtc.index++]; /* Feed out the data */ in S9xGetSRTC()
356 Memory.SRAM [s + 0] = rtc.needs_init; in S9xSRTCPreSaveState()
357 Memory.SRAM [s + 1] = rtc.count_enable; in S9xSRTCPreSaveState()
359 memcpy(&Memory.SRAM [s + 2], rtc.data, MAX_RTC_INDEX + 1); in S9xSRTCPreSaveState()
360 Memory.SRAM [s + 3 + MAX_RTC_INDEX] = rtc.index; in S9xSRTCPreSaveState()
361 Memory.SRAM [s + 4 + MAX_RTC_INDEX] = rtc.mode; in S9xSRTCPreSaveState()
364 Memory.SRAM [s + 5 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 0); in S9xSRTCPreSaveState()
365 Memory.SRAM [s + 6 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 8); in S9xSRTCPreSaveState()
366 Memory.SRAM [s + 7 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 16); in S9xSRTCPreSaveState()
367 Memory.SRAM [s + 8 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 24); in S9xSRTCPreSaveState()
368 Memory.SRAM [s + 9 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 32); in S9xSRTCPreSaveState()
369 Memory.SRAM [s + 10 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 40); in S9xSRTCPreSaveState()
370 Memory.SRAM [s + 11 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 48); in S9xSRTCPreSaveState()
371 Memory.SRAM [s + 12 + MAX_RTC_INDEX] = (uint8_t)(rtc.system_timestamp >> 56); in S9xSRTCPreSaveState()
374 memcpy(&Memory.SRAM [s + 5 + MAX_RTC_INDEX], &rtc.system_timestamp, 8); in S9xSRTCPreSaveState()
387 rtc.needs_init = Memory.SRAM [s + 0]; in S9xSRTCPostLoadState()
388 rtc.count_enable = Memory.SRAM [s + 1]; in S9xSRTCPostLoadState()
390 memcpy(rtc.data, &Memory.SRAM [s + 2], MAX_RTC_INDEX + 1); in S9xSRTCPostLoadState()
391 rtc.index = Memory.SRAM [s + 3 + MAX_RTC_INDEX]; in S9xSRTCPostLoadState()
392 rtc.mode = Memory.SRAM [s + 4 + MAX_RTC_INDEX]; in S9xSRTCPostLoadState()
395 rtc.system_timestamp |= (Memory.SRAM [s + 5 + MAX_RTC_INDEX] << 0); in S9xSRTCPostLoadState()
396 rtc.system_timestamp |= (Memory.SRAM [s + 6 + MAX_RTC_INDEX] << 8); in S9xSRTCPostLoadState()
397 rtc.system_timestamp |= (Memory.SRAM [s + 7 + MAX_RTC_INDEX] << 16); in S9xSRTCPostLoadState()
398 rtc.system_timestamp |= (Memory.SRAM [s + 8 + MAX_RTC_INDEX] << 24); in S9xSRTCPostLoadState()
399 rtc.system_timestamp |= (Memory.SRAM [s + 9 + MAX_RTC_INDEX] << 32); in S9xSRTCPostLoadState()
400 rtc.system_timestamp |= (Memory.SRAM [s + 10 + MAX_RTC_INDEX] << 40); in S9xSRTCPostLoadState()
401 rtc.system_timestamp |= (Memory.SRAM [s + 11 + MAX_RTC_INDEX] << 48); in S9xSRTCPostLoadState()
402 rtc.system_timestamp |= (Memory.SRAM [s + 12 + MAX_RTC_INDEX] << 56); in S9xSRTCPostLoadState()
405 memcpy(&rtc.system_timestamp, &Memory.SRAM [s + 5 + MAX_RTC_INDEX], 8); in S9xSRTCPostLoadState()