Correct setting TX random backoff register. This register is
implemented as a 10 bits linear feedback shift register so only lower 10 bits are valid. Because this register is used to initialize random backoff interval register only when resolved duplex is half-duplex, it wouldn't have caused issues in these days. Submitted by: Masanobu SAITOH <msaitoh@NetBSD.org>
This commit is contained in:
parent
b9d2edd7c8
commit
0a2cc82713
@ -2280,9 +2280,9 @@ bge_blockinit(struct bge_softc *sc)
|
||||
|
||||
/* Set random backoff seed for TX */
|
||||
CSR_WRITE_4(sc, BGE_TX_RANDOM_BACKOFF,
|
||||
IF_LLADDR(sc->bge_ifp)[0] + IF_LLADDR(sc->bge_ifp)[1] +
|
||||
(IF_LLADDR(sc->bge_ifp)[0] + IF_LLADDR(sc->bge_ifp)[1] +
|
||||
IF_LLADDR(sc->bge_ifp)[2] + IF_LLADDR(sc->bge_ifp)[3] +
|
||||
IF_LLADDR(sc->bge_ifp)[4] + IF_LLADDR(sc->bge_ifp)[5] +
|
||||
IF_LLADDR(sc->bge_ifp)[4] + IF_LLADDR(sc->bge_ifp)[5]) &
|
||||
BGE_TX_BACKOFF_SEED_MASK);
|
||||
|
||||
/* Set inter-packet gap */
|
||||
|
@ -797,7 +797,7 @@
|
||||
#define BGE_LEDCTL_BLINKPERIOD_OVERRIDE 0x80000000
|
||||
|
||||
/* TX backoff seed register */
|
||||
#define BGE_TX_BACKOFF_SEED_MASK 0x3F
|
||||
#define BGE_TX_BACKOFF_SEED_MASK 0x3FF
|
||||
|
||||
/* Autopoll status register */
|
||||
#define BGE_AUTOPOLLSTS_ERROR 0x00000001
|
||||
|
Loading…
x
Reference in New Issue
Block a user