mirror of https://github.com/jeelabs/esp-link.git
Merge branch 'master' of https://github.com/jeelabs/esp-link
commit
fd296e37d7
@ -0,0 +1,104 @@ |
||||
/*
|
||||
* Copyright (c) 2010 - 2011 Espressif System |
||||
* |
||||
*/ |
||||
|
||||
// Modified for esp-link to confiorm with c99 using the patch included with
|
||||
// esp-open-sdk https://github.com/pfalcon/esp-open-sdk/blob/master/c_types-c99.patch
|
||||
// This is included here because otherwise there is a discrepancy between users that use
|
||||
// the original Espressif SDK vs ones who want to use the SDK included with esp-open-sdk.
|
||||
// This is a mess, if only Espressif fixed their crap!
|
||||
|
||||
#ifndef _C_TYPES_H_ |
||||
#define _C_TYPES_H_ |
||||
|
||||
#include <stdint.h> |
||||
#include <stdbool.h> |
||||
|
||||
//typedef unsigned char uint8_t;
|
||||
typedef signed char sint8_t; |
||||
//typedef signed char int8_t;
|
||||
//typedef unsigned short uint16_t;
|
||||
typedef signed short sint16_t; |
||||
//typedef signed short int16_t;
|
||||
//typedef unsigned long uint32_t;
|
||||
typedef signed long sint32_t; |
||||
//typedef signed long int32_t;
|
||||
typedef signed long long sint64_t; |
||||
//typedef unsigned long long uint64_t;
|
||||
typedef unsigned long long u_int64_t; |
||||
typedef float real32_t; |
||||
typedef double real64_t; |
||||
|
||||
typedef unsigned char uint8; |
||||
typedef unsigned char u8; |
||||
typedef signed char sint8; |
||||
typedef signed char int8; |
||||
typedef signed char s8; |
||||
typedef unsigned short uint16; |
||||
typedef unsigned short u16; |
||||
typedef signed short sint16; |
||||
typedef signed short s16; |
||||
typedef unsigned int uint32; |
||||
typedef unsigned int u_int; |
||||
typedef unsigned int u32; |
||||
typedef signed int sint32; |
||||
typedef signed int s32; |
||||
typedef int int32; |
||||
typedef signed long long sint64; |
||||
typedef unsigned long long uint64; |
||||
typedef unsigned long long u64; |
||||
typedef float real32; |
||||
typedef double real64; |
||||
|
||||
#define __le16 u16 |
||||
|
||||
typedef unsigned int size_t; |
||||
|
||||
#define __packed __attribute__((packed)) |
||||
|
||||
#define LOCAL static |
||||
|
||||
#ifndef NULL |
||||
#define NULL (void *)0 |
||||
#endif /* NULL */ |
||||
|
||||
/* probably should not put STATUS here */ |
||||
typedef enum { |
||||
OK = 0, |
||||
FAIL, |
||||
PENDING, |
||||
BUSY, |
||||
CANCEL, |
||||
} STATUS; |
||||
|
||||
#define BIT(nr) (1UL << (nr)) |
||||
|
||||
#define REG_SET_BIT(_r, _b) (*(volatile uint32_t*)(_r) |= (_b)) |
||||
#define REG_CLR_BIT(_r, _b) (*(volatile uint32_t*)(_r) &= ~(_b)) |
||||
|
||||
#define DMEM_ATTR __attribute__((section(".bss"))) |
||||
#define SHMEM_ATTR |
||||
|
||||
#ifdef ICACHE_FLASH |
||||
#define ICACHE_FLASH_ATTR __attribute__((section(".irom0.text"))) |
||||
#define ICACHE_RODATA_ATTR __attribute__((section(".irom.text"))) |
||||
#else |
||||
#define ICACHE_FLASH_ATTR |
||||
#define ICACHE_RODATA_ATTR |
||||
#endif /* ICACHE_FLASH */ |
||||
|
||||
#define STORE_ATTR __attribute__((aligned(4))) |
||||
|
||||
#ifndef __cplusplus |
||||
//typedef unsigned char bool;
|
||||
#define BOOL bool |
||||
//#define true (1)
|
||||
//#define false (0)
|
||||
#define TRUE true |
||||
#define FALSE false |
||||
|
||||
|
||||
#endif /* !__cplusplus */ |
||||
|
||||
#endif /* _C_TYPES_H_ */ |
Loading…
Reference in new issue