![Mauro Carvalho Chehab](/assets/img/avatar_default.png)
Let's not mix platform_data headers with the core headers. Instead, let's create a subdir at linux/platform_data and move the headers to that common place, adding it to MAINTAINERS. The headers were moved with: mkdir include/linux/platform_data/media/; git mv include/media/gpio-ir-recv.h include/media/ir-rx51.h include/media/mmp-camera.h include/media/omap1_camera.h include/media/omap4iss.h include/media/s5p_hdmi.h include/media/si4713.h include/media/sii9234.h include/media/smiapp.h include/media/soc_camera.h include/media/soc_camera_platform.h include/media/timb_radio.h include/media/timb_video.h include/linux/platform_data/media/ And the references fixed with this script: MAIN_DIR="linux/platform_data/" PREV_DIR="media/" DIRS="media/" echo "Checking affected files" >&2 for i in $DIRS; do for j in $(find include/$MAIN_DIR/$i -type f -name '*.h'); do n=`basename $j` git grep -l $n done done|sort|uniq >files && ( echo "Handling files..." >&2; echo "for i in \$(cat files|grep -v Documentation); do cat \$i | \\"; ( cd include/$MAIN_DIR; for j in $DIRS; do for i in $(ls $j); do echo "perl -ne 's,(include [\\\"\\<])$PREV_DIR($i)([\\\"\\>]),\1$MAIN_DIR$j\2\3,; print \$_' |\\"; done; done; echo "cat > a && mv a \$i; done"; ); echo "Handling documentation..." >&2; echo "for i in MAINTAINERS \$(cat files); do cat \$i | \\"; ( cd include/$MAIN_DIR; for j in $DIRS; do for i in $(ls $j); do echo " perl -ne 's,include/$PREV_DIR($i)\b,include/$MAIN_DIR$j\1,; print \$_' |\\"; done; done; echo "cat > a && mv a \$i; done" ); ) >script && . ./script Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
66 lines
1.4 KiB
C
66 lines
1.4 KiB
C
#ifndef ARCH_ARM_PLAT_OMAP4_ISS_H
|
|
#define ARCH_ARM_PLAT_OMAP4_ISS_H
|
|
|
|
#include <linux/i2c.h>
|
|
|
|
struct iss_device;
|
|
|
|
enum iss_interface_type {
|
|
ISS_INTERFACE_CSI2A_PHY1,
|
|
ISS_INTERFACE_CSI2B_PHY2,
|
|
};
|
|
|
|
/**
|
|
* struct iss_csiphy_lane: CSI2 lane position and polarity
|
|
* @pos: position of the lane
|
|
* @pol: polarity of the lane
|
|
*/
|
|
struct iss_csiphy_lane {
|
|
u8 pos;
|
|
u8 pol;
|
|
};
|
|
|
|
#define ISS_CSIPHY1_NUM_DATA_LANES 4
|
|
#define ISS_CSIPHY2_NUM_DATA_LANES 1
|
|
|
|
/**
|
|
* struct iss_csiphy_lanes_cfg - CSI2 lane configuration
|
|
* @data: Configuration of one or two data lanes
|
|
* @clk: Clock lane configuration
|
|
*/
|
|
struct iss_csiphy_lanes_cfg {
|
|
struct iss_csiphy_lane data[ISS_CSIPHY1_NUM_DATA_LANES];
|
|
struct iss_csiphy_lane clk;
|
|
};
|
|
|
|
/**
|
|
* struct iss_csi2_platform_data - CSI2 interface platform data
|
|
* @crc: Enable the cyclic redundancy check
|
|
* @vpclk_div: Video port output clock control
|
|
*/
|
|
struct iss_csi2_platform_data {
|
|
unsigned crc:1;
|
|
unsigned vpclk_div:2;
|
|
struct iss_csiphy_lanes_cfg lanecfg;
|
|
};
|
|
|
|
struct iss_subdev_i2c_board_info {
|
|
struct i2c_board_info *board_info;
|
|
int i2c_adapter_id;
|
|
};
|
|
|
|
struct iss_v4l2_subdevs_group {
|
|
struct iss_subdev_i2c_board_info *subdevs;
|
|
enum iss_interface_type interface;
|
|
union {
|
|
struct iss_csi2_platform_data csi2;
|
|
} bus; /* gcc < 4.6.0 chokes on anonymous union initializers */
|
|
};
|
|
|
|
struct iss_platform_data {
|
|
struct iss_v4l2_subdevs_group *subdevs;
|
|
void (*set_constraints)(struct iss_device *iss, bool enable);
|
|
};
|
|
|
|
#endif
|