hc
2023-12-08 01573e231f18eb2d99162747186f59511f56b64d
kernel/arch/sparc/include/asm/highmem.h
....@@ -22,17 +22,15 @@
2222 #ifdef __KERNEL__
2323
2424 #include <linux/interrupt.h>
25
+#include <linux/pgtable.h>
2526 #include <asm/vaddrs.h>
26
-#include <asm/kmap_types.h>
27
-#include <asm/pgtable.h>
27
+#include <asm/pgtsrmmu.h>
2828
2929 /* declarations for highmem.c */
3030 extern unsigned long highstart_pfn, highend_pfn;
3131
32
-extern pgprot_t kmap_prot;
32
+#define kmap_prot __pgprot(SRMMU_ET_PTE | SRMMU_PRIV | SRMMU_CACHE)
3333 extern pte_t *pkmap_page_table;
34
-
35
-void kmap_init(void) __init;
3634
3735 /*
3836 * Right now we initialize only a single pte table. It can be extended
....@@ -50,30 +48,13 @@
5048
5149 #define PKMAP_END (PKMAP_ADDR(LAST_PKMAP))
5250
53
-void *kmap_high(struct page *page);
54
-void kunmap_high(struct page *page);
55
-
56
-static inline void *kmap(struct page *page)
57
-{
58
- BUG_ON(in_interrupt());
59
- if (!PageHighMem(page))
60
- return page_address(page);
61
- return kmap_high(page);
62
-}
63
-
64
-static inline void kunmap(struct page *page)
65
-{
66
- BUG_ON(in_interrupt());
67
- if (!PageHighMem(page))
68
- return;
69
- kunmap_high(page);
70
-}
71
-
72
-void *kmap_atomic(struct page *page);
73
-void __kunmap_atomic(void *kvaddr);
74
-
7551 #define flush_cache_kmaps() flush_cache_all()
7652
53
+/* FIXME: Use __flush_tlb_one(vaddr) instead of flush_cache_all() -- Anton */
54
+#define arch_kmap_local_post_map(vaddr, pteval) flush_cache_all()
55
+#define arch_kmap_local_post_unmap(vaddr) flush_cache_all()
56
+
57
+
7758 #endif /* __KERNEL__ */
7859
7960 #endif /* _ASM_HIGHMEM_H */