5cc7522d89
Allwinner V3s SoC features a CSI module with parallel interface. This patch implement a v4l2 framework driver for it. Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com> Reviewed-by: Maxime Ripard <maxime.ripard@bootlin.com> Tested-by: Maxime Ripard <maxime.ripard@bootlin.com> Signed-off-by: Yong Deng <yong.deng@magewell.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
39 lines
847 B
C
39 lines
847 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (c) 2011-2018 Magewell Electronics Co., Ltd. (Nanjing)
|
|
* All rights reserved.
|
|
* Author: Yong Deng <yong.deng@magewell.com>
|
|
*/
|
|
|
|
#ifndef __SUN6I_VIDEO_H__
|
|
#define __SUN6I_VIDEO_H__
|
|
|
|
#include <media/v4l2-dev.h>
|
|
#include <media/videobuf2-core.h>
|
|
|
|
struct sun6i_csi;
|
|
|
|
struct sun6i_video {
|
|
struct video_device vdev;
|
|
struct media_pad pad;
|
|
struct sun6i_csi *csi;
|
|
|
|
struct mutex lock;
|
|
|
|
struct vb2_queue vb2_vidq;
|
|
spinlock_t dma_queue_lock;
|
|
struct list_head dma_queue;
|
|
|
|
unsigned int sequence;
|
|
struct v4l2_format fmt;
|
|
u32 mbus_code;
|
|
};
|
|
|
|
int sun6i_video_init(struct sun6i_video *video, struct sun6i_csi *csi,
|
|
const char *name);
|
|
void sun6i_video_cleanup(struct sun6i_video *video);
|
|
|
|
void sun6i_video_frame_done(struct sun6i_video *video);
|
|
|
|
#endif /* __SUN6I_VIDEO_H__ */
|