diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-08-14 20:57:57 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-08-14 20:57:57 -0400 |
commit | aae4d1428c03b03f9fe6204a83e35822fe9cc591 (patch) | |
tree | 292324229a846d0c7627e46c17b0adaa7ff24ad0 /arch/sh/mm/nommu.c | |
parent | dde5e3ffb770ef2854bbc32c51a365e932919e19 (diff) |
sh: consolidate nommu stubs in arch/sh/mm/nommu.c.
These were previous littered around tlb-nommu.c and pg-nommu.c, though at
this point there are more stubs than are strictly TLB or page op related,
so just consolidate them in a single nommu.c.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/mm/nommu.c')
-rw-r--r-- | arch/sh/mm/nommu.c | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/arch/sh/mm/nommu.c b/arch/sh/mm/nommu.c new file mode 100644 index 000000000000..51b54037216f --- /dev/null +++ b/arch/sh/mm/nommu.c | |||
@@ -0,0 +1,96 @@ | |||
1 | /* | ||
2 | * arch/sh/mm/nommu.c | ||
3 | * | ||
4 | * Various helper routines and stubs for MMUless SH. | ||
5 | * | ||
6 | * Copyright (C) 2002 - 2009 Paul Mundt | ||
7 | * | ||
8 | * Released under the terms of the GNU GPL v2.0. | ||
9 | */ | ||
10 | #include <linux/kernel.h> | ||
11 | #include <linux/init.h> | ||
12 | #include <linux/string.h> | ||
13 | #include <linux/mm.h> | ||
14 | #include <asm/pgtable.h> | ||
15 | #include <asm/tlbflush.h> | ||
16 | #include <asm/page.h> | ||
17 | #include <asm/uaccess.h> | ||
18 | |||
19 | /* | ||
20 | * Nothing too terribly exciting here .. | ||
21 | */ | ||
22 | void copy_page(void *to, void *from) | ||
23 | { | ||
24 | memcpy(to, from, PAGE_SIZE); | ||
25 | } | ||
26 | |||
27 | __kernel_size_t __copy_user(void *to, const void *from, __kernel_size_t n) | ||
28 | { | ||
29 | memcpy(to, from, n); | ||
30 | return 0; | ||
31 | } | ||
32 | |||
33 | __kernel_size_t __clear_user(void *to, __kernel_size_t n) | ||
34 | { | ||
35 | memset(to, 0, n); | ||
36 | return 0; | ||
37 | } | ||
38 | |||
39 | void local_flush_tlb_all(void) | ||
40 | { | ||
41 | BUG(); | ||
42 | } | ||
43 | |||
44 | void local_flush_tlb_mm(struct mm_struct *mm) | ||
45 | { | ||
46 | BUG(); | ||
47 | } | ||
48 | |||
49 | void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start, | ||
50 | unsigned long end) | ||
51 | { | ||
52 | BUG(); | ||
53 | } | ||
54 | |||
55 | void local_flush_tlb_page(struct vm_area_struct *vma, unsigned long page) | ||
56 | { | ||
57 | BUG(); | ||
58 | } | ||
59 | |||
60 | void local_flush_tlb_one(unsigned long asid, unsigned long page) | ||
61 | { | ||
62 | BUG(); | ||
63 | } | ||
64 | |||
65 | void local_flush_tlb_kernel_range(unsigned long start, unsigned long end) | ||
66 | { | ||
67 | BUG(); | ||
68 | } | ||
69 | |||
70 | void __update_tlb(struct vm_area_struct *vma, unsigned long address, pte_t pte) | ||
71 | { | ||
72 | } | ||
73 | |||
74 | void __init kmap_coherent_init(void) | ||
75 | { | ||
76 | } | ||
77 | |||
78 | void *kmap_coherent(struct page *page, unsigned long addr) | ||
79 | { | ||
80 | BUG(); | ||
81 | return NULL; | ||
82 | } | ||
83 | |||
84 | void kunmap_coherent(void) | ||
85 | { | ||
86 | BUG(); | ||
87 | } | ||
88 | |||
89 | void __init page_table_range_init(unsigned long start, unsigned long end, | ||
90 | pgd_t *pgd_base) | ||
91 | { | ||
92 | } | ||
93 | |||
94 | void __set_fixmap(enum fixed_addresses idx, unsigned long phys, pgprot_t prot) | ||
95 | { | ||
96 | } | ||