Please test the following diff if you have an adapter with the BCM5703
chipset.


Set the DMA read watermark to 4 on the BCM5703 chipset in PCI-X mode.  This
is needed to prevent some TX timeouts.


Index: if_bge.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_bge.c,v
retrieving revision 1.255
diff -u -p -r1.255 if_bge.c
--- if_bge.c    9 Nov 2008 15:08:26 -0000       1.255
+++ if_bge.c    18 Nov 2008 06:34:52 -0000
@@ -1243,6 +1243,10 @@ bge_chipinit(struct bge_softc *sc)
                        /* 1536 bytes for read, 384 bytes for write. */
                        dma_rw_ctl |= BGE_PCIDMARWCTL_RD_WAT_SHIFT(7) |
                            BGE_PCIDMARWCTL_WR_WAT_SHIFT(3);
+               } else if (BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5703) {
+                       /* 512 bytes for read, 384 bytes for write. */
+                       dma_rw_ctl |= BGE_PCIDMARWCTL_RD_WAT_SHIFT(4) |
+                           BGE_PCIDMARWCTL_WR_WAT_SHIFT(3);
                } else {
                        /* 384 bytes for read and write. */
                        dma_rw_ctl |= BGE_PCIDMARWCTL_RD_WAT_SHIFT(3) |

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Reply via email to