linux/drivers/net/ethernet/renesas
Sergei Shtylyov 1debdc8f9e sh_eth: unmap DMA buffers when freeing rings
The DMA API debugging (when enabled) causes:

WARNING: CPU: 0 PID: 1445 at lib/dma-debug.c:519 add_dma_entry+0xe0/0x12c
DMA-API: exceeded 7 overlapping mappings of cacheline 0x01b2974d

to be  printed after repeated initialization of the Ether device, e.g.
suspend/resume or 'ifconfig' up/down. This is because DMA buffers mapped
using dma_map_single() in sh_eth_ring_format() and sh_eth_start_xmit() are
never unmapped. Resolve this problem by unmapping the buffers when freeing
the descriptor  rings;  in order  to do it right, we'd have to add an extra
parameter to sh_eth_txfree() (we rename this function to sh_eth_tx_free(),
while at it).

Based on the commit a47b70ea86 ("ravb: unmap descriptors when freeing
rings").

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-04-18 22:04:32 -04:00
..
Kconfig ptp_clock: Allow for it to be optional 2016-11-16 09:26:34 +01:00
Makefile Renesas Ethernet AVB PTP clock driver 2015-06-11 00:24:12 -07:00
ravb_main.c ravb: Support 1Gbps on R-Car H3 ES1.1+ and R-Car M3-W 2017-01-29 18:35:43 -05:00
ravb_ptp.c ravb: make ravb_ptp_interrupt() *void* 2016-04-14 00:48:33 -04:00
ravb.h ravb: Add tx and rx clock internal delays mode of APSR 2017-01-29 18:35:43 -05:00
sh_eth.c sh_eth: unmap DMA buffers when freeing rings 2017-04-18 22:04:32 -04:00
sh_eth.h sh_eth: add missing EESIPR bits 2017-01-30 22:05:43 -05:00