diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-09-27 09:37:38 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-09-27 11:02:07 +0200 |
commit | a70edfc49a469645cac275b5f2b0d69ca8219aa8 (patch) | |
tree | 9648ac4ad2376af62c052bf9462e6ea8f13fe89b /freebsd/sys/dev/ffec | |
parent | ffec: Support up to three interrupt requests (diff) | |
download | rtems-libbsd-a70edfc49a469645cac275b5f2b0d69ca8219aa8.tar.bz2 |
ffec: Add wmb() to descriptor updates
Diffstat (limited to 'freebsd/sys/dev/ffec')
-rw-r--r-- | freebsd/sys/dev/ffec/if_ffec.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/freebsd/sys/dev/ffec/if_ffec.c b/freebsd/sys/dev/ffec/if_ffec.c index e0dff34d..11736630 100644 --- a/freebsd/sys/dev/ffec/if_ffec.c +++ b/freebsd/sys/dev/ffec/if_ffec.c @@ -593,6 +593,7 @@ ffec_setup_txdesc(struct ffec_softc *sc, int idx, bus_addr_t paddr, * significant bits. */ sc->txdesc_ring[idx].buf_paddr = (uint32_t)paddr; + wmb(); sc->txdesc_ring[idx].flags_len = flags | len; /* Must be set last! */ return (nidx); @@ -739,6 +740,7 @@ ffec_setup_rxdesc(struct ffec_softc *sc, int idx, bus_addr_t paddr) */ nidx = next_rxidx(sc, idx); sc->rxdesc_ring[idx].buf_paddr = (uint32_t)paddr; + wmb(); sc->rxdesc_ring[idx].flags_len = FEC_RXDESC_EMPTY | ((nidx == 0) ? FEC_RXDESC_WRAP : 0); |