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 | |