Commit | Line | Data |
---|---|---|
caab277b | 1 | // SPDX-License-Identifier: GPL-2.0-only |
1d18c47c CM |
2 | /* |
3 | * Based on arch/arm/mm/copypage.c | |
4 | * | |
5 | * Copyright (C) 2002 Deep Blue Solutions Ltd, All Rights Reserved. | |
6 | * Copyright (C) 2012 ARM Ltd. | |
1d18c47c CM |
7 | */ |
8 | ||
9 | #include <linux/mm.h> | |
10 | ||
11 | #include <asm/page.h> | |
12 | #include <asm/cacheflush.h> | |
13 | ||
14 | void __cpu_copy_user_page(void *kto, const void *kfrom, unsigned long vaddr) | |
15 | { | |
e6b1185f | 16 | struct page *page = virt_to_page(kto); |
1d18c47c | 17 | copy_page(kto, kfrom); |
e6b1185f | 18 | flush_dcache_page(page); |
1d18c47c | 19 | } |
bec7cedc | 20 | EXPORT_SYMBOL_GPL(__cpu_copy_user_page); |
1d18c47c CM |
21 | |
22 | void __cpu_clear_user_page(void *kaddr, unsigned long vaddr) | |
23 | { | |
24 | clear_page(kaddr); | |
25 | } | |
bec7cedc | 26 | EXPORT_SYMBOL_GPL(__cpu_clear_user_page); |