mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-03 23:58:05 +00:00
fbdev/fb-puv3: use vm_iomap_memory()
Use vm_iomap_memory() instead of [io_]remap_pfn_range(). vm_iomap_memory() gives us much simpler API to map memory to userspace, and reduces possibilities for bugs. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
This commit is contained in:
parent
47f698a9f2
commit
7b3d1c8241
1 changed files with 1 additions and 13 deletions
|
@ -640,21 +640,9 @@ static int unifb_pan_display(struct fb_var_screeninfo *var,
|
||||||
int unifb_mmap(struct fb_info *info,
|
int unifb_mmap(struct fb_info *info,
|
||||||
struct vm_area_struct *vma)
|
struct vm_area_struct *vma)
|
||||||
{
|
{
|
||||||
unsigned long size = vma->vm_end - vma->vm_start;
|
|
||||||
unsigned long offset = vma->vm_pgoff << PAGE_SHIFT;
|
|
||||||
unsigned long pos = info->fix.smem_start + offset;
|
|
||||||
|
|
||||||
if (offset + size > info->fix.smem_len)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
|
vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
|
||||||
|
|
||||||
if (io_remap_pfn_range(vma, vma->vm_start, pos >> PAGE_SHIFT, size,
|
return vm_iomap_memory(vma, info->fix.smem_start, info->fix.smem_len);
|
||||||
vma->vm_page_prot))
|
|
||||||
return -EAGAIN;
|
|
||||||
|
|
||||||
/* VM_IO | VM_DONTEXPAND | VM_DONTDUMP are set by remap_pfn_range() */
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct fb_ops unifb_ops = {
|
static struct fb_ops unifb_ops = {
|
||||||
|
|
Loading…
Reference in a new issue