summaryrefslogtreecommitdiff
path: root/arch/m68k/lib/memcpy.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-10-25 16:25:48 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2011-10-25 16:25:48 +0200
commit7670c7010c7b367ca40c3aba02afb36149764a6e (patch)
tree9f778e3bc3cb4270a60652c3a9731a5287954965 /arch/m68k/lib/memcpy.c
parent0110bba5e7731524940f9e02ce3d4aae75087f68 (diff)
parentdbcbf5885aa5a1ce6cbea72acbee100c0482be26 (diff)
Merge branch 'for-linus' of git://github.com/gregungerer/m68knommu
* 'for-linus' of git://github.com/gregungerer/m68knommu: m68k: drop unused Kconfig symbols m68k: drop unused Kconfig symbols m68knommu: create common externs for _ram* vars m68knommu: remove extern declarations of memory_start/memory_end from mm/init m68knommu: use generic section names in mm/init code m68knommu: use generic section names in setup code m68k: merge the mmu and non-mmu traps.c files m68k: move hardware vector setting from traps.c to its own file m68k: merge mmu and non-mmu include/asm/entry.h files m68k: merge the mmu and non-mmu kernel/Makefiles m68k: merge mmu and non-mmu arch Makefiles m68k: reorganize Kconfig options to improve mmu/non-mmu selections m68knommu: fix problems with SPI/GPIO on ColdFire 520x m68k: fix memcpy to unmatched/unaligned source and dest on 68000
Diffstat (limited to 'arch/m68k/lib/memcpy.c')
-rw-r--r--arch/m68k/lib/memcpy.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/m68k/lib/memcpy.c b/arch/m68k/lib/memcpy.c
index 064889316974..10ca051d56b8 100644
--- a/arch/m68k/lib/memcpy.c
+++ b/arch/m68k/lib/memcpy.c
@@ -22,6 +22,15 @@ void *memcpy(void *to, const void *from, size_t n)
from = cfrom;
n--;
}
+#if defined(CONFIG_M68000)
+ if ((long)from & 1) {
+ char *cto = to;
+ const char *cfrom = from;
+ for (; n; n--)
+ *cto++ = *cfrom++;
+ return xto;
+ }
+#endif
if (n > 2 && (long)to & 2) {
short *sto = to;
const short *sfrom = from;