diff --git a/components/libc/compilers/armlibc/time.c b/components/libc/compilers/armlibc/time.c index 701b57fb27..7b9c2f185b 100644 --- a/components/libc/compilers/armlibc/time.c +++ b/components/libc/compilers/armlibc/time.c @@ -1,23 +1,25 @@ #include +#include +#if defined(RT_USING_DEVICE) && defined(RT_USING_RTC) int gettimeofday(struct timeval *tp, void *ignore) { - time_t time; - rt_device_t device; + time_t time; + rt_device_t device; - device = rt_device_find("rtc"); - if (device != RT_NULL) - { - rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time); - if (tp != RT_NULL) - { - tp->tv_sec = time; - tp->tv_usec = 0; - } + device = rt_device_find("rtc"); + if (device != RT_NULL) + { + rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time); + if (tp != RT_NULL) + { + tp->tv_sec = time; + tp->tv_usec = 0; + } - return time; - } + return time; + } - return 0; + return 0; } - +#endif diff --git a/components/libc/compilers/dlib/time.c b/components/libc/compilers/dlib/time.c index 701b57fb27..7b9c2f185b 100644 --- a/components/libc/compilers/dlib/time.c +++ b/components/libc/compilers/dlib/time.c @@ -1,23 +1,25 @@ #include +#include +#if defined(RT_USING_DEVICE) && defined(RT_USING_RTC) int gettimeofday(struct timeval *tp, void *ignore) { - time_t time; - rt_device_t device; + time_t time; + rt_device_t device; - device = rt_device_find("rtc"); - if (device != RT_NULL) - { - rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time); - if (tp != RT_NULL) - { - tp->tv_sec = time; - tp->tv_usec = 0; - } + device = rt_device_find("rtc"); + if (device != RT_NULL) + { + rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time); + if (tp != RT_NULL) + { + tp->tv_sec = time; + tp->tv_usec = 0; + } - return time; - } + return time; + } - return 0; + return 0; } - +#endif diff --git a/components/libc/compilers/newlib/time.c b/components/libc/compilers/newlib/time.c new file mode 100644 index 0000000000..7b9c2f185b --- /dev/null +++ b/components/libc/compilers/newlib/time.c @@ -0,0 +1,25 @@ +#include +#include + +#if defined(RT_USING_DEVICE) && defined(RT_USING_RTC) +int gettimeofday(struct timeval *tp, void *ignore) +{ + time_t time; + rt_device_t device; + + device = rt_device_find("rtc"); + if (device != RT_NULL) + { + rt_device_control(device, RT_DEVICE_CTRL_RTC_GET_TIME, &time); + if (tp != RT_NULL) + { + tp->tv_sec = time; + tp->tv_usec = 0; + } + + return time; + } + + return 0; +} +#endif