diff options
| author | Paul Saab <ps@FreeBSD.org> | 2003-05-04 00:07:21 +0000 |
|---|---|---|
| committer | Paul Saab <ps@FreeBSD.org> | 2003-05-04 00:07:21 +0000 |
| commit | 3927098f93ea42816a3c7887d468190e5f94d863 (patch) | |
| tree | ac7f80d5a3927637024ee979967015f43a86139c /sys/dev | |
| parent | 9bf327a70c9819ece273fe950a89d606a2db0fc8 (diff) | |
Notes
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/bge/if_bge.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c index d7888fead6320..0d0c7acb6e051 100644 --- a/sys/dev/bge/if_bge.c +++ b/sys/dev/bge/if_bge.c @@ -934,8 +934,16 @@ bge_init_tx_ring(sc) { sc->bge_txcnt = 0; sc->bge_tx_saved_considx = 0; + CSR_WRITE_4(sc, BGE_MBX_TX_HOST_PROD0_LO, 0); + /* 5700 b2 errata */ + if (BGE_ASICREV(sc->bge_asicrev) == BGE_ASICREV_BCM5700) + CSR_WRITE_4(sc, BGE_MBX_TX_HOST_PROD0_LO, 0); + CSR_WRITE_4(sc, BGE_MBX_TX_NIC_PROD0_LO, 0); + /* 5700 b2 errata */ + if (BGE_ASICREV(sc->bge_asicrev) == BGE_ASICREV_BCM5700) + CSR_WRITE_4(sc, BGE_MBX_TX_NIC_PROD0_LO, 0); return(0); } @@ -2344,6 +2352,9 @@ bge_start(ifp) /* Transmit */ CSR_WRITE_4(sc, BGE_MBX_TX_HOST_PROD0_LO, prodidx); + /* 5700 b2 errata */ + if (BGE_ASICREV(sc->bge_asicrev) == BGE_ASICREV_BCM5700) + CSR_WRITE_4(sc, BGE_MBX_TX_HOST_PROD0_LO, prodidx); /* * Set a timeout in case the chip goes out to lunch. |
