hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/arch/sparc/include/asm/highmem.h
....@@ -22,14 +22,15 @@
2222 #ifdef __KERNEL__
2323
2424 #include <linux/interrupt.h>
25
+#include <linux/pgtable.h>
2526 #include <asm/vaddrs.h>
2627 #include <asm/kmap_types.h>
27
-#include <asm/pgtable.h>
28
+#include <asm/pgtsrmmu.h>
2829
2930 /* declarations for highmem.c */
3031 extern unsigned long highstart_pfn, highend_pfn;
3132
32
-extern pgprot_t kmap_prot;
33
+#define kmap_prot __pgprot(SRMMU_ET_PTE | SRMMU_PRIV | SRMMU_CACHE)
3334 extern pte_t *pkmap_page_table;
3435
3536 void kmap_init(void) __init;
....@@ -49,28 +50,6 @@
4950 #define PKMAP_ADDR(nr) (PKMAP_BASE + ((nr) << PAGE_SHIFT))
5051
5152 #define PKMAP_END (PKMAP_ADDR(LAST_PKMAP))
52
-
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);
7453
7554 #define flush_cache_kmaps() flush_cache_all()
7655