AnsweredAssumed Answered

DMA Rx Buffering

Question asked by ldez on May 29, 2013
Im running LwIP on FreeRTOS with the STM32F407.

I initially used an example project which used a DMA interrupt when Rx was complete. This interrupt was interrupting a critical task that I run so I disabled it and I release the semaphore that would normally be called in interrupt at the end of my critical task instead.

Previously I would get about 15-20 packets during this critical task (processing the packets at the end of it), but now I am only receiving 8 every time. I have tried increasing ETH_RXBUFNB which is what I thought controller the number of buffers the ethernet DMA had available but this isn't allowing any more packets to be received (still only seeing 8 at the end of the critical task).

Can someone please offer some advice or correct my thought process if it is wrong. Thanks!

Outcomes