diff options
| author | Meco Man <[email protected]> | 2021-02-07 21:08:41 +0800 |
|---|---|---|
| committer | Meco Man <[email protected]> | 2021-02-07 21:08:41 +0800 |
| commit | f073911cd32bf8bfd02d6945db230e5e7b9b75ea (patch) | |
| tree | dcc48ceaf009960e89defb3ce712dc7feccec4a9 /bsp/ls2kdev | |
| parent | 852d7d7552bd3fe898115ea16ba401970b0d1fad (diff) | |
解决底层驱动格林威治时间与当地时间胡乱使用的问题 mktime函数改为timegm函数
Diffstat (limited to 'bsp/ls2kdev')
| -rw-r--r-- | bsp/ls2kdev/drivers/drv_rtc.c | 44 |
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; |
