blob: 4a2ff85f17ee81b45028dbe64d76dfbf25630f22 [file] [log] [blame]
Greentime Hu664eec42017-10-24 15:25:00 +08001// SPDX-License-Identifier: GPL-2.0
2// Copyright (C) 2005-2017 Andes Technology Corporation
3
4#include <linux/linkage.h>
5#include <asm/page.h>
6
7 .text
8ENTRY(copy_page)
9 pushm $r2, $r10
10 movi $r2, PAGE_SIZE >> 5
11.Lcopy_loop:
12 lmw.bim $r3, [$r1], $r10
13 smw.bim $r3, [$r0], $r10
14 subi45 $r2, #1
15 bnez38 $r2, .Lcopy_loop
16 popm $r2, $r10
17 ret
18ENDPROC(copy_page)
19
20ENTRY(clear_page)
21 pushm $r1, $r9
22 movi $r1, PAGE_SIZE >> 5
23 movi55 $r2, #0
24 movi55 $r3, #0
25 movi55 $r4, #0
26 movi55 $r5, #0
27 movi55 $r6, #0
28 movi55 $r7, #0
29 movi55 $r8, #0
30 movi55 $r9, #0
31.Lclear_loop:
32 smw.bim $r2, [$r0], $r9
33 subi45 $r1, #1
34 bnez38 $r1, .Lclear_loop
35 popm $r1, $r9
36 ret
37ENDPROC(clear_page)