Optimizing RTL8139 performance RRS feed

  • Question

  • Hello,

    For our industrial application we utilize Ethercat to communicate to slave devices, Ethercat utilizes any standard ethernet port for communication. After discussing the application with a colleague we have found out that utilizing NDISUIO to send and receive packets from our Windows CE target works for some NICs and doesn't work for other NICs. I would like to modify the NIC driver in order to optimize it for communication with our slaves. We are currently utilizing an RTL8139 NIC, and would like to modify the driver for RTL8139 for WEC7 in order to allow it to function properly. Utilizing a network stack for purchase, an optimized driver is supplied for the RTL8139 which allows the target to function properly when communicating with the slaves (it does not use NDISUIO I believe thus making it faster). I would like to modify the driver in order to achieve what others have for their Ethercat Master stacks.

    My question is this, for the RTL8139 utilizing NDISUIO  the NIC communicates to the slave briefly and then stops (using Wireshark I see this). How can I query the NIC in order to see what error is happening (possibly a timing issue)? When setting up the NIC for communication using NDISUIO getlasterror() is called, but nothing is returned because it is setup correctly. But how about while the nic is operating, how can I retrieve error information so that I can understand the problem further and eventually modify the driver? I was wondering if anybody has had a similar experience or has any advice.


    • Edited by elk84 Monday, June 24, 2013 1:53 PM
    Monday, June 24, 2013 1:52 PM