#include /* common */ #define EOS_NET_MTU 1500 #define EOS_NET_SIZE_BUF EOS_NET_MTU #define EOS_NET_MTYPE_SOCK 1 #define EOS_NET_MTYPE_WIFI 2 #define EOS_NET_MTYPE_CELL 3 #define EOS_NET_MTYPE_APP 4 #define EOS_NET_MTYPE_RNG 5 #define EOS_NET_MAX_MTYPE 5 #define EOS_NET_MTYPE_SLEEP 0x10 /* does not have net handler */ #define EOS_NET_MTYPE_FLAG_ONEW 0x40 #define EOS_NET_MTYPE_FLAG_REPL 0x80 #define EOS_NET_MTYPE_MASK 0x3F /* 0x0F if mtype is handled by evtq */ /* esp32 specific */ #define EOS_NET_SIZE_BUFQ 4 #define EOS_NET_SIZE_SNDQ 4 typedef void (*eos_net_handler_t) (unsigned char, unsigned char *, uint16_t); void eos_net_xchg_task(void *param); void eos_net_init(void); void eos_net_run(void); unsigned char *eos_net_alloc(void); void eos_net_free(unsigned char *buf); int eos_net_send(unsigned char mtype, unsigned char *buffer, uint16_t buf_len); void eos_net_reply(unsigned char mtype, unsigned char *buffer, uint16_t buf_len); void eos_net_sleep_req(void); void eos_net_wake(void); void eos_net_set_handler(unsigned char mtype, eos_net_handler_t handler);