aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2005-10-20 17:55:26 -0400
committerRalf Baechle <ralf@linux-mips.org>2005-10-29 14:32:50 -0400
commite5adb8770e12169a6595a3ad5682541441bd1052 (patch)
tree22aaae4e58f9d4054a474a5fa31d492e4b9e79a1 /arch/mips
parent7cf8053b8ee48a7f0e9d8ebc72c279fb2e168c25 (diff)
Hack to resolve longstanding prefetch issue
Prefetching may be fatal on some systems if we're prefetching beyond the end of memory on some systems. It's also a seriously bad idea on non dma-coherent systems. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips')
-rw-r--r--arch/mips/lib/memcpy.S15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/mips/lib/memcpy.S b/arch/mips/lib/memcpy.S
index a78865f76547..7f9aafa4d80e 100644
--- a/arch/mips/lib/memcpy.S
+++ b/arch/mips/lib/memcpy.S
@@ -13,6 +13,21 @@
13 * Mnemonic names for arguments to memcpy/__copy_user 13 * Mnemonic names for arguments to memcpy/__copy_user
14 */ 14 */
15#include <linux/config.h> 15#include <linux/config.h>
16
17/*
18 * Hack to resolve longstanding prefetch issue
19 *
20 * Prefetching may be fatal on some systems if we're prefetching beyond the
21 * end of memory on some systems. It's also a seriously bad idea on non
22 * dma-coherent systems.
23 */
24#if !defined(CONFIG_DMA_COHERENT) || !defined(CONFIG_DMA_IP27)
25#undef CONFIG_CPU_HAS_PREFETCH
26#endif
27#ifdef CONFIG_MIPS_MALTA
28#undef CONFIG_CPU_HAS_PREFETCH
29#endif
30
16#include <asm/asm.h> 31#include <asm/asm.h>
17#include <asm/asm-offsets.h> 32#include <asm/asm-offsets.h>
18#include <asm/regdef.h> 33#include <asm/regdef.h>