Sylvain Rochet wrote: > You can't call tcpip_input() from an interrupt, this is a blocking > message passing, it can block.
It's not: tcpip_input/tcpip_inpkt calls sys_mbox_trypost(), which does not have to be blocking but should return != ERR_OK if the queue is full (drop input packets). However, this is a port function, so the port may well not support doing this from interrupt if it's written in a wrong way. Aside from that, you should call "netif->input()" from your low level input. This will be the function passed as input function to "netif_add()". The point here is making your driver independent of threading requirements or application usage. Calling tcpip_input or ethernet_input directly breaks the lwIP layering concepts. Simon _______________________________________________ lwip-users mailing list lwip-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/lwip-users