The Pedigree Project
0.1
|
Go to the source code of this file.
Macros | |
#define | SLIP_USE_RX_THREAD !NO_SYS |
#define | SLIP_RX_FROM_ISR 0 |
#define | SLIP_RX_QUEUE SLIP_RX_FROM_ISR |
Functions | |
err_t | slipif_init (struct netif *netif) |
void | slipif_poll (struct netif *netif) |
SLIP netif API
Definition in file slipif.h.
#define SLIP_RX_FROM_ISR 0 |
Set this to 1 to enable functions to pass in RX bytes from ISR context. If enabled, slipif_received_byte[s]() process incoming bytes and put assembled packets on a queue, which is fed into lwIP from slipif_poll(). If disabled, slipif_poll() polls the serial line (using sio_tryread()).
#define SLIP_RX_QUEUE SLIP_RX_FROM_ISR |
#define SLIP_USE_RX_THREAD !NO_SYS |
SLIP netif initialization
Call the arch specific sio_open and remember the opened device in the state field of the netif.
netif | the lwip network interface structure for this slipif |
Definition at line 380 of file slipif.c.
References ERR_IF, ERR_MEM, ERR_OK, LWIP_DEBUGF, mem_free(), mem_malloc(), netif::mtu, netif::name, netif::num, SLIP_DEBUG, SLIP_MAX_SIZE, SLIP_SIO_SPEED, SLIPIF_THREAD_NAME, SLIPIF_THREAD_PRIO, SLIPIF_THREAD_STACKSIZE, netif::state, and sys_thread_new().
void slipif_poll | ( | struct netif * | netif | ) |
Polls the serial device and feeds the IP layer with incoming packets.
netif | The lwip network interface structure for this slipif |
Definition at line 446 of file slipif.c.
References ERR_OK, netif::input, pbuf::len, pbuf::next, pbuf_free(), netif::state, SYS_ARCH_DECL_PROTECT, and pbuf::tot_len.