svn commit: r367886 - head/sys/arm/allwinner

Emmanuel Vadot manu at FreeBSD.org
Fri Nov 20 11:30:45 UTC 2020


Author: manu
Date: Fri Nov 20 11:30:44 2020
New Revision: 367886
URL: https://svnweb.freebsd.org/changeset/base/367886

Log:
  if_awg: Add a awg_dma_start_tx function that trigger dma engine
  
  No functional changes intended

Modified:
  head/sys/arm/allwinner/if_awg.c

Modified: head/sys/arm/allwinner/if_awg.c
==============================================================================
--- head/sys/arm/allwinner/if_awg.c	Fri Nov 20 11:30:23 2020	(r367885)
+++ head/sys/arm/allwinner/if_awg.c	Fri Nov 20 11:30:44 2020	(r367886)
@@ -941,6 +941,18 @@ awg_setup_dma(device_t dev)
 	return (0);
 }
 
+static void
+awg_dma_start_tx(struct awg_softc *sc)
+{
+	uint32_t val;
+
+	AWG_ASSERT_LOCKED(sc);
+
+	/* Start and run TX DMA */
+	val = RD4(sc, EMAC_TX_CTL_1);
+	WR4(sc, EMAC_TX_CTL_1, val | TX_DMA_START);
+}
+
 /*
  * if_ functions
  */
@@ -949,7 +961,6 @@ static void
 awg_start_locked(struct awg_softc *sc)
 {
 	struct mbuf *m;
-	uint32_t val;
 	if_t ifp;
 	int cnt, err;
 
@@ -984,9 +995,7 @@ awg_start_locked(struct awg_softc *sc)
 		bus_dmamap_sync(sc->tx.desc_tag, sc->tx.desc_map,
 		    BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE);
 
-		/* Start and run TX DMA */
-		val = RD4(sc, EMAC_TX_CTL_1);
-		WR4(sc, EMAC_TX_CTL_1, val | TX_DMA_START);
+		awg_dma_start_tx(sc);
 	}
 }
 


More information about the svn-src-head mailing list