Commit | Line | Data |
---|---|---|
babde1c2 SN |
1 | /* |
2 | * s3c24xx/s3c64xx SoC series Camera Interface (CAMIF) driver | |
3 | * | |
4 | * Copyright (C) 2012 Sylwester Nawrocki <sylvester.nawrocki@gmail.com> | |
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 version 2 as | |
8 | * published by the Free Software Foundation. | |
9 | */ | |
10 | ||
11 | #ifndef MEDIA_S3C_CAMIF_ | |
12 | #define MEDIA_S3C_CAMIF_ | |
13 | ||
14 | #include <linux/i2c.h> | |
15 | #include <media/v4l2-mediabus.h> | |
16 | ||
17 | /** | |
18 | * struct s3c_camif_sensor_info - an image sensor description | |
19 | * @i2c_board_info: pointer to an I2C sensor subdevice board info | |
20 | * @clock_frequency: frequency of the clock the host provides to a sensor | |
21 | * @mbus_type: media bus type | |
22 | * @i2c_bus_num: i2c control bus id the sensor is attached to | |
23 | * @flags: the parallel bus flags defining signals polarity (V4L2_MBUS_*) | |
24 | * @use_field: 1 if parallel bus FIELD signal is used (only s3c64xx) | |
25 | */ | |
26 | struct s3c_camif_sensor_info { | |
27 | struct i2c_board_info i2c_board_info; | |
28 | unsigned long clock_frequency; | |
29 | enum v4l2_mbus_type mbus_type; | |
30 | u16 i2c_bus_num; | |
31 | u16 flags; | |
32 | u8 use_field; | |
33 | }; | |
34 | ||
35 | struct s3c_camif_plat_data { | |
36 | struct s3c_camif_sensor_info sensor; | |
37 | int (*gpio_get)(void); | |
38 | int (*gpio_put)(void); | |
39 | }; | |
40 | ||
41 | /* Platform default helper functions */ | |
42 | int s3c_camif_gpio_get(void); | |
43 | int s3c_camif_gpio_put(void); | |
44 | ||
45 | #endif /* MEDIA_S3C_CAMIF_ */ |