diff options
author | Emmanuel Vadot <manu@FreeBSD.org> | 2020-11-20 11:30:44 +0000 |
---|---|---|
committer | Emmanuel Vadot <manu@FreeBSD.org> | 2020-11-20 11:30:44 +0000 |
commit | 354cb625eec82b6f857497c2053a8f7cdcc87bbd (patch) | |
tree | ddbb183d5e43b3cb5e087786c8052a52e3997988 | |
parent | 3bbd11ee511a5256fe3bb525980207b75e41bab9 (diff) |
Notes
-rw-r--r-- | sys/arm/allwinner/if_awg.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/sys/arm/allwinner/if_awg.c b/sys/arm/allwinner/if_awg.c index 1d713a8ed50a..f130cedaa1de 100644 --- a/sys/arm/allwinner/if_awg.c +++ b/sys/arm/allwinner/if_awg.c @@ -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); } } |