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__ */
|