net: sh_eth: Workaround cache issues
U-Boot writes to RX packets when constructing replies. This can cause stale cached data to be written to RX buffer while we're receiving a packet. This causes RX packet corruption because we invalidate the cache right before processing the packet. Invalidate packet buffer cache when preparing RX descriptor as well. This seems to fix RX packet drops with high RX traffic. While at it flush the descriptors right before enabling RX/TX in sh_eth_tx_desc_init/sh_eth_rx_desc_init callbacks when they are ready instead of flushing after allocation. Signed-off-by:Valentine Barshak <valentine.barshak@cogentembedded.com> Reviewed-by:
Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by:
Ramon Fried <rfried.dev@gmail.com>
Loading
Please register or sign in to comment