1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * V4L2 Image Converter Subdev for Freescale i.MX5/6 SOC 4 * 5 * Copyright (c) 2016 Mentor Graphics Inc. 6 */ 7 #ifndef _IMX_IC_H 8 #define _IMX_IC_H 9 10 #include <media/v4l2-subdev.h> 11 12 struct imx_ic_priv { 13 struct device *ipu_dev; 14 struct ipu_soc *ipu; 15 struct v4l2_subdev sd; 16 int task_id; 17 void *task_priv; 18 }; 19 20 struct imx_ic_ops { 21 const struct v4l2_subdev_ops *subdev_ops; 22 const struct v4l2_subdev_internal_ops *internal_ops; 23 const struct media_entity_operations *entity_ops; 24 25 int (*init)(struct imx_ic_priv *ic_priv); 26 void (*remove)(struct imx_ic_priv *ic_priv); 27 }; 28 29 extern struct imx_ic_ops imx_ic_prp_ops; 30 extern struct imx_ic_ops imx_ic_prpencvf_ops; 31 32 #endif 33