diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-09-07 08:33:16 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-01-10 09:53:34 +0100 |
commit | 2360b084ff309183fbcb303fde7f5ea3e61f72e5 (patch) | |
tree | 7c3cc698a8148442fd267700e249d46f208af6c1 /freebsd/sys/dev/dwc/if_dwc.c | |
parent | if_dwc: Use explicit cache operations (diff) | |
download | rtems-libbsd-2360b084ff309183fbcb303fde7f5ea3e61f72e5.tar.bz2 |
if_dwc: Invalidate read buffer again
This may prevent problems in case a cache line prefetch added some lines
to the cache during a DMA transfer.
Diffstat (limited to 'freebsd/sys/dev/dwc/if_dwc.c')
-rw-r--r-- | freebsd/sys/dev/dwc/if_dwc.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/freebsd/sys/dev/dwc/if_dwc.c b/freebsd/sys/dev/dwc/if_dwc.c index cd1f217a..d62dc8d9 100644 --- a/freebsd/sys/dev/dwc/if_dwc.c +++ b/freebsd/sys/dev/dwc/if_dwc.c @@ -925,6 +925,9 @@ dwc_rxfinish_locked(struct dwc_softc *sc) /* Remove trailing FCS */ m_adj(m, -ETHER_CRC_LEN); +#ifdef __rtems__ + rtems_cache_invalidate_multiple_data_lines(m->m_data, m->m_len); +#endif /* __rtems__ */ DWC_UNLOCK(sc); (*ifp->if_input)(ifp, m); DWC_LOCK(sc); |