bgmac: implement unaligned addressing for DMA rings that support it
authorRafał Miłecki <zajec5@gmail.com>
Sun, 15 Sep 2013 21:13:18 +0000 (23:13 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 17 Sep 2013 01:30:59 +0000 (21:30 -0400)
commit9900303ec7698d82c8f7a018b134a7c1ec557499
tree8355a5903e2a1b829874c6f9daf1dbef892e2cc3
parent3647268dedfe95945be05c9dde2bdbda7cfc6e91
bgmac: implement unaligned addressing for DMA rings that support it

This is important patch for new devices that support unaligned
addressing. That devices suffer from the backward-compatibility bug in
DMA engine. In theory we should be able to use old mechanism, but in
practice DMA address seems to be randomly copied into status register
when hardware reaches end of a ring. This breaks reading slot number
from status register and we can't use DMA anymore.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bgmac.c
drivers/net/ethernet/broadcom/bgmac.h