Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/mips/mm/page-funcs.S
26424 views
1
/*
2
* This file is subject to the terms and conditions of the GNU General Public
3
* License. See the file "COPYING" in the main directory of this archive
4
* for more details.
5
*
6
* Micro-assembler generated clear_page/copy_page functions.
7
*
8
* Copyright (C) 2012 MIPS Technologies, Inc.
9
* Copyright (C) 2012 Ralf Baechle <[email protected]>
10
*/
11
#include <linux/export.h>
12
#include <asm/asm.h>
13
#include <asm/regdef.h>
14
15
#ifdef CONFIG_SIBYTE_DMA_PAGEOPS
16
#define cpu_clear_page_function_name clear_page_cpu
17
#define cpu_copy_page_function_name copy_page_cpu
18
#else
19
#define cpu_clear_page_function_name clear_page
20
#define cpu_copy_page_function_name copy_page
21
#endif
22
23
/*
24
* Maximum sizes:
25
*
26
* R4000 128 bytes S-cache: 0x058 bytes
27
* R4600 v1.7: 0x05c bytes
28
* R4600 v2.0: 0x060 bytes
29
* With prefetching, 16 word strides 0x120 bytes
30
*/
31
EXPORT(__clear_page_start)
32
LEAF(cpu_clear_page_function_name)
33
EXPORT_SYMBOL(cpu_clear_page_function_name)
34
1: j 1b /* Dummy, will be replaced. */
35
.space 288
36
END(cpu_clear_page_function_name)
37
EXPORT(__clear_page_end)
38
39
/*
40
* Maximum sizes:
41
*
42
* R4000 128 bytes S-cache: 0x11c bytes
43
* R4600 v1.7: 0x080 bytes
44
* R4600 v2.0: 0x07c bytes
45
* With prefetching, 16 word strides 0x540 bytes
46
*/
47
EXPORT(__copy_page_start)
48
LEAF(cpu_copy_page_function_name)
49
EXPORT_SYMBOL(cpu_copy_page_function_name)
50
1: j 1b /* Dummy, will be replaced. */
51
.space 1344
52
END(cpu_copy_page_function_name)
53
EXPORT(__copy_page_end)
54
55