Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-7]: src/sys/dev/ic Pull up following revision(s) (requested by jm...



details:   https://anonhg.NetBSD.org/src/rev/74623ac28eaf
branches:  netbsd-7
changeset: 798619:74623ac28eaf
user:      snj <snj%NetBSD.org@localhost>
date:      Tue Nov 25 07:58:07 2014 +0000

description:
Pull up following revision(s) (requested by jmcneill in ticket #259):
        sys/dev/ic/dwc_gmac.c: revision 1.27
Fix bus_dmamap_sync usage.

diffstat:

 sys/dev/ic/dwc_gmac.c |  14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diffs (63 lines):

diff -r 2c1bd9fe0778 -r 74623ac28eaf sys/dev/ic/dwc_gmac.c
--- a/sys/dev/ic/dwc_gmac.c     Tue Nov 25 07:55:25 2014 +0000
+++ b/sys/dev/ic/dwc_gmac.c     Tue Nov 25 07:58:07 2014 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: dwc_gmac.c,v 1.24.2.2 2014/11/09 19:06:57 snj Exp $ */
+/* $NetBSD: dwc_gmac.c,v 1.24.2.3 2014/11/25 07:58:07 snj Exp $ */
 
 /*-
  * Copyright (c) 2013, 2014 The NetBSD Foundation, Inc.
@@ -41,7 +41,7 @@
 
 #include <sys/cdefs.h>
 
-__KERNEL_RCSID(1, "$NetBSD: dwc_gmac.c,v 1.24.2.2 2014/11/09 19:06:57 snj Exp $");
+__KERNEL_RCSID(1, "$NetBSD: dwc_gmac.c,v 1.24.2.3 2014/11/25 07:58:07 snj Exp $");
 
 /* #define     DWC_GMAC_DEBUG  1 */
 
@@ -414,7 +414,7 @@
 
        bus_dmamap_sync(sc->sc_dmat, sc->sc_dma_ring_map, 0,
            AWGE_RX_RING_COUNT*sizeof(struct dwc_gmac_dev_dmadesc),
-           BUS_DMASYNC_PREREAD);
+           BUS_DMASYNC_PREWRITE|BUS_DMASYNC_PREREAD);
        bus_space_write_4(sc->sc_bst, sc->sc_bsh, AWIN_GMAC_DMA_RX_ADDR,
            ring->r_physaddr);
 
@@ -442,7 +442,7 @@
 
        bus_dmamap_sync(sc->sc_dmat, sc->sc_dma_ring_map, 0,
            AWGE_RX_RING_COUNT*sizeof(struct dwc_gmac_dev_dmadesc),
-           BUS_DMASYNC_PREWRITE);
+           BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE);
 
        ring->r_cur = ring->r_next = 0;
        /* reset DMA address to start of ring */
@@ -627,7 +627,7 @@
        bus_dmamap_sync(sc->sc_dmat, sc->sc_dma_ring_map,
            TX_DESC_OFFSET(0),
            AWGE_TX_RING_COUNT*sizeof(struct dwc_gmac_dev_dmadesc),
-           BUS_DMASYNC_PREWRITE);
+           BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE);
        bus_space_write_4(sc->sc_bst, sc->sc_bsh, AWIN_GMAC_DMA_TX_ADDR,
            sc->sc_txq.t_physaddr);
 
@@ -896,7 +896,7 @@
        data->td_active = map;
 
        bus_dmamap_sync(sc->sc_dmat, map, 0, map->dm_mapsize,
-           BUS_DMASYNC_PREWRITE);
+           BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE);
 
        return 0;
 }
@@ -1097,6 +1097,8 @@
                (*ifp->if_input)(ifp, m);
 
 skip:
+               bus_dmamap_sync(sc->sc_dmat, data->rd_map, 0,
+                   data->rd_map->dm_mapsize, BUS_DMASYNC_PREREAD);
                desc->ddesc_cntl = htole32(
                    __SHIFTIN(AWGE_MAX_PACKET,DDESC_CNTL_SIZE1MASK) |
                    DDESC_CNTL_RXCHAIN);



Home | Main Index | Thread Index | Old Index