GNU Linux-libre 5.19-rc6-gnu
[releases.git] / drivers / staging / media / atomisp / pci / atomisp_file.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Support for Medifield PNW Camera Imaging ISP subsystem.
4  *
5  * Copyright (c) 2010 Intel Corporation. All Rights Reserved.
6  *
7  * Copyright (c) 2010 Silicon Hive www.siliconhive.com.
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License version
11  * 2 as published by the Free Software Foundation.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  *
19  */
20
21 #ifndef __ATOMISP_FILE_H__
22 #define __ATOMISP_FILE_H__
23
24 #include <media/media-entity.h>
25 #include <media/v4l2-subdev.h>
26
27 struct atomisp_device;
28
29 struct atomisp_file_device {
30         struct v4l2_subdev sd;
31         struct atomisp_device *isp;
32         struct media_pad pads[1];
33
34         struct workqueue_struct *work_queue;
35         struct work_struct work;
36 };
37
38 void atomisp_file_input_cleanup(struct atomisp_device *isp);
39 int atomisp_file_input_init(struct atomisp_device *isp);
40 void atomisp_file_input_unregister_entities(
41     struct atomisp_file_device *file_dev);
42 int atomisp_file_input_register_entities(struct atomisp_file_device *file_dev,
43         struct v4l2_device *vdev);
44 #endif /* __ATOMISP_FILE_H__ */