Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * This file is subject to the terms and conditions of the GNU General Public
0003  * License.  See the file "COPYING" in the main directory of this archive
0004  * for more details.
0005  *
0006  * Micro-assembler generated clear_page/copy_page functions.
0007  *
0008  * Copyright (C) 2012  MIPS Technologies, Inc.
0009  * Copyright (C) 2012  Ralf Baechle <ralf@linux-mips.org>
0010  */
0011 #include <asm/asm.h>
0012 #include <asm/export.h>
0013 #include <asm/regdef.h>
0014 
0015 #ifdef CONFIG_SIBYTE_DMA_PAGEOPS
0016 #define cpu_clear_page_function_name    clear_page_cpu
0017 #define cpu_copy_page_function_name copy_page_cpu
0018 #else
0019 #define cpu_clear_page_function_name    clear_page
0020 #define cpu_copy_page_function_name copy_page
0021 #endif
0022 
0023 /*
0024  * Maximum sizes:
0025  *
0026  * R4000 128 bytes S-cache:     0x058 bytes
0027  * R4600 v1.7:              0x05c bytes
0028  * R4600 v2.0:              0x060 bytes
0029  * With prefetching, 16 word strides    0x120 bytes
0030  */
0031 EXPORT(__clear_page_start)
0032 LEAF(cpu_clear_page_function_name)
0033 EXPORT_SYMBOL(cpu_clear_page_function_name)
0034 1:  j   1b      /* Dummy, will be replaced. */
0035     .space 288
0036 END(cpu_clear_page_function_name)
0037 EXPORT(__clear_page_end)
0038 
0039 /*
0040  * Maximum sizes:
0041  *
0042  * R4000 128 bytes S-cache:     0x11c bytes
0043  * R4600 v1.7:              0x080 bytes
0044  * R4600 v2.0:              0x07c bytes
0045  * With prefetching, 16 word strides    0x540 bytes
0046  */
0047 EXPORT(__copy_page_start)
0048 LEAF(cpu_copy_page_function_name)
0049 EXPORT_SYMBOL(cpu_copy_page_function_name)
0050 1:  j   1b      /* Dummy, will be replaced. */
0051     .space 1344
0052 END(cpu_copy_page_function_name)
0053 EXPORT(__copy_page_end)