diff options
| author | Bernard Xiong <[email protected]> | 2015-05-04 20:37:41 +0800 |
|---|---|---|
| committer | Bernard Xiong <[email protected]> | 2015-05-04 20:37:41 +0800 |
| commit | dcc6e398165e61859411185db01c99a11ed30a8f (patch) | |
| tree | 08b4753b17c16295f20016244c67a6cacafe2420 /components | |
| parent | 1f52f79d0be3174698c4fe2ad4fcf70284733be7 (diff) | |
[lwIP] Use lock scheduler instead of disable interrupt for lwIP porting.
Diffstat (limited to 'components')
| -rw-r--r-- | components/net/lwip-1.4.1/src/arch/include/arch/cc.h | 26 | ||||
| -rw-r--r-- | components/net/lwip-1.4.1/src/lwipopts.h | 21 |
2 files changed, 18 insertions, 29 deletions
diff --git a/components/net/lwip-1.4.1/src/arch/include/arch/cc.h b/components/net/lwip-1.4.1/src/arch/include/arch/cc.h index 0633494d1a..a4dc1732f8 100644 --- a/components/net/lwip-1.4.1/src/arch/include/arch/cc.h +++ b/components/net/lwip-1.4.1/src/arch/include/arch/cc.h @@ -53,7 +53,10 @@ typedef rt_uint32_t mem_ptr_t; #define S32_F "ld" #define X32_F "lx" -#ifdef RT_USING_NEWLIB +#ifdef RT_USING_LIBC +#if defined(__CC_ARM) || defined(__IAR_SYSTEMS_ICC__) +#include <sys/errno.h> +#else #include <errno.h> /* some errno not defined in newlib */ #define ENSRNOTFOUND 163 /* Domain name not found */ @@ -61,16 +64,20 @@ typedef rt_uint32_t mem_ptr_t; 180 here because the number "108" which is used in arch.h has been assigned to another error code. */ #define ESHUTDOWN 180 -#elif RT_USING_MINILIBC -#include <errno.h> -#define EADDRNOTAVAIL 99 /* Cannot assign requested address */ +#endif /* __CC_ARM/__IAR_SYSTEMS_ICC__ */ #else #define LWIP_PROVIDE_ERRNO #endif -#ifdef RT_USING_MINILIBC -#include <time.h> -#define LWIP_TIMEVAL_PRIVATE 0 +#ifdef RT_USING_LIBC +#include <sys/time.h> +#define LWIP_TIMEVAL_PRIVATE 0 +#else +#define LWIP_TIMEVAL_PRIVATE 1 +#endif + +#if defined(RT_USING_DFS_LWIP) +#define LWIP_COMPAT_SOCKETS 0 #endif #if defined(__CC_ARM) /* ARMCC compiler */ @@ -100,8 +107,11 @@ void sys_arch_assert(const char* file, int line); #define LWIP_PLATFORM_DIAG(x) do {rt_kprintf x;} while(0) #define LWIP_PLATFORM_ASSERT(x) do {rt_kprintf(x); sys_arch_assert(__FILE__, __LINE__);}while(0) - #include "string.h" +#define SYS_ARCH_DECL_PROTECT(level) +#define SYS_ARCH_PROTECT(level) rt_enter_critical() +#define SYS_ARCH_UNPROTECT(level) rt_exit_critical() + #endif /* __ARCH_CC_H__ */ diff --git a/components/net/lwip-1.4.1/src/lwipopts.h b/components/net/lwip-1.4.1/src/lwipopts.h index 0501df6ea8..cb7def8ae6 100644 --- a/components/net/lwip-1.4.1/src/lwipopts.h +++ b/components/net/lwip-1.4.1/src/lwipopts.h @@ -353,25 +353,4 @@ #define LWIP_RAND rand #endif -#if defined(RT_USING_DFS_LWIP) -#define LWIP_COMPAT_SOCKETS 0 -#endif - -#if defined(__CC_ARM) || defined(__IAR_SYSTEMS_ICC__) - -#if defined(RT_USING_PTHREADS) -#define LWIP_TIMEVAL_PRIVATE 0 -#include <posix_types.h> -#else -/* there is no timeval in CC_ARM and IAR */ -#define LWIP_TIMEVAL_PRIVATE 1 -#endif /* RT_USING_PTHREADS */ - -#elif defined (__GNUC__) - -#define LWIP_TIMEVAL_PRIVATE 0 -#include <sys/time.h> - -#endif - #endif /* __LWIPOPTS_H__ */ |
