From: Miguel Ojeda Sandonis - add "depends on x86" until some solution to d-cache aliasing is provided - use the new and simpler vm_insert_page() instead of nopage() related code Signed-off-by: Miguel Ojeda Sandonis Signed-off-by: Andrew Morton --- drivers/auxdisplay/Kconfig | 1 + drivers/auxdisplay/cfag12864bfb.c | 21 ++------------------- 2 files changed, 3 insertions(+), 19 deletions(-) diff -puN drivers/auxdisplay/Kconfig~drivers-add-lcd-support-update-8 drivers/auxdisplay/Kconfig --- a/drivers/auxdisplay/Kconfig~drivers-add-lcd-support-update-8 +++ a/drivers/auxdisplay/Kconfig @@ -64,6 +64,7 @@ config KS0108_DELAY config CFAG12864B tristate "CFAG12864B LCD" + depends on X86 depends on KS0108 default n ---help--- diff -puN drivers/auxdisplay/cfag12864bfb.c~drivers-add-lcd-support-update-8 drivers/auxdisplay/cfag12864bfb.c --- a/drivers/auxdisplay/cfag12864bfb.c~drivers-add-lcd-support-update-8 +++ a/drivers/auxdisplay/cfag12864bfb.c @@ -65,27 +65,10 @@ static struct fb_var_screeninfo cfag1286 .vmode = FB_VMODE_NONINTERLACED, }; -static struct page *cfag12864bfb_vma_nopage(struct vm_area_struct *vma, - unsigned long address, int *type) -{ - struct page *page = virt_to_page(cfag12864b_buffer); - get_page(page); - - if (type) - *type = VM_FAULT_MINOR; - - return page; -} - -static struct vm_operations_struct cfag12864bfb_vm_ops = { - .nopage = cfag12864bfb_vma_nopage, -}; - static int cfag12864bfb_mmap(struct fb_info *info, struct vm_area_struct *vma) { - vma->vm_ops = &cfag12864bfb_vm_ops; - vma->vm_flags |= VM_RESERVED; - return 0; + return vm_insert_page(vma, vma->vm_start, + virt_to_page(cfag12864b_buffer)); } static struct fb_ops cfag12864bfb_ops = { _