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) {
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to