diff options
Diffstat (limited to 'arch/blackfin')
-rw-r--r-- | arch/blackfin/include/asm/pgtable.h | 6 | ||||
-rw-r--r-- | arch/blackfin/kernel/sys_bfin.c | 11 |
2 files changed, 17 insertions, 0 deletions
diff --git a/arch/blackfin/include/asm/pgtable.h b/arch/blackfin/include/asm/pgtable.h index b54cbddf547f..821c699c2238 100644 --- a/arch/blackfin/include/asm/pgtable.h +++ b/arch/blackfin/include/asm/pgtable.h | |||
@@ -98,6 +98,12 @@ extern unsigned int kobjsize(const void *objp); | |||
98 | #define VMALLOC_START 0 | 98 | #define VMALLOC_START 0 |
99 | #define VMALLOC_END 0xffffffff | 99 | #define VMALLOC_END 0xffffffff |
100 | 100 | ||
101 | /* provide a special get_unmapped_area for framebuffer mmaps of nommu */ | ||
102 | extern unsigned long get_fb_unmapped_area(struct file *filp, unsigned long, | ||
103 | unsigned long, unsigned long, | ||
104 | unsigned long); | ||
105 | #define HAVE_ARCH_FB_UNMAPPED_AREA | ||
106 | |||
101 | #include <asm-generic/pgtable.h> | 107 | #include <asm-generic/pgtable.h> |
102 | 108 | ||
103 | #endif /* _BLACKFIN_PGTABLE_H */ | 109 | #endif /* _BLACKFIN_PGTABLE_H */ |
diff --git a/arch/blackfin/kernel/sys_bfin.c b/arch/blackfin/kernel/sys_bfin.c index 8b294a1c8069..afcef129d4e8 100644 --- a/arch/blackfin/kernel/sys_bfin.c +++ b/arch/blackfin/kernel/sys_bfin.c | |||
@@ -69,3 +69,14 @@ asmlinkage void *sys_dma_memcpy(void *dest, const void *src, size_t len) | |||
69 | { | 69 | { |
70 | return safe_dma_memcpy(dest, src, len); | 70 | return safe_dma_memcpy(dest, src, len); |
71 | } | 71 | } |
72 | |||
73 | #if defined(CONFIG_FB) || defined(CONFIG_FB_MODULE) | ||
74 | #include <linux/fb.h> | ||
75 | unsigned long get_fb_unmapped_area(struct file *filp, unsigned long orig_addr, | ||
76 | unsigned long len, unsigned long pgoff, unsigned long flags) | ||
77 | { | ||
78 | struct fb_info *info = filp->private_data; | ||
79 | return (unsigned long)info->screen_base; | ||
80 | } | ||
81 | EXPORT_SYMBOL(get_fb_unmapped_area); | ||
82 | #endif | ||