forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-09 b22da3d8526a935aa31e086e63f60ff3246cb61c
kernel/arch/powerpc/include/asm/highmem.h
....@@ -24,13 +24,10 @@
2424 #ifdef __KERNEL__
2525
2626 #include <linux/interrupt.h>
27
-#include <asm/kmap_types.h>
2827 #include <asm/cacheflush.h>
2928 #include <asm/page.h>
3029 #include <asm/fixmap.h>
3130
32
-extern pte_t *kmap_pte;
33
-extern pgprot_t kmap_prot;
3431 extern pte_t *pkmap_page_table;
3532
3633 /*
....@@ -59,35 +56,13 @@
5956 #define PKMAP_NR(virt) ((virt-PKMAP_BASE) >> PAGE_SHIFT)
6057 #define PKMAP_ADDR(nr) (PKMAP_BASE + ((nr) << PAGE_SHIFT))
6158
62
-extern void *kmap_high(struct page *page);
63
-extern void kunmap_high(struct page *page);
64
-extern void *kmap_atomic_prot(struct page *page, pgprot_t prot);
65
-extern void __kunmap_atomic(void *kvaddr);
66
-
67
-static inline void *kmap(struct page *page)
68
-{
69
- might_sleep();
70
- if (!PageHighMem(page))
71
- return page_address(page);
72
- return kmap_high(page);
73
-}
74
-
75
-static inline void kunmap(struct page *page)
76
-{
77
- BUG_ON(in_interrupt());
78
- if (!PageHighMem(page))
79
- return;
80
- kunmap_high(page);
81
-}
82
-
83
-static inline void *kmap_atomic(struct page *page)
84
-{
85
- return kmap_atomic_prot(page, kmap_prot);
86
-}
87
-
88
-
8959 #define flush_cache_kmaps() flush_cache_all()
9060
61
+#define arch_kmap_local_post_map(vaddr, pteval) \
62
+ local_flush_tlb_page(NULL, vaddr)
63
+#define arch_kmap_local_post_unmap(vaddr) \
64
+ local_flush_tlb_page(NULL, vaddr)
65
+
9166 #endif /* __KERNEL__ */
9267
9368 #endif /* _ASM_HIGHMEM_H */