1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
2 | /* |
3 | * s3c24xx/s3c64xx SoC series Camera Interface (CAMIF) driver |
4 | * |
5 | * Copyright (C) 2012 Sylwester Nawrocki <sylvester.nawrocki@gmail.com> |
6 | */ |
7 | |
8 | #ifndef MEDIA_S3C_CAMIF_ |
9 | #define MEDIA_S3C_CAMIF_ |
10 | |
11 | #include <linux/i2c.h> |
12 | #include <media/v4l2-mediabus.h> |
13 | |
14 | /** |
15 | * struct s3c_camif_sensor_info - an image sensor description |
16 | * @i2c_board_info: pointer to an I2C sensor subdevice board info |
17 | * @clock_frequency: frequency of the clock the host provides to a sensor |
18 | * @mbus_type: media bus type |
19 | * @i2c_bus_num: i2c control bus id the sensor is attached to |
20 | * @flags: the parallel bus flags defining signals polarity (V4L2_MBUS_*) |
21 | * @use_field: 1 if parallel bus FIELD signal is used (only s3c64xx) |
22 | */ |
23 | struct s3c_camif_sensor_info { |
24 | struct i2c_board_info i2c_board_info; |
25 | unsigned long clock_frequency; |
26 | enum v4l2_mbus_type mbus_type; |
27 | u16 i2c_bus_num; |
28 | u16 flags; |
29 | u8 use_field; |
30 | }; |
31 | |
32 | struct s3c_camif_plat_data { |
33 | struct s3c_camif_sensor_info sensor; |
34 | int (*gpio_get)(void); |
35 | int (*gpio_put)(void); |
36 | }; |
37 | |
38 | #endif /* MEDIA_S3C_CAMIF_ */ |
39 | |