50 lines
1.2 KiB
C
50 lines
1.2 KiB
C
#pragma once
|
|
#ifndef LWIP_ARCH_CC_H
|
|
#define LWIP_ARCH_CC_H
|
|
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
#include <kernel/ke_debug.h>
|
|
|
|
#ifndef LITTLE_ENDIAN
|
|
#define LITTLE_ENDIAN 1234
|
|
#endif
|
|
#ifndef BIG_ENDIAN
|
|
#define BIG_ENDIAN 4321
|
|
#endif
|
|
#ifndef BYTE_ORDER
|
|
#define BYTE_ORDER LITTLE_ENDIAN
|
|
#endif
|
|
|
|
/* MSVC/freestanding kernel-friendly printf format fallbacks. */
|
|
#define LWIP_NO_INTTYPES_H 1
|
|
#define X8_F "02x"
|
|
#define U16_F "hu"
|
|
#define S16_F "hd"
|
|
#define X16_F "hx"
|
|
#define U32_F "lu"
|
|
#define S32_F "ld"
|
|
#define X32_F "lx"
|
|
#define SZT_F "llu"
|
|
|
|
#define LWIP_NO_CTYPE_H 1
|
|
#define LWIP_TIMEVAL_PRIVATE 1
|
|
#define LWIP_PROVIDE_ERRNO 1
|
|
|
|
/* Used by SYS_LIGHTWEIGHT_PROT. Keep it wide enough for saved RFLAGS. */
|
|
typedef uintptr_t sys_prot_t;
|
|
|
|
#define LWIP_PLATFORM_DIAG(x) do { DbgPrint x; } while (0)
|
|
#define LWIP_PLATFORM_ASSERT(x) do { KePanic(KE_PANIC_CODE_DRIVER, "lwIP assert: %s\n", (x)); } while (0)
|
|
|
|
unsigned int lwip_port_rand(void);
|
|
#define LWIP_RAND() ((uint32_t)lwip_port_rand())
|
|
|
|
/* Force lwIP's static heap/aligned buffers to be at least 8-byte aligned. */
|
|
#define LWIP_DECLARE_MEMORY_ALIGNED(variable_name, size) \
|
|
__declspec(align(8)) uint8_t variable_name[LWIP_MEM_ALIGN_BUFFER(size)]
|
|
|
|
#define PACK_STRUCT_USE_INCLUDES
|
|
|
|
#endif /* LWIP_ARCH_CC_H */
|