PPC405GP Ethernet Driver

Doyle, Bryon Thomas (Bryon) bdoyle at lucent.com
Mon Aug 1 17:14:19 UTC 2005


Hello, I have been posting over the last few weeks on some pointers how to write an Ethernet driver for the RTEMS gen405 BSP. Well, I've got it running at about 95% now and I've run into a snag. I seem to be running out of available "mbufs" after a few minutes of netdemo running on the board, and I don't know why. I run a ping -t on my development PC to test the network functionality, it runs great for a while then it starts timing out. Over my terminal connection to the board, I can run the statistics portion of netdemo and it shows that all 512 buffers are full with data. And when I try to run the UDP send command after pinging the board for a few minutes it freezes and prints out "waiting for available mbuf" every 30 seconds or so. Additionally, I am positive that the Ethernet controller's DMA is properly configured and all the wrap bits are set on the respective buffers. I am reluctant to simply add a call to m_freem(m) in my receive function out of fear of deleting a pa!
 cket before the stack has finished processing it, and given a quick glance of some other drivers in the RTEMS tree, I did not notice any references to freeing up memory buffers after they are received. Any thoughts on why my driver is eating up mbufs?  Any help is always appreciated, and I plan on uploading my driver into the RTEMS CVS as soon as I get this problem fixed and feel comfortable with it working. Thanks Again.




Bryon Doyle
Bell Labs Summer Intern
Lucent Technologies



More information about the users mailing list