Commit Graph

19 Commits

Author SHA1 Message Date
mjl 395027b4be Correct obviously switched args to memset() 2002-07-18 02:07:13 +00:00
thorpej 7ba40961d6 Add a BGE_QUIRK_CSUM_BROKEN quirk, and give it to BCM5700 B0, rather
than testing for the revision all over the driver.  If the chip has
broken checksums, then don't advertise the capability to the stack.
2002-07-13 22:48:40 +00:00
thorpej 0ff52204b9 Give BCM5700 Ax and Bx revs the BGE_QUIRK_LINK_STATE_BROKEN quirk,
and test for that, rather than checking revision where the quirk is
handled.
2002-07-13 22:31:18 +00:00
thorpej dcebb2bf0d Add a lookup table with ASIC revision, name, and any quirks. Print
ASIC revision at attach time.  Add BCM5703 revisions.
2002-07-13 22:21:20 +00:00
thorpej 7d85789f0a Move the BCM5401 DSP patch out of the bge driver and into
the brgphy driver; all users of the BCM5400 and BCM5401 need
the DSP patch and the sledgehammer-reset-at-media-set-time.

Also add a DSP patch for the BCM5411 gleaned from Apple's
GMAC driver for Darwin.

Tested with a 3Com 3c996-T (BCM5700 + BCM5401).
2002-07-13 01:23:27 +00:00
enami f216ec52a0 Match Altima AC1001. 2002-07-12 22:29:14 +00:00
thorpej 7ff40c446d Fix multicast filter programming. 2002-07-01 22:42:47 +00:00
thorpej 969b2f1817 Fix a comment. 2002-06-28 18:46:46 +00:00
thorpej 9066ce1621 When stopping the various functional blocks of the chip, clear the
bit and then read it back in a loop (with appropriate delays) waiting
for it to read back clear.

This fixes a problem where the bus would hang when bringing down
the interface or changing interface flags on a system with a
sufficiently fast CPU (e.g. 2GHz P4 Xeon).
2002-06-28 18:44:45 +00:00
fvdl 50ade28e9b Rearrange alignment code a bit. 2002-06-28 18:39:45 +00:00
thorpej 6abec8e2a2 Increase previously added delays from 2us to 10us. 2002-06-28 01:10:06 +00:00
thorpej 90bf67b885 * Only set the jumbo frame capability if we are able to allocate
jumbo frame buffers.
* Garbage-collect some stuff we don't need.
* Fix timeout detection in the firmware handshake.
2002-06-28 00:55:20 +00:00
thorpej 7778c16e7c Use a table to match BCM570x products. 2002-06-27 23:56:20 +00:00
thorpej b7af161065 Don't call m_aux_find() in the inner loop when creating the Tx
descriptor list.  Instead, call it once and remember the result,
and only call it looking for VLAN tags if VLANs are configured
on the interface.
2002-06-27 23:21:34 +00:00
thorpej 68be8ecae4 Put some delay in the loops that poll for MII transaction
completion.  Without this, reading the PHY can hang the bus
on a sufficiently fast CPU.
2002-06-27 22:31:30 +00:00
fvdl 8a454b46d0 Disable TCP/UDP checksums on the receive side again. 2002-06-27 22:10:11 +00:00
cjs 6f2291b427 Match newer NetGear GA302T cards. 2002-06-26 10:48:18 +00:00
fvdl dd96b79d02 According to the Linux driver from Broadcom, only the 5700 B0 revision had
rx checksum problems. So only disable rx checksum for that revision.
2002-06-24 01:23:11 +00:00
fvdl b04a6fd69c Driver for Broadcom 570x / Altima AC 1000 gigabit ethernet cards.
Written by Bill Paul for FreeBSD. This port started out with the
port done to OpenBSD by nate@openbsd.org, but ended up looking much
more like the port of the ti driver done by drochner@netbsd.org
(they are similar in structure).
2002-06-22 14:42:07 +00:00