mirror of
https://github.com/CTCaer/hekate.git
synced 2024-11-22 18:06:40 +00:00
rtc: Remove custom encoding
This commit is contained in:
parent
822e0dcd98
commit
5fe84a78ac
6 changed files with 18 additions and 62 deletions
|
@ -119,7 +119,7 @@ void max77620_rtc_epoch_to_date(u32 epoch, rtc_time_t *time)
|
||||||
time->weekday = 0; //! TODO.
|
time->weekday = 0; //! TODO.
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time, bool hos_encoding)
|
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time)
|
||||||
{
|
{
|
||||||
u32 year, month, epoch;
|
u32 year, month, epoch;
|
||||||
|
|
||||||
|
@ -128,39 +128,17 @@ u32 max77620_rtc_date_to_epoch(const rtc_time_t *time, bool hos_encoding)
|
||||||
//Month of year
|
//Month of year
|
||||||
month = time->month;
|
month = time->month;
|
||||||
|
|
||||||
if (!hos_encoding)
|
// Month/Year offset.
|
||||||
|
if(month < 3)
|
||||||
{
|
{
|
||||||
// Month/Year offset.
|
month += 12;
|
||||||
if(month < 3)
|
year--;
|
||||||
{
|
|
||||||
month += 12;
|
|
||||||
year--;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
year -= 2000;
|
|
||||||
month++;
|
|
||||||
|
|
||||||
// Month/Year offset.
|
|
||||||
if(month < 3)
|
|
||||||
{
|
|
||||||
month += 9;
|
|
||||||
year--;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
month -= 3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
epoch = (365 * year) + (year >> 2) - (year / 100) + (year / 400); // Years to days.
|
epoch = (365 * year) + (year >> 2) - (year / 100) + (year / 400); // Years to days.
|
||||||
|
|
||||||
if (!hos_encoding)
|
epoch += (30 * month) + (3 * (month + 1) / 5) + time->day; // Months to days.
|
||||||
{
|
epoch -= 719561; // Epoch time is 1/1/1970.
|
||||||
epoch += (30 * month) + (3 * (month + 1) / 5) + time->day; // Months to days.
|
|
||||||
epoch -= 719561; // Epoch time is 1/1/1970.
|
|
||||||
}
|
|
||||||
else
|
|
||||||
epoch += (30 * month) + ((3 * month + 2) / 5) + 59 + time->day; // Months to days.
|
|
||||||
|
|
||||||
epoch *= 86400; // Days to seconds.
|
epoch *= 86400; // Days to seconds.
|
||||||
epoch += (3600 * time->hour) + (60 * time->min) + time->sec; // Add hours, minutes and seconds.
|
epoch += (3600 * time->hour) + (60 * time->min) + time->sec; // Add hours, minutes and seconds.
|
||||||
|
|
|
@ -72,6 +72,6 @@ typedef struct _rtc_time_t {
|
||||||
void max77620_rtc_get_time(rtc_time_t *time);
|
void max77620_rtc_get_time(rtc_time_t *time);
|
||||||
void max77620_rtc_stop_alarm();
|
void max77620_rtc_stop_alarm();
|
||||||
void max77620_rtc_epoch_to_date(u32 epoch, rtc_time_t *time);
|
void max77620_rtc_epoch_to_date(u32 epoch, rtc_time_t *time);
|
||||||
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time, bool hos_encoding);
|
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time);
|
||||||
|
|
||||||
#endif /* _MFD_MAX77620_RTC_H_ */
|
#endif /* _MFD_MAX77620_RTC_H_ */
|
||||||
|
|
|
@ -1145,7 +1145,7 @@ static void _update_status_bar(void *params)
|
||||||
max77620_rtc_get_time(&time);
|
max77620_rtc_get_time(&time);
|
||||||
if (n_cfg.timeoff)
|
if (n_cfg.timeoff)
|
||||||
{
|
{
|
||||||
u32 epoch = (u32)((s32)max77620_rtc_date_to_epoch(&time, true) + (s32)n_cfg.timeoff);
|
u32 epoch = (u32)((s32)max77620_rtc_date_to_epoch(&time) + (s32)n_cfg.timeoff);
|
||||||
max77620_rtc_epoch_to_date(epoch, &time);
|
max77620_rtc_epoch_to_date(epoch, &time);
|
||||||
}
|
}
|
||||||
soc_temp = tmp451_get_soc_temp(false);
|
soc_temp = tmp451_get_soc_temp(false);
|
||||||
|
|
|
@ -54,7 +54,7 @@ DWORD get_fattime (
|
||||||
max77620_rtc_get_time(&time);
|
max77620_rtc_get_time(&time);
|
||||||
if (n_cfg.timeoff)
|
if (n_cfg.timeoff)
|
||||||
{
|
{
|
||||||
u32 epoch = (u32)((s32)max77620_rtc_date_to_epoch(&time, true) + (s32)n_cfg.timeoff);
|
u32 epoch = (u32)((s32)max77620_rtc_date_to_epoch(&time) + (s32)n_cfg.timeoff);
|
||||||
max77620_rtc_epoch_to_date(epoch, &time);
|
max77620_rtc_epoch_to_date(epoch, &time);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -119,7 +119,7 @@ void max77620_rtc_epoch_to_date(u32 epoch, rtc_time_t *time)
|
||||||
time->weekday = 0; //! TODO.
|
time->weekday = 0; //! TODO.
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time, bool hos_encoding)
|
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time)
|
||||||
{
|
{
|
||||||
u32 year, month, epoch;
|
u32 year, month, epoch;
|
||||||
|
|
||||||
|
@ -128,39 +128,17 @@ u32 max77620_rtc_date_to_epoch(const rtc_time_t *time, bool hos_encoding)
|
||||||
//Month of year
|
//Month of year
|
||||||
month = time->month;
|
month = time->month;
|
||||||
|
|
||||||
if (!hos_encoding)
|
// Month/Year offset.
|
||||||
|
if(month < 3)
|
||||||
{
|
{
|
||||||
// Month/Year offset.
|
month += 12;
|
||||||
if(month < 3)
|
year--;
|
||||||
{
|
|
||||||
month += 12;
|
|
||||||
year--;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
year -= 2000;
|
|
||||||
month++;
|
|
||||||
|
|
||||||
// Month/Year offset.
|
|
||||||
if(month < 3)
|
|
||||||
{
|
|
||||||
month += 9;
|
|
||||||
year--;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
month -= 3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
epoch = (365 * year) + (year >> 2) - (year / 100) + (year / 400); // Years to days.
|
epoch = (365 * year) + (year >> 2) - (year / 100) + (year / 400); // Years to days.
|
||||||
|
|
||||||
if (!hos_encoding)
|
epoch += (30 * month) + (3 * (month + 1) / 5) + time->day; // Months to days.
|
||||||
{
|
epoch -= 719561; // Epoch time is 1/1/1970.
|
||||||
epoch += (30 * month) + (3 * (month + 1) / 5) + time->day; // Months to days.
|
|
||||||
epoch -= 719561; // Epoch time is 1/1/1970.
|
|
||||||
}
|
|
||||||
else
|
|
||||||
epoch += (30 * month) + ((3 * month + 2) / 5) + 59 + time->day; // Months to days.
|
|
||||||
|
|
||||||
epoch *= 86400; // Days to seconds.
|
epoch *= 86400; // Days to seconds.
|
||||||
epoch += (3600 * time->hour) + (60 * time->min) + time->sec; // Add hours, minutes and seconds.
|
epoch += (3600 * time->hour) + (60 * time->min) + time->sec; // Add hours, minutes and seconds.
|
||||||
|
|
|
@ -72,6 +72,6 @@ typedef struct _rtc_time_t {
|
||||||
void max77620_rtc_get_time(rtc_time_t *time);
|
void max77620_rtc_get_time(rtc_time_t *time);
|
||||||
void max77620_rtc_stop_alarm();
|
void max77620_rtc_stop_alarm();
|
||||||
void max77620_rtc_epoch_to_date(u32 epoch, rtc_time_t *time);
|
void max77620_rtc_epoch_to_date(u32 epoch, rtc_time_t *time);
|
||||||
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time, bool hos_encoding);
|
u32 max77620_rtc_date_to_epoch(const rtc_time_t *time);
|
||||||
|
|
||||||
#endif /* _MFD_MAX77620_RTC_H_ */
|
#endif /* _MFD_MAX77620_RTC_H_ */
|
||||||
|
|
Loading…
Reference in a new issue