summaryrefslogtreecommitdiffstats
path: root/arch/tile/kernel/early_printk.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2015-01-28 17:55:31 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2015-02-06 21:16:40 +0100
commit1d88967900b87f94435581dad4ae319686c6ce10 (patch)
tree7fc8d85ca097dfdb6a49276061ffb1466723ef0c /arch/tile/kernel/early_printk.c
parentARM: 8296/1: cache-l2x0: clean up aurora cache handling (diff)
downloadlinux-1d88967900b87f94435581dad4ae319686c6ce10.tar.xz
linux-1d88967900b87f94435581dad4ae319686c6ce10.zip
ARM: 8297/1: cache-l2x0: optimize aurora range operations
The aurora_inv_range(), aurora_clean_range() and aurora_flush_range() functions are highly redundant, both in source and in object code, and they are harder to understand than necessary. By moving the range loop into the aurora_pa_range() function, they become trivial wrappers, and the object code start looking like what one would expect for an optimal implementation. Further optimization may be possible by using the per-CPU "virtual" registers to avoid the spinlocks in most cases. (on Armada 370 RD and Armada XP GP, boot tested, plus a little bit of DMA traffic by reading data from a SD card) Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/tile/kernel/early_printk.c')
0 files changed, 0 insertions, 0 deletions