static int g2d_mmap(struct file *file, struct vm_area_struct *vma) { struct g2d_ctx *ctx = fh2ctx(file->private_data); struct g2d_dev *dev = ctx->dev; int ret; if (mutex_lock_interruptible(&dev->mutex)) return -ERESTARTSYS; ret = v4l2_m2m_mmap(file, ctx->m2m_ctx, vma); mutex_unlock(&dev->mutex); return ret; }
static int s5p_jpeg_mmap(struct file *file, struct vm_area_struct *vma) { struct s5p_jpeg *jpeg = video_drvdata(file); struct s5p_jpeg_ctx *ctx = fh_to_ctx(file->private_data); int ret; if (mutex_lock_interruptible(&jpeg->lock)) return -ERESTARTSYS; ret = v4l2_m2m_mmap(file, ctx->m2m_ctx, vma); mutex_unlock(&jpeg->lock); return ret; }
static int gsc_m2m_mmap(struct file *file, struct vm_area_struct *vma) { struct gsc_ctx *ctx = fh_to_ctx(file->private_data); struct gsc_dev *gsc = ctx->gsc_dev; int ret; if (mutex_lock_interruptible(&gsc->lock)) return -ERESTARTSYS; ret = v4l2_m2m_mmap(file, ctx->m2m_ctx, vma); mutex_unlock(&gsc->lock); return ret; }
int v4l2_m2m_fop_mmap(struct file *file, struct vm_area_struct *vma) { struct v4l2_fh *fh = file->private_data; struct v4l2_m2m_ctx *m2m_ctx = fh->m2m_ctx; int ret; if (m2m_ctx->q_lock && mutex_lock_interruptible(m2m_ctx->q_lock)) return -ERESTARTSYS; ret = v4l2_m2m_mmap(file, m2m_ctx, vma); if (m2m_ctx->q_lock) mutex_unlock(m2m_ctx->q_lock); return ret; }
static int gsc_m2m_mmap(struct file *file, struct vm_area_struct *vma) { struct gsc_ctx *ctx = fh_to_ctx(file->private_data); return v4l2_m2m_mmap(file, ctx->m2m_ctx, vma); }
int v4l2_m2m_fop_mmap(struct file *file, struct vm_area_struct *vma) { struct v4l2_fh *fh = file->private_data; return v4l2_m2m_mmap(file, fh->m2m_ctx, vma); }
static int rot_mmap(struct file *file, struct vm_area_struct *vma) { struct rot_ctx *ctx = file->private_data; return v4l2_m2m_mmap(file, ctx->m2m_ctx, vma); }