diff options
author | Albrecht Dreß <albrecht.dress@arcor.de> | 2009-11-04 16:43:12 -0700 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2009-11-04 16:43:12 -0700 |
commit | a22c65f81ae28656b80d2acc687cf6318eb15bba (patch) | |
tree | 18090f675ad36a6dc6a91f88d34ace88784fa1fa /arch/powerpc | |
parent | 5cc17d7e01abd77eda1267a75748cfc84c92a523 (diff) | |
download | op-kernel-dev-a22c65f81ae28656b80d2acc687cf6318eb15bba.zip op-kernel-dev-a22c65f81ae28656b80d2acc687cf6318eb15bba.tar.gz |
powerpc: tiny memcpy_(to|from)io optimisation
This trivial patch changes memcpy_(to|from)io as to transfer as many
32-bit words as possible in 32-bit accesses (in the current solution,
the last 32-bit word was transferred as 4 byte accesses).
Signed-off-by: Albrecht Dreß <albrecht.dress@arcor.de>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/io.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/io.c b/arch/powerpc/kernel/io.c index 1882bf4..8dc7547 100644 --- a/arch/powerpc/kernel/io.c +++ b/arch/powerpc/kernel/io.c @@ -161,7 +161,7 @@ void _memcpy_fromio(void *dest, const volatile void __iomem *src, dest++; n--; } - while(n > 4) { + while(n >= 4) { *((u32 *)dest) = *((volatile u32 *)vsrc); eieio(); vsrc += 4; @@ -190,7 +190,7 @@ void _memcpy_toio(volatile void __iomem *dest, const void *src, unsigned long n) vdest++; n--; } - while(n > 4) { + while(n >= 4) { *((volatile u32 *)vdest) = *((volatile u32 *)src); src += 4; vdest += 4; |