mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-25 06:00:43 +00:00
189a6956eb
Buffer coming from upper layers should be cacheline aligned/padded to perform safe cache operations. For now we don't do bounce buffering so getting unaligned buffer is an upper layer error. We can't check if the buffer is properly padded with current interface so just assume it is (consider changing with in the future). The following changes are done: 1. Remove useless length alignment check. We get actual transfer length not the size of the underlying buffer so it's perfectly valid for it to be unaligned. 2. Move flush_dcache_range() out of while loop or it will flush too much. 3. Don't try to fix buffer address before calling invalidate: if it's unaligned it's an error anyway so let cache subsystem cry about that. 4. Fix end buffer address to be cacheline aligned assuming upper layer reserved enough space. This is potentially dangerous operation so upper layers should be careful about that. Signed-off-by: Ilya Yanok <ilya.yanok@cogentembedded.com> |
||
---|---|---|
.. | ||
bios_emulator | ||
block | ||
dma | ||
fpga | ||
gpio | ||
hwmon | ||
i2c | ||
input | ||
misc | ||
mmc | ||
mtd | ||
net | ||
pci | ||
pcmcia | ||
power | ||
qe | ||
rtc | ||
serial | ||
spi | ||
tpm | ||
twserial | ||
usb | ||
video | ||
watchdog |