svn commit: r217225 - head/sys/dev/bge
Pyun YongHyeon
yongari at FreeBSD.org
Mon Jan 10 17:37:49 UTC 2011
Author: yongari
Date: Mon Jan 10 17:37:49 2011
New Revision: 217225
URL: http://svn.freebsd.org/changeset/base/217225
Log:
Backout r216973 and r216970. r216973 didn't solve watchdog timeout
issue seen on PCIX BCM5704 controller. r216970 fixed the issue but
the DMA address space restriction was applied to all bge(4)
controllers such that it caused unnecessary performance degradation
for controllers that have no such issues.
Modified:
head/sys/dev/bge/if_bge.c
Modified: head/sys/dev/bge/if_bge.c
==============================================================================
--- head/sys/dev/bge/if_bge.c Mon Jan 10 16:10:25 2011 (r217224)
+++ head/sys/dev/bge/if_bge.c Mon Jan 10 17:37:49 2011 (r217225)
@@ -2475,18 +2475,8 @@ bge_dma_alloc(struct bge_softc *sc)
boundary = 0;
if ((sc->bge_flags & BGE_FLAG_4G_BNDRY_BUG) != 0)
boundary = BGE_DMA_BNDRY;
- /*
- * XXX
- * It seems bus_dma(9) still has issue on dealing with boundary
- * restriction for dynamic buffers so disable the boundary
- * restriction and limit DMA address space to 32bit. It's not
- * clear whether there is another hardware issue here.
- */
- lowaddr = BUS_SPACE_MAXADDR;
- if ((sc->bge_flags & BGE_FLAG_40BIT_BUG) != 0)
- lowaddr = BUS_SPACE_MAXADDR_32BIT;
error = bus_dma_tag_create(bus_get_dma_tag(sc->bge_dev),
- 1, 0, lowaddr, BUS_SPACE_MAXADDR, NULL,
+ 1, boundary, lowaddr, BUS_SPACE_MAXADDR, NULL,
NULL, BUS_SPACE_MAXSIZE_32BIT, 0, BUS_SPACE_MAXSIZE_32BIT,
0, NULL, NULL, &sc->bge_cdata.bge_buffer_tag);
if (error != 0) {
More information about the svn-src-all
mailing list