History log of /freebsd/sys/dev/bce/if_bcereg.h (Results 126 – 143 of 143)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 46c3c836 12-Apr-2008 David Christensen <davidch@FreeBSD.org>

- Fixed a problem with the send chain consumer index which would cause
TX traffic to sit in the send chain until a received packet kick
started the interrupt handler. This would cause extremely

- Fixed a problem with the send chain consumer index which would cause
TX traffic to sit in the send chain until a received packet kick
started the interrupt handler. This would cause extremely slow
performance when used with NFS over UDP.
- Removed untested polling code.
- Updated copyright year in the file header.
- Removed inadvertent ^M's created by DOS text editor.

MFC after: 2 weeks

show more ...


Revision tags: release/7.0.0_cvs, release/7.0.0
# 8ec2795f 22-Feb-2008 David Christensen <davidch@FreeBSD.org>

MFC after: 4 weeks

- Added loose RX MTU functionality to allow frames larger than 1500 bytes
to be accepted even though the interface MTU is set to 1500.
- Implemented new TCP header splitting/jum

MFC after: 4 weeks

- Added loose RX MTU functionality to allow frames larger than 1500 bytes
to be accepted even though the interface MTU is set to 1500.
- Implemented new TCP header splitting/jumbo frame support which uses
two chains for receive traffic rather than the original single recevie
chain.
- Added additional debug support code.

show more ...


Revision tags: release/6.3.0_cvs, release/6.3.0
# 990a2aa5 31-Jul-2007 David Christensen <davidch@FreeBSD.org>

- Fixed a problem that would cause kernel panics and "bce0: discard frame .."
errors (especially when jumbo frames are enabled or in low memory systems)
because the RX chain was corrupted when an

- Fixed a problem that would cause kernel panics and "bce0: discard frame .."
errors (especially when jumbo frames are enabled or in low memory systems)
because the RX chain was corrupted when an mbuf was mapped to an unexpected
number of buffers.
- Fixed a problem that would cause kernel panics when an excessively
fragmented TX mbuf couldn't be defragmented and was released by
bce_tx_encap().

Approved by: re(hrs)
MFC after: 7 days

show more ...


# ca4c7b3b 16-Jun-2007 David Christensen <davidch@FreeBSD.org>

- Migrated IPMI fix from RELENG_6.
- Added additional debug code.


# 133ac1f5 07-Jun-2007 David Christensen <davidch@FreeBSD.org>

New Features:
- Added 2.5G support for BCM5708S.

MFC after: 4 weeks


# 56759046 17-May-2007 David Christensen <davidch@FreeBSD.org>

- Added TSO support
- Updated firmware to latest release (v3.4.8) to fix TSO + jumbo frame lockup
- Added MSI (hw.bce.msi_enable) and TSO (hw.bce.tso_enable) sysctls
- Fixed kernel panic when MSI is

- Added TSO support
- Updated firmware to latest release (v3.4.8) to fix TSO + jumbo frame lockup
- Added MSI (hw.bce.msi_enable) and TSO (hw.bce.tso_enable) sysctls
- Fixed kernel panic when MSI is used and module is unloaded
- Added several new debug routines
- Removed slack space for RX/TX chains since it only covers sloppy coding
- Fixed a potential problem when programming jumbo MTU size in hardware
- Various other comment changes

MFC after: 4 weeks

show more ...


# d2b9bc42 05-May-2007 David Christensen <davidch@FreeBSD.org>

MFC after: 2 weeks

Updated copyright date to 2007.

Tested with BCM5706 A3.

Added ID for BCM5708 B2.

Removed unused driver version string.

Modified BCE_PRINTF macro to automatically fill-in the s

MFC after: 2 weeks

Updated copyright date to 2007.

Tested with BCM5706 A3.

Added ID for BCM5708 B2.

Removed unused driver version string.

Modified BCE_PRINTF macro to automatically fill-in the sc pointer.

Fixed a kernel panic when the driver was loaded as a module from the
command-line because the MII bus pointer was null (i.e. the MII bus
hadn't been enumerated yet).

Added fix proposed by Vladimir Ivanov <wawa@yandex-team.ru> to prevent
driver state corruption when releasing the lock during the ISR in
bce_rx_intr() to send packets up the stack.

Added new TX chain and register read sysctl interfaces for debugging.

Cleaned up formatting for various other debug routines.

Added a new statistic maintained by firmware which tracks the number
of received packets dropped because no receive buffers are available.

show more ...


Revision tags: release/6.2.0_cvs, release/6.2.0
# 5411f544 11-Jan-2007 Xin LI <delphij@FreeBSD.org>

- Instead of if_watchdog/if_timer interface use our own timer
that piggybacks on bce_tick() callout.
- Instead of unconditionally resetting the controller, try to
skip the reset in case we got

- Instead of if_watchdog/if_timer interface use our own timer
that piggybacks on bce_tick() callout.
- Instead of unconditionally resetting the controller, try to
skip the reset in case we got a pause frame, like em(4) did.
- Lock bce_tick() using callout_init_mtx().

Discussed with/Reviewed by: glebius, scottl, davidch

show more ...


# 46222d08 16-Nov-2006 Scott Long <scottl@FreeBSD.org>

Due to an incorrect macro, it appears that this driver has always been
accidentally truncating off the VLAN tag field in the TX descriptor. Fix
this by splitting up the vlan_tag and flags fields int

Due to an incorrect macro, it appears that this driver has always been
accidentally truncating off the VLAN tag field in the TX descriptor. Fix
this by splitting up the vlan_tag and flags fields into separate fields,
and handling them appropriately.

Sponsored by: Ironport
MFC After: 3 days

show more ...


# 4eaefb81 24-Oct-2006 Scott Long <scottl@FreeBSD.org>

Refine the checksum hack a little. It appears that the chip can handle UDP
and TCP checksum offloading fine, it only has a problem with IP checksums on
IP fragments.. Barring a fix or workaround av

Refine the checksum hack a little. It appears that the chip can handle UDP
and TCP checksum offloading fine, it only has a problem with IP checksums on
IP fragments.. Barring a fix or workaround available from the hardware, the
real solution would be to have finer grained control in the stack over what
can and cannot be assisted in hardware.

show more ...


# 49caa8a9 21-Oct-2006 Scott Long <scottl@FreeBSD.org>

There seems to be a problem with txcsum and UDP. Turn it off until it is
understood better. This fixes timeout problems with NFS.


# c5a01a41 16-Oct-2006 Scott Long <scottl@FreeBSD.org>

Overhaul the transmit and dma paths:
- Use bus_dmamap_load_mbuf_sg() to eliminate the need for the callback and
all of the extra bookkeeping associated with it.
- Eliminate the bce_dmamap_arg structu

Overhaul the transmit and dma paths:
- Use bus_dmamap_load_mbuf_sg() to eliminate the need for the callback and
all of the extra bookkeeping associated with it.
- Eliminate the bce_dmamap_arg structure and streamline the memory allocation
routines to not need it. This does change some of the debugging messages.
- Refactor the loop that fills the buffer descriptor so that it can be done
with a single set of logic in a single loop instead of two sets of logic.
- Eliminate the need to cache and pass descriptor indexes between the start
loop and the encap function.
- Change the start loop to always check the ifnet sendq for more work.

This significantly helps the driver withstand large UDP workloads, though
it's still not perfect. I suspect the remaining work lies with handling
the OACTIVE flag, and also in possibly streamlining the interrupt handler
some. It is, however, nearly on par with the other popular gigabit drivers
in terms of stability now.

show more ...


# ec6887f8 14-Oct-2006 Scott Long <scottl@FreeBSD.org>

Don't copy the bd_chain head pointers into temporary objects, they are
available globally.


Revision tags: release/5.5.0_cvs, release/5.5.0
# c40da00c 16-May-2006 Poul-Henning Kamp <phk@FreeBSD.org>

Since DELAY() was moved, most <machine/clock.h> #includes have been
unnecessary.


Revision tags: release/6.1.0_cvs, release/6.1.0
# 179162e8 04-May-2006 Matt Jacob <mjacob@FreeBSD.org>

Gratuitous tag alignment. It bugged me.


# 262af1c8 26-Apr-2006 Paul Saab <ps@FreeBSD.org>

Only use the low address for stats collection.


# 75231ae3 25-Apr-2006 John Baldwin <jhb@FreeBSD.org>

Fix half of the current i386 tinderbox failure. max_bus_addr should be a
bus_addr_t rather than a bus_size_t.


# 6caf734f 10-Apr-2006 Paul Saab <ps@FreeBSD.org>

Add a driver for the Broadcom NetXtreme II (BCM5706/BCM5708)
PCI/PCIe Gigabit Ethernet adapeter.

Submitted by: David Christensen


123456