diff options
author | Nathan Binkert <binkertn@umich.edu> | 2004-07-30 11:29:45 -0400 |
---|---|---|
committer | Nathan Binkert <binkertn@umich.edu> | 2004-07-30 11:29:45 -0400 |
commit | e60a4c58ee3aca6027c2d03f3360012e8dc4f742 (patch) | |
tree | da1d7ac7f31edb9b8c8af461471fa818f4c94386 /dev/ns_gige.hh | |
parent | 8f87a57e70f8a676cdd016458a13431e0019475c (diff) | |
download | gem5-e60a4c58ee3aca6027c2d03f3360012e8dc4f742.tar.xz |
Fix a few bugs in the receive state machine. In doing back to tracking
whether or not the state machine is enabled rather than tracking the
specific instance of trying to halt the state machine.
dev/ns_gige.cc:
change back to tracking the state machine's enableness instead of
whether or not it is trying to halt. Also fix a major bug that
would cause the NIC to drop packets when the rx state machine was
idle, but enabled.
Fix a couple other bugs in the state machine where the idle interrupt
would happen at the wrong time.
Add a warning to deal with improper values of intrTick
dev/ns_gige.hh:
We need to keep track of whether the state machine is enabled
or not separately from the control register since the bits don't
always reflect the truth.
--HG--
extra : convert_revision : 20056b225fa62a0744473babfd693506aa5f29b2
Diffstat (limited to 'dev/ns_gige.hh')
-rw-r--r-- | dev/ns_gige.hh | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/dev/ns_gige.hh b/dev/ns_gige.hh index c326d0921..82f640db1 100644 --- a/dev/ns_gige.hh +++ b/dev/ns_gige.hh @@ -186,6 +186,8 @@ class NSGigE : public PciDev /* tx State Machine */ TxState txState; + bool txEnable; + /** Current Transmit Descriptor Done */ bool CTDD; /** current amt of free space in txDataFifo in bytes */ @@ -200,6 +202,8 @@ class NSGigE : public PciDev /** rx State Machine */ RxState rxState; + bool rxEnable; + /** Current Receive Descriptor Done */ bool CRDD; /** num of bytes in the current packet being drained from rxDataFifo */ |