When writing a DMA based ethernet driver, a function must be written to 
periodically allocate POOL pbufs and put them in the Rx DMA buffer descriptor 
ring.

I think this could be made a bit more efficient.
What if I make the Rx DMA buffer descriptor ring large enough to hold all POOL 
pbufs. At start-up all POOL pbufs are allocated and put in the Rx DMA ring.
pbuf_free() is modified so that whenever a POOL pbuf is freed it is immediately 
put in the Rx DMA ring.

This should improve performance, as well as simplify the ethernet driver a bit.

It is a minor modification to pbuf_free().

Thoughts?

/Timmy Brolin
_______________________________________________
lwip-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to