
Drivers (especially frameworks ported from Linux such as USB) expect dma_{un}map_single() APIs to take care of cache maintenance. But this is not the case in U-Boot and few drivers take care of flushing caches locally. Instead add flush/invalidate calls to DMA APIs in arch specific dma-mapping.h file so that per driver implementation of these APIs can be avoided.
travis-ci is green: https://travis-ci.org/r-vignesh/u-boot/builds/637784160
v2: Fix compilation failure on AM335x etc due to recent U-Boot changes Collect R-bys
Vignesh Raghavendra (4): asm: dma-mapping.h: Fix dma mapping functions mmc: tmio-common: Drop custom dma mapping functions mtd: denali: Drop custom dma mapping functions net: macb: Drop local cache flush
arch/arm/include/asm/dma-mapping.h | 23 ++++++++++++++++-- arch/nds32/include/asm/dma-mapping.h | 23 ++++++++++++++++-- arch/riscv/include/asm/dma-mapping.h | 23 ++++++++++++++++-- arch/x86/include/asm/dma-mapping.h | 23 ++++++++++++++++-- drivers/mmc/tmio-common.c | 25 +++----------------- drivers/mtd/nand/raw/denali.c | 35 +++------------------------- drivers/net/macb.c | 4 +--- 7 files changed, 91 insertions(+), 65 deletions(-)