Commit Graph

15 Commits

Author SHA1 Message Date
fair 2104199dc3 Change the "dontcare bits" argument to ifmedia_init() to IFM_IMASK
so that it is possible select PHY instances other than the first
one (instance zero), if there is more than one PHY attached.
2002-10-21 23:38:10 +00:00
thorpej b75a007d9f Add trailing ; to CFATTACH_DECL. 2002-10-02 16:51:16 +00:00
thorpej 387fc6dc87 Use CFATTACH_DECL(). 2002-09-30 20:37:04 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
bouyer 10f940facc STE_CarrierSenseErrors is 8bit wide, not 16bit.
Reenable statistics interrupts, reading it as 16bit caused it to not be cleared,and thus the eventual interrupt to not be cleared (and this caused an
infinite loop in interrupt routine).
While I'm there count STE_CarrierSenseErrors as oerror (this is incremented
each time we try to send a packet and the link is down).
2002-06-05 16:27:29 +00:00
bouyer aad58d87e1 Rework transmit underrun logic:
- when a transmit underrun occurs, only reset the transmit logic. This prevents
  the link from going down at the MII level (the same logic can probably
  be used for other transmit errors)
- set the urgent threshold to half the start threshold. From experiments
  this helps a bit decreasing the number of underruns

Now that underruns don't cause the interface to stop for several seconds,
make back out the default transmit threshold to 128.
2002-06-05 15:24:31 +00:00
bouyer dc66b51bca When the chip gets a transmit underrun, the driver resets the chip, which
cause the link to go down for several seconds on my Dlink DFE580-TX (quad-port
DL1002). This behavior is unacceptable, especially as the driver usually
gets several underrun at once, causing the link to be almost unaviable
for several 10s of seconds.
Bump the default transmit threshold to 1504 bytes to avoid transmit underrun.
2002-06-01 17:24:38 +00:00
bouyer 208589bfca On a Dlink DFE580-TX (DL-1002), attempting to transmit packets while the link
is down cause the chip to create an IE_UpdateStats condition which can't be
cleared, causing the driver to enter an interrupt loop.
Workaround: mask IE_UpdateStats
2002-06-01 17:20:13 +00:00
lukem 9048aaae21 add RCSID 2001-11-13 07:48:40 +00:00
thorpej bd35a1b7ed Make sure to initialize the all Rx descriptors properly in *_init()
even if mbufs for them are already allocated.
2001-07-23 17:26:50 +00:00
thorpej 536f4fded2 Adjust some reset delays. 2001-07-23 17:23:09 +00:00
thorpej 44e529fecc Use BUS_DMA_READ and BUS_DMA_WRITE in some obvious places. 2001-07-19 16:36:14 +00:00
thorpej 2642760b40 Update for D-Link ST201 change. 2001-06-30 01:05:25 +00:00
thorpej abda6184c0 In the `copy small' path, make sure to align the payload. 2001-06-29 23:36:03 +00:00
thorpej 7e843c3ccb Device driver for the Sundance Tech. ST-201 10/100 Ethernet. This
chip is found on the D-Link DFE-550TX.
2001-06-19 23:00:47 +00:00