linux/include/media/drv-intf/s3c_camif.h
<<
>>
Prefs
   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 */
  23struct 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
  32struct s3c_camif_plat_data {
  33        struct s3c_camif_sensor_info sensor;
  34        int (*gpio_get)(void);
  35        int (*gpio_put)(void);
  36};
  37
  38/* Platform default helper functions */
  39int s3c_camif_gpio_get(void);
  40int s3c_camif_gpio_put(void);
  41
  42#endif /* MEDIA_S3C_CAMIF_ */
  43