c6851201c0
The user of this invalidation are mmcsd_sdio currently. The mmcsd_sdio driver makes calls for dcache invalidation through the chip specific architecture function SDIO_DMARECVSETUP(). I changed the arch/arm/stm32f7 chips to use arch_invalidate_dcache_by_addr() instead of arch_invalidate_dcache(). This commit includes additional changes to mmcsd_sdio.c. I created SDIO_DMADELYDINVLDT() (DMA delayed invalidate) to invalidate store-into mode dcaches after the DMA transfer. I have been using SDIO_DMADELYDINVLDT() for several weeks now and it has fixed the problems that I previously reported regarding non-cache aligned buffer invalidation errors (for my store-through dcache). However, it does not permit use of unaligned DMA buffers for store-into mode dcaches. SDIO_DMADELYDINVLDT() is a NoOp unless the chip specific Kconfig file selects CONFIG_ARCH_HAVE_SDIO_DELAYED_INVLDT. I have modified all the stm32f7 chips to select it. |
||
---|---|---|
.. | ||
arpa | ||
cxx | ||
net | ||
netinet | ||
netpacket | ||
nuttx | ||
sys | ||
.gitignore | ||
aio.h | ||
assert.h | ||
crc8.h | ||
crc16.h | ||
crc32.h | ||
crc64.h | ||
ctype.h | ||
debug.h | ||
dirent.h | ||
dllfcn.h | ||
dsp.h | ||
elf32.h | ||
endian.h | ||
errno.h | ||
fcntl.h | ||
fixedmath.h | ||
hex2bin.h | ||
inttypes.h | ||
libgen.h | ||
limits.h | ||
locale.h | ||
lzf.h | ||
mqueue.h | ||
netdb.h | ||
nxflat.h | ||
poll.h | ||
pthread.h | ||
queue.h | ||
sched.h | ||
semaphore.h | ||
signal.h | ||
spawn.h | ||
stdbool.h | ||
stddef.h | ||
stdint.h | ||
stdio.h | ||
stdlib.h | ||
stdnoreturn.h | ||
string.h | ||
strings.h | ||
syscall.h | ||
syslog.h | ||
termios.h | ||
threads.h | ||
time.h | ||
unistd.h | ||
wchar.h | ||
wctype.h |