/******************************************************************************
版权所有：	
文件名称：	rt.h
文件版本：	01.01
创建作者：	sunxi
创建日期：	2020-06-18
功能说明：	实时微系统头文件
其它说明：
修改记录：
*/
#ifndef _RT_H
#define _RT_H
/*------------------------------- 头文件 --------------------------------------
*/
//#include "my_include/watchdog_os.h"
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/types.h>          /* See NOTES */
#include <sys/socket.h>
#include <netinet/in.h>
#include <net/if.h>
#include <arpa/inet.h>
#include <linux/sockios.h>
#include <sys/ioctl.h>
#include <linux/types.h>
#include <asm-generic/errno.h>

#include "rt_types.h"
#include "rt_fifo.h"
#include "rt_printf.h"
#include "rt_console.h"
#include "rt_stat.h"
#include "rt_clib.h"
#include "rt_file.h"
#include "rt_socket.h"
#include "rt_error.h"
#include "rt_log.h"
#include "rt_env.h"

/*------------------------------- 宏定义 --------------------------------------
*/

static inline int is_power_of_2(unsigned long n)
{
	return (n != 0 && ((n & (n - 1)) == 0));
}


static inline void msleep(unsigned int ms)
{
	usleep(ms * 1000);
}

extern int g_clock_mode;
extern int g_clock_mode_gps;


/*------------------------------ 类型结构 -------------------------------------
*/


/*------------------------------ 函数声明 -------------------------------------
*/
int rt_init(void);
int rt_exit(void);

#define rt_malloc			malloc
#define	rt_free				free
#define min(a,b)			(a>b?b:a)

//#define rt_printf			printf
#define sys_newstat 		stat

#define clk_time_get(ts)	gps_get_time(ts)

#define rt_save_flags(x) do{}while(0)
#define rt_irq_disable() do{}while(0)

#define rt_irq_restore(x) do{}while(0)


#define rt_irq_save(x)	do{}while(0)

#define rt_free_irq(x)  do{}while(0)
#define rt_request_irq(...) do{}while(0)
#define rt_irq_level(x); do{}while(0)

#define simple_strtoul strtoul




#endif //_RT_H

/*------------------------------ 文件结束 -------------------------------------
*/


