hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/arch/arc/include/asm/highmem.h
....@@ -9,29 +9,17 @@
99 #ifdef CONFIG_HIGHMEM
1010
1111 #include <uapi/asm/page.h>
12
-#include <asm/kmap_size.h>
13
-
14
-#define FIXMAP_SIZE PGDIR_SIZE
15
-#define PKMAP_SIZE PGDIR_SIZE
12
+#include <asm/kmap_types.h>
1613
1714 /* start after vmalloc area */
1815 #define FIXMAP_BASE (PAGE_OFFSET - FIXMAP_SIZE - PKMAP_SIZE)
19
-
20
-#define FIX_KMAP_SLOTS (KM_MAX_IDX * NR_CPUS)
21
-#define FIX_KMAP_BEGIN (0UL)
22
-#define FIX_KMAP_END ((FIX_KMAP_BEGIN + FIX_KMAP_SLOTS) - 1)
23
-
24
-#define FIXADDR_TOP (FIXMAP_BASE + (FIX_KMAP_END << PAGE_SHIFT))
25
-
26
-/*
27
- * This should be converted to the asm-generic version, but of course this
28
- * is needlessly different from all other architectures. Sigh - tglx
29
- */
30
-#define __fix_to_virt(x) (FIXADDR_TOP - ((x) << PAGE_SHIFT))
31
-#define __virt_to_fix(x) (((FIXADDR_TOP - ((x) & PAGE_MASK))) >> PAGE_SHIFT)
16
+#define FIXMAP_SIZE PGDIR_SIZE /* only 1 PGD worth */
17
+#define KM_TYPE_NR ((FIXMAP_SIZE >> PAGE_SHIFT)/NR_CPUS)
18
+#define FIXMAP_ADDR(nr) (FIXMAP_BASE + ((nr) << PAGE_SHIFT))
3219
3320 /* start after fixmap area */
3421 #define PKMAP_BASE (FIXMAP_BASE + FIXMAP_SIZE)
22
+#define PKMAP_SIZE PGDIR_SIZE
3523 #define LAST_PKMAP (PKMAP_SIZE >> PAGE_SHIFT)
3624 #define LAST_PKMAP_MASK (LAST_PKMAP - 1)
3725 #define PKMAP_ADDR(nr) (PKMAP_BASE + ((nr) << PAGE_SHIFT))
....@@ -41,13 +29,11 @@
4129
4230 extern void kmap_init(void);
4331
44
-#define arch_kmap_local_post_unmap(vaddr) \
45
- local_flush_tlb_kernel_range(vaddr, vaddr + PAGE_SIZE)
46
-
4732 static inline void flush_cache_kmaps(void)
4833 {
4934 flush_cache_all();
5035 }
36
+
5137 #endif
5238
5339 #endif