aboutsummaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-04-14 12:08:01 +0200
committerDavid S. Miller <davem@davemloft.net>2015-04-14 14:57:11 -0400
commit4668ae1fbcab89af5ffbb161d4c70b25ce4c50f4 (patch)
tree10bdada0183fa33d78be95ab81b4d7cba5839710 /block
parentbgmac: simplify dma init/cleanup (diff)
downloadlinux-dev-4668ae1fbcab89af5ffbb161d4c70b25ce4c50f4.tar.xz
linux-dev-4668ae1fbcab89af5ffbb161d4c70b25ce4c50f4.zip
bgmac: fix DMA rx corruption
The driver needs to inform the hardware about the first invalid (not yet filled) rx slot, by writing its DMA descriptor pointer offset to the BGMAC_DMA_RX_INDEX register. This register was set to a value exceeding the rx ring size, effectively allowing the hardware constant access to the full ring, regardless of which slots are initialized. To fix this issue, always mark the last filled rx slot as invalid. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions