m68k: Unroll raw_outsb() loop
authorFinn Thain <fthain@telegraphics.com.au>
Sat, 13 Oct 2018 00:47:55 +0000 (11:47 +1100)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 3 Dec 2018 12:05:42 +0000 (13:05 +0100)
commitb6cf523c16e148e1ece5fc4ff4657d79323a4635
treea0268d6a6f4dd3651ef3f505d0acf22b5c1fe8b6
parent651022382c7f8da46cb4872a545ee1da6d097d2a
m68k: Unroll raw_outsb() loop

Unroll the raw_outsb() loop using the optimized assembler code from
raw_outsw(). That code is copied and pasted, with movew changed to moveb.

This improves the performance of sequential write transfers using mac_esp
in PIO mode by 5% or 10%. (The DMA controller on the 840av/660av models is
still unsupported so PIO transfers are used.)

Tested-by: Stan Johnson <userm57@yahoo.com>
Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/include/asm/raw_io.h