]> git.baikalelectronics.ru Git - kernel.git/commit
stmmac: fix dma api misuse
authorGiuseppe CAVALLARO <peppe.cavallaro@st.com>
Wed, 27 Aug 2014 09:27:00 +0000 (11:27 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 30 Aug 2014 02:54:36 +0000 (19:54 -0700)
commitb2b0603536b51a54ddf5dabc3fe6f2008aef91cf
treec29059b8d78ad83cd2decf42daa7be8d3a101497
parent76e23e3900d052254ba716e760e8253925ecf469
stmmac: fix dma api misuse

Enabling DMA_API_DEBUG, warnings are reported at runtime
because the device driver frees DMA memory with wrong functions
and it does not call dma_mapping_error after mapping dma memory.

The first problem is fixed by of introducing a flag that helps us
keeping track which mapping technique was used, so that we can use
the right API for unmap.
This approach was inspired by the e1000 driver, which uses a similar
technique.

Signed-off-by: Andre Draszik <andre.draszik@st.com>
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Reviewed-by: Denis Kirjanov <kda@linux-powerpc.org>
Cc: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/chain_mode.c
drivers/net/ethernet/stmicro/stmmac/common.h
drivers/net/ethernet/stmicro/stmmac/ring_mode.c
drivers/net/ethernet/stmicro/stmmac/stmmac.h
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c