summaryrefslogtreecommitdiff
path: root/bsp/ls2kdev/drivers
diff options
context:
space:
mode:
authorMeco Man <[email protected]>2021-02-07 21:08:41 +0800
committerMeco Man <[email protected]>2021-02-07 21:08:41 +0800
commitf073911cd32bf8bfd02d6945db230e5e7b9b75ea (patch)
treedcc48ceaf009960e89defb3ce712dc7feccec4a9 /bsp/ls2kdev/drivers
parent852d7d7552bd3fe898115ea16ba401970b0d1fad (diff)
解决底层驱动格林威治时间与当地时间胡乱使用的问题 mktime函数改为timegm函数
Diffstat (limited to 'bsp/ls2kdev/drivers')
-rw-r--r--bsp/ls2kdev/drivers/drv_rtc.c44
1 files changed, 22 insertions, 22 deletions
diff --git a/bsp/ls2kdev/drivers/drv_rtc.c b/bsp/ls2kdev/drivers/drv_rtc.c
index ef8dfcda82..06ae120f82 100644
--- a/bsp/ls2kdev/drivers/drv_rtc.c
+++ b/bsp/ls2kdev/drivers/drv_rtc.c
@@ -14,7 +14,7 @@
#include <rthw.h>
#include <rtthread.h>
#include <rtdevice.h>
-#include <rtthread.h>
+#include <sys/time.h>
#include "ls2k1000.h"
#ifdef RT_USING_RTC
@@ -137,29 +137,29 @@ static rt_err_t rt_rtc_ioctl(rt_device_t dev, int cmd, void *args)
switch (cmd)
{
- case RT_DEVICE_CTRL_RTC_GET_TIME:
- *t = mktime(&tmptime);
- break;
- case RT_DEVICE_CTRL_RTC_SET_TIME:
- tmptime.tm_hour = time.tm_hour;
- tmptime.tm_min = time.tm_min;
- tmptime.tm_sec = time.tm_sec;
+ case RT_DEVICE_CTRL_RTC_GET_TIME:
+ *t = timegm(&tmptime);
+ break;
+ case RT_DEVICE_CTRL_RTC_SET_TIME:
+ tmptime.tm_hour = time.tm_hour;
+ tmptime.tm_min = time.tm_min;
+ tmptime.tm_sec = time.tm_sec;
- tmptime.tm_year = time.tm_year;
- tmptime.tm_mon = time.tm_mon;
- tmptime.tm_mday = time.tm_mday;
+ tmptime.tm_year = time.tm_year;
+ tmptime.tm_mon = time.tm_mon;
+ tmptime.tm_mday = time.tm_mday;
- rtctm = mkrtctime(&tmptime);
- /* write to hw RTC */
- hw_rtc->sys_toywrite0 = rtctm.sys_toyread0;
- hw_rtc->sys_toywrite1 = rtctm.sys_toyread1;
- break;
- case RT_DEVICE_CTRL_RTC_GET_ALARM:
- break;
- case RT_DEVICE_CTRL_RTC_SET_ALARM:
- break;
- default:
- break;
+ rtctm = mkrtctime(&tmptime);
+ /* write to hw RTC */
+ hw_rtc->sys_toywrite0 = rtctm.sys_toyread0;
+ hw_rtc->sys_toywrite1 = rtctm.sys_toyread1;
+ break;
+ case RT_DEVICE_CTRL_RTC_GET_ALARM:
+ break;
+ case RT_DEVICE_CTRL_RTC_SET_ALARM:
+ break;
+ default:
+ break;
}
return RT_EOK;