#include #include "../event.h" /* 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 */ /* fe310 specific */ #define EOS_NET_SIZE_BUFQ 2 int eos_net_init(void); int eos_net_run(void); void eos_net_start(void); void eos_net_stop(void); int eos_net_sleep(void); int eos_net_sleep_rdy(void); void eos_net_wake(void); void eos_net_save2aon(void); void eos_net_bad_handler(unsigned char type, unsigned char *buffer, uint16_t len); void eos_net_set_handler(unsigned char type, eos_evt_handler_t handler); void eos_net_acquire_for_evt(unsigned char type, char acq); void eos_net_acquire(void); void eos_net_release(void); unsigned char *eos_net_alloc(void); void eos_net_free(unsigned char *buffer, unsigned char more); int eos_net_send(unsigned char type, unsigned char *buffer, uint16_t len, unsigned char more); int eos_net_send_sync(unsigned char type, unsigned char *buffer, uint16_t len); int eos_net_xchg(unsigned char *type, unsigned char *buffer, uint16_t *len); int _eos_net_send(unsigned char type, unsigned char *buffer, uint16_t len, unsigned char async, unsigned char more);