Hello all,
I am experimenting with the E1000 with the help of the info found here on OsDev and in the Intel documentation. I tried to write a simple driver able to receive and transmit frames. It seems to work, but the receiving of packets stops working after some time.
I tried to turn on the E1000 logging in Bochs to see what's happening and everytime the story is the same - after some time the message "Device not ready to receive data" is being displayed.
The code itself and the log from Bochs is attached.
Notice: the behaviour in VirtualBox is the same (with the exception that I don't know the exact reason, but I assume it's the same).
Any idea where I am wrong ?
Thanks for help,
Vladimir
E1000 stops receiving packets after some time
E1000 stops receiving packets after some time
- Attachments
-
- e1000.txt
- Logfile from Bochs
- (14.83 KiB) Downloaded 107 times
-
- I825XX.TXT
- driver code
- (16.42 KiB) Downloaded 74 times
[ MicroBe OS ]
Re: E1000 stops receiving packets after some time
Solved. The RDLEN value was wrong. In case I have only 1 descriptor available, the value has to be 16
[ MicroBe OS ]