media: video: tegra: max77387 flash device bringup
[linux-3.10.git] / include / media / sh_mobile_csi2.h
1 /*
2  * Driver header for the SH-Mobile MIPI CSI-2 unit
3  *
4  * Copyright (C) 2010, Guennadi Liakhovetski <g.liakhovetski@gmx.de>
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 SH_MIPI_CSI
12 #define SH_MIPI_CSI
13
14 #include <linux/list.h>
15
16 enum sh_csi2_phy {
17         SH_CSI2_PHY_MAIN,
18         SH_CSI2_PHY_SUB,
19 };
20
21 enum sh_csi2_type {
22         SH_CSI2C,
23         SH_CSI2I,
24 };
25
26 #define SH_CSI2_CRC     (1 << 0)
27 #define SH_CSI2_ECC     (1 << 1)
28
29 struct platform_device;
30
31 struct sh_csi2_client_config {
32         enum sh_csi2_phy phy;
33         unsigned char lanes;            /* bitmask[3:0] */
34         unsigned char channel;          /* 0..3 */
35         struct platform_device *pdev;   /* client platform device */
36 };
37
38 struct v4l2_device;
39
40 struct sh_csi2_pdata {
41         enum sh_csi2_type type;
42         unsigned int flags;
43         struct sh_csi2_client_config *clients;
44         int num_clients;
45         struct v4l2_device *v4l2_dev;
46 };
47
48 #endif