1 /* 2 * V4L2 Image Converter Subdev for Freescale i.MX5/6 SOC 3 * 4 * Copyright (c) 2016 Mentor Graphics Inc. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 */ 11 #ifndef _IMX_IC_H 12 #define _IMX_IC_H 13 14 #include <media/v4l2-subdev.h> 15 16 struct imx_ic_priv { 17 struct device *dev; 18 struct v4l2_subdev sd; 19 int ipu_id; 20 int task_id; 21 void *prp_priv; 22 void *task_priv; 23 }; 24 25 struct imx_ic_ops { 26 const struct v4l2_subdev_ops *subdev_ops; 27 const struct v4l2_subdev_internal_ops *internal_ops; 28 const struct media_entity_operations *entity_ops; 29 30 int (*init)(struct imx_ic_priv *ic_priv); 31 void (*remove)(struct imx_ic_priv *ic_priv); 32 }; 33 34 extern struct imx_ic_ops imx_ic_prp_ops; 35 extern struct imx_ic_ops imx_ic_prpencvf_ops; 36 extern struct imx_ic_ops imx_ic_pp_ops; 37 38 #endif 39