summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSammy He <r62914@freescale.com>2011-11-02 20:08:42 +0800
committerAndy Voltz <andy.voltz@timesys.com>2012-03-09 11:26:45 -0500
commit4c9975d019081747c7d3856b1cf123114d079029 (patch)
tree8a6121a50396784139c4172ea6505e03dd164fb4
parent45890875c90e9a75ee6c835ed1aeb06a55503a3f (diff)
ENGR00161215-2 vpu: Add ioctls for querying and setting bitwork memory
Add VPU_IOC_QUERY_BITWORK_MEM and VPU_IOC_SET_BITWORK_MEM ioctls implementation for registerring bitwork memory allocated from user space to vpu driver. Signed-off-by: Sammy He <r62914@freescale.com> (cherry picked from commit 98d71e85dbd05df9c866d153a4ead9526a26422e)
-rw-r--r--drivers/mxc/vpu/mxc_vpu.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/mxc/vpu/mxc_vpu.c b/drivers/mxc/vpu/mxc_vpu.c
index 41bd188ad109..00f164a2af47 100644
--- a/drivers/mxc/vpu/mxc_vpu.c
+++ b/drivers/mxc/vpu/mxc_vpu.c
@@ -446,6 +446,26 @@ static int vpu_ioctl(struct inode *inode, struct file *filp, u_int cmd,
}
break;
}
+ /*
+ * The following two ioctl is used when user allocates working buffer
+ * and register it to vpu driver.
+ */
+ case VPU_IOC_QUERY_BITWORK_MEM:
+ {
+ if (copy_to_user((void __user *)arg,
+ &bitwork_mem,
+ sizeof(struct vpu_mem_desc)))
+ ret = -EFAULT;
+ break;
+ }
+ case VPU_IOC_SET_BITWORK_MEM:
+ {
+ if (copy_from_user(&bitwork_mem,
+ (struct vpu_mem_desc *)arg,
+ sizeof(struct vpu_mem_desc)))
+ ret = -EFAULT;
+ break;
+ }
case VPU_IOC_SYS_SW_RESET:
{
if (vpu_plat->reset)