diff options
author | Atsushi Nemoto <anemo@mba.ocn.ne.jp> | 2007-03-14 01:02:20 +0900 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-04-28 11:00:58 -0400 |
commit | 793bc0afbdccd97e66b2bdf43c2ce5653140ee5e (patch) | |
tree | 5383129defd96eeab108cfcc4178d19cd0ec4284 | |
parent | 1e56a4b4029dd1cabf73f28970b5c11bcbae6bb7 (diff) |
tc35815: Fix an usage of streaming DMA API.
The tc35815 driver lacks a call to pci_dma_sync_single_for_device() on
receiving. Recent fix of MIPS dma_sync_single_for_cpu() reveal this
bug.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r-- | drivers/net/tc35815.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/tc35815.c b/drivers/net/tc35815.c index 1a1b74c956b..b269b187b55 100644 --- a/drivers/net/tc35815.c +++ b/drivers/net/tc35815.c @@ -58,12 +58,13 @@ * 1.34 Fix netpoll locking. "BH rule" for NAPI is not enough with * netpoll, hard_start_xmit might be called from irq context. * PM support. + * 1.35 Fix an usage of streaming DMA API. */ #ifdef TC35815_NAPI -#define DRV_VERSION "1.34-NAPI" +#define DRV_VERSION "1.35-NAPI" #else -#define DRV_VERSION "1.34" +#define DRV_VERSION "1.35" #endif static const char *version = "tc35815.c:v" DRV_VERSION "\n"; #define MODNAME "tc35815" @@ -1550,6 +1551,11 @@ tc35815_rx(struct net_device *dev) PCI_DMA_FROMDEVICE); #endif memcpy(data + offset, rxbuf, len); +#ifdef TC35815_DMA_SYNC_ONDEMAND + pci_dma_sync_single_for_device(lp->pci_dev, + dma, len, + PCI_DMA_FROMDEVICE); +#endif offset += len; cur_bd++; } |