aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPyun YongHyeon <yongari@FreeBSD.org>2013-08-09 01:15:32 +0000
committerPyun YongHyeon <yongari@FreeBSD.org>2013-08-09 01:15:32 +0000
commit69b1f509a4338e8db65554cc83a66b2eb6bc7ea6 (patch)
treeb9e23e7b38c177dc3732eb42e41f34525dea26dd
parentfe8391035a82db0b0f1c3343bdc760334dc6431c (diff)
Notes
-rw-r--r--sys/dev/bge/if_bge.c2
-rw-r--r--sys/dev/bge/if_bgereg.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c
index 0cfbca73cafb..6b2ceb42330e 100644
--- a/sys/dev/bge/if_bge.c
+++ b/sys/dev/bge/if_bge.c
@@ -5542,6 +5542,8 @@ bge_init_locked(struct bge_softc *sc)
mode = CSR_READ_4(sc, BGE_RX_MODE);
if (BGE_IS_5755_PLUS(sc))
mode |= BGE_RXMODE_IPV6_ENABLE;
+ if (sc->bge_asicrev == BGE_ASICREV_BCM5762)
+ mode |= BGE_RXMODE_IPV4_FRAG_FIX;
CSR_WRITE_4(sc,BGE_RX_MODE, mode | BGE_RXMODE_ENABLE);
DELAY(10);
diff --git a/sys/dev/bge/if_bgereg.h b/sys/dev/bge/if_bgereg.h
index d6197c0d713e..a1e6df16dfce 100644
--- a/sys/dev/bge/if_bgereg.h
+++ b/sys/dev/bge/if_bgereg.h
@@ -841,6 +841,7 @@
#define BGE_RXMODE_RX_NO_CRC_CHECK 0x00000200
#define BGE_RXMODE_RX_KEEP_VLAN_DIAG 0x00000400
#define BGE_RXMODE_IPV6_ENABLE 0x01000000
+#define BGE_RXMODE_IPV4_FRAG_FIX 0x02000000
/* Receive MAC status register */
#define BGE_RXSTAT_REMOTE_XOFFED 0x00000001