forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/arch/microblaze/mm/highmem.c
....@@ -32,17 +32,11 @@
3232 */
3333 #include <asm/tlbflush.h>
3434
35
-void *kmap_atomic_prot(struct page *page, pgprot_t prot)
35
+void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
3636 {
3737
3838 unsigned long vaddr;
3939 int idx, type;
40
-
41
- preempt_disable();
42
- pagefault_disable();
43
- if (!PageHighMem(page))
44
- return page_address(page);
45
-
4640
4741 type = kmap_atomic_idx_push();
4842 idx = type + KM_TYPE_NR*smp_processor_id();
....@@ -55,19 +49,16 @@
5549
5650 return (void *) vaddr;
5751 }
58
-EXPORT_SYMBOL(kmap_atomic_prot);
52
+EXPORT_SYMBOL(kmap_atomic_high_prot);
5953
60
-void __kunmap_atomic(void *kvaddr)
54
+void kunmap_atomic_high(void *kvaddr)
6155 {
6256 unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
6357 int type;
6458 unsigned int idx;
6559
66
- if (vaddr < __fix_to_virt(FIX_KMAP_END)) {
67
- pagefault_enable();
68
- preempt_enable();
60
+ if (vaddr < __fix_to_virt(FIX_KMAP_END))
6961 return;
70
- }
7162
7263 type = kmap_atomic_idx();
7364
....@@ -83,7 +74,5 @@
8374 local_flush_tlb_page(NULL, vaddr);
8475
8576 kmap_atomic_idx_pop();
86
- pagefault_enable();
87
- preempt_enable();
8877 }
89
-EXPORT_SYMBOL(__kunmap_atomic);
78
+EXPORT_SYMBOL(kunmap_atomic_high);