Re: [PATCH v2 03/11] v4l: Introduce sensor operation for getting interface configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, Sergio

This change in interface is not used from the omap4iss driver.

You could drop it from the patch set, if so.

On 12/01/2011 02:14 AM, Sergio Aguirre wrote:
> From: Stanimir Varbanov <svarbanov@xxxxxxxxxx>
> 
> Introduce g_interface_parms sensor operation for getting sensor
> interface parameters. These parameters are needed from the host side
> to determine it's own configuration.
> 
> Signed-off-by: Stanimir Varbanov <svarbanov@xxxxxxxxxx>
> ---
>  include/media/v4l2-subdev.h |   42 ++++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 42 insertions(+), 0 deletions(-)
> 
> diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h
> index f0f3358..0d322ed 100644
> --- a/include/media/v4l2-subdev.h
> +++ b/include/media/v4l2-subdev.h
> @@ -362,6 +362,42 @@ struct v4l2_subdev_vbi_ops {
>  	int (*s_sliced_fmt)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_format *fmt);
>  };
>  
> +/* Which interface the sensor use to provide it's image data */
> +enum v4l2_subdev_sensor_iface {
> +	V4L2_SUBDEV_SENSOR_PARALLEL,
> +	V4L2_SUBDEV_SENSOR_SERIAL,
> +};
> +
> +/* Each interface could use the following modes */
> +/* Image sensor provides horizontal and vertical sync signals */
> +#define V4L2_SUBDEV_SENSOR_MODE_PARALLEL_SYNC	0
> +/* BT.656 interface. Embedded sync */
> +#define V4L2_SUBDEV_SENSOR_MODE_PARALLEL_ITU	1
> +/* MIPI CSI1 */
> +#define V4L2_SUBDEV_SENSOR_MODE_SERIAL_CSI1	2
> +/* MIPI CSI2 */
> +#define V4L2_SUBDEV_SENSOR_MODE_SERIAL_CSI2	3
> +
> +struct v4l2_subdev_sensor_serial_parms {
> +	unsigned char lanes;		/* number of lanes used */
> +	unsigned char channel;		/* virtual channel */
> +	unsigned int phy_rate;		/* output rate at CSI phy in bps */
> +	unsigned int pix_clk;		/* pixel clock in Hz */
> +};
> +
> +struct v4l2_subdev_sensor_parallel_parms {
> +	unsigned int pix_clk;		/* pixel clock in Hz */
> +};
> +
> +struct v4l2_subdev_sensor_interface_parms {
> +	enum v4l2_subdev_sensor_iface if_type;
> +	unsigned int if_mode;
> +	union {
> +		struct v4l2_subdev_sensor_serial_parms serial;
> +		struct v4l2_subdev_sensor_parallel_parms parallel;
> +	} parms;
> +};
> +
>  /**
>   * struct v4l2_subdev_sensor_ops - v4l2-subdev sensor operations
>   * @g_skip_top_lines: number of lines at the top of the image to be skipped.
> @@ -371,10 +407,16 @@ struct v4l2_subdev_vbi_ops {
>   * @g_skip_frames: number of frames to skip at stream start. This is needed for
>   *		   buggy sensors that generate faulty frames when they are
>   *		   turned on.
> + * @g_interface_parms: get sensor interface parameters. The sensor subdev should
> + *		       fill this structure with current interface params. These
> + *		       interface parameters are needed on host side to configure
> + *		       it's own hardware receivers.
>   */
>  struct v4l2_subdev_sensor_ops {
>  	int (*g_skip_top_lines)(struct v4l2_subdev *sd, u32 *lines);
>  	int (*g_skip_frames)(struct v4l2_subdev *sd, u32 *frames);
> +	int (*g_interface_parms)(struct v4l2_subdev *sd,
> +			struct v4l2_subdev_sensor_interface_parms *parms);
>  };
>  
>  /*


-- 
best regards,
Stan
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux