RTL 8139 receive
Posted: Wed Aug 24, 2011 12:46 pm
Hello, so another netcard for which I'm trying write driver ..
So again, trasmit works great, what does not work is receive. When transmitting I properly get interrupt as well as when I'm receiving, but Rx buffer appears to be empty.
According to Realtek datasheet, receiving should be pretty straightforward. Everything should be much more simpler than by other netcards I have seen, because everything I have to (apparently) do, is pass Rx buffer (just physical memory) to RBSTART register and toggle receiver enable flag in command register.
Incoming data from line is stored in netcard's FIFO and then, when early Rx threshold is met (configured in RCR) is data transfered to address specified in that RBSTART register.
But no data arrives.
Any clues what could be wrong, or what I have eventually missed here?
Thanks.
EDIT: Rx threshold level is off, still no data.
So again, trasmit works great, what does not work is receive. When transmitting I properly get interrupt as well as when I'm receiving, but Rx buffer appears to be empty.
According to Realtek datasheet, receiving should be pretty straightforward. Everything should be much more simpler than by other netcards I have seen, because everything I have to (apparently) do, is pass Rx buffer (just physical memory) to RBSTART register and toggle receiver enable flag in command register.
Incoming data from line is stored in netcard's FIFO and then, when early Rx threshold is met (configured in RCR) is data transfered to address specified in that RBSTART register.
But no data arrives.
Any clues what could be wrong, or what I have eventually missed here?
Thanks.
EDIT: Rx threshold level is off, still no data.