lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] lwIP performance with FreeRTOS


From: Simon Goldschmidt
Subject: Re: [lwip-users] lwIP performance with FreeRTOS
Date: Tue, 28 Feb 2012 11:24:09 +0100

Chris Ponder <address@hidden> wrote:
> I have been wondering if
> there is a way of using the pbuf interface and encapsulating the whole lwIP
> plus send code in a single thread, but so far this has proved an elusive
> target.

You can let the code that creates pbufs (and sends them) run in tcpip_thread by 
calling tcpip_callback(), e.g. when your interrupt (or whatever it is) detects 
that data is to be sent, just call tcpip_callback() with a function pointer and 
the function pass as parameter runs in tcpip_thread.

When doing this from an ISR, you only have one single task switch from the ISR 
to tcpip_thread. Of course RX packets are not processed while doing this, but 
from what you wrote, that should be OK.


Oh, and while looking at the lwIP sources, I saw you'd better call 
netconn_sendto() instead of netconn_connect() and netconn_send(), as it is 
implemented with only 1 call into the core instead of 2.

Another thing to speed up might be cumulating TX-finished interrupts (if you 
use them) and generally checking your netif driver is as fast as it can be (are 
you using DMA?).

Simon
-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de



reply via email to

[Prev in Thread] Current Thread [Next in Thread]