xref: /rk3399_ARM-atf/include/lib/libc/time.h (revision 7c0ff9c40ceeacf239ec9a3465be0477594cf898)
127989a8eSAntonio Nino Diaz /*
227989a8eSAntonio Nino Diaz  * Copyright (c) 2012-2017 Roberto E. Vargas Caballero
327989a8eSAntonio Nino Diaz  *
427989a8eSAntonio Nino Diaz  * SPDX-License-Identifier: BSD-3-Clause
527989a8eSAntonio Nino Diaz  */
6*7c0ff9c4SAntonio Nino Diaz /*
7*7c0ff9c4SAntonio Nino Diaz  * Portions copyright (c) 2018, ARM Limited and Contributors.
8*7c0ff9c4SAntonio Nino Diaz  * All rights reserved.
9*7c0ff9c4SAntonio Nino Diaz  */
1027989a8eSAntonio Nino Diaz 
1127989a8eSAntonio Nino Diaz #ifndef _TIME_H
1227989a8eSAntonio Nino Diaz #define _TIME_H
1327989a8eSAntonio Nino Diaz 
14*7c0ff9c4SAntonio Nino Diaz #include <time_.h>
1527989a8eSAntonio Nino Diaz 
1627989a8eSAntonio Nino Diaz #ifndef NULL
1727989a8eSAntonio Nino Diaz #define NULL ((void *) 0)
1827989a8eSAntonio Nino Diaz #endif
1927989a8eSAntonio Nino Diaz 
2027989a8eSAntonio Nino Diaz #define CLOCKS_PER_SEC 1000000
2127989a8eSAntonio Nino Diaz 
2227989a8eSAntonio Nino Diaz typedef long int clock_t;
2327989a8eSAntonio Nino Diaz 
2427989a8eSAntonio Nino Diaz struct tm {
2527989a8eSAntonio Nino Diaz 	int tm_sec;
2627989a8eSAntonio Nino Diaz 	int tm_min;
2727989a8eSAntonio Nino Diaz 	int tm_hour;
2827989a8eSAntonio Nino Diaz 	int tm_mday;
2927989a8eSAntonio Nino Diaz 	int tm_mon;
3027989a8eSAntonio Nino Diaz 	int tm_year;
3127989a8eSAntonio Nino Diaz 	int tm_wday;
3227989a8eSAntonio Nino Diaz 	int tm_yday;
3327989a8eSAntonio Nino Diaz 	int tm_isdst;
3427989a8eSAntonio Nino Diaz };
3527989a8eSAntonio Nino Diaz 
3627989a8eSAntonio Nino Diaz extern clock_t clock(void);
3727989a8eSAntonio Nino Diaz extern double difftime(time_t time1, time_t time0);
3827989a8eSAntonio Nino Diaz extern time_t mktime(struct tm *timeptr);
3927989a8eSAntonio Nino Diaz extern time_t time(time_t *timer);
4027989a8eSAntonio Nino Diaz extern char *asctime(const struct tm *timeptr);
4127989a8eSAntonio Nino Diaz extern char *ctime(const time_t *timer);
4227989a8eSAntonio Nino Diaz extern struct tm *gmtime(const time_t *timer);
4327989a8eSAntonio Nino Diaz extern struct tm *localtime(const time_t *timer);
4427989a8eSAntonio Nino Diaz extern size_t strftime(char * restrict s, size_t maxsize,
4527989a8eSAntonio Nino Diaz                        const char * restrict format,
4627989a8eSAntonio Nino Diaz                        const struct tm * restrict timeptr);
4727989a8eSAntonio Nino Diaz 
4827989a8eSAntonio Nino Diaz #endif
49