linux/drivers/media/pci/cx18/cx18-streams.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 *  cx18 init/start/stop/exit stream functions
 *
 *  Derived from ivtv-streams.c
 *
 *  Copyright (C) 2007  Hans Verkuil <[email protected]>
 *  Copyright (C) 2008  Andy Walls <[email protected]>
 */

#include "cx18-driver.h"
#include "cx18-io.h"
#include "cx18-fileops.h"
#include "cx18-mailbox.h"
#include "cx18-i2c.h"
#include "cx18-queue.h"
#include "cx18-ioctl.h"
#include "cx18-streams.h"
#include "cx18-cards.h"
#include "cx18-scb.h"
#include "cx18-dvb.h"

#define CX18_DSP0_INTERRUPT_MASK

static const struct v4l2_file_operations cx18_v4l2_enc_fops =;

static const struct v4l2_file_operations cx18_v4l2_enc_yuv_fops =;

/* offset from 0 to register ts v4l2 minors on */
#define CX18_V4L2_ENC_TS_OFFSET
/* offset from 0 to register pcm v4l2 minors on */
#define CX18_V4L2_ENC_PCM_OFFSET
/* offset from 0 to register yuv v4l2 minors on */
#define CX18_V4L2_ENC_YUV_OFFSET

static struct {} cx18_stream_info[] =;

static int cx18_queue_setup(struct vb2_queue *vq,
			    unsigned int *nbuffers, unsigned int *nplanes,
			    unsigned int sizes[], struct device *alloc_devs[])
{}

static void cx18_buf_queue(struct vb2_buffer *vb)
{}

static int cx18_buf_prepare(struct vb2_buffer *vb)
{}

void cx18_clear_queue(struct cx18_stream *s, enum vb2_buffer_state state)
{}

static int cx18_start_streaming(struct vb2_queue *vq, unsigned int count)
{}

static void cx18_stop_streaming(struct vb2_queue *vq)
{}

static const struct vb2_ops cx18_vb2_qops =;

static int cx18_stream_init(struct cx18 *cx, int type)
{}

static int cx18_prep_dev(struct cx18 *cx, int type)
{}

/* Initialize v4l2 variables and register v4l2 devices */
int cx18_streams_setup(struct cx18 *cx)
{}

static int cx18_reg_dev(struct cx18 *cx, int type)
{}

/* Register v4l2 devices */
int cx18_streams_register(struct cx18 *cx)
{}

/* Unregister v4l2 devices */
void cx18_streams_cleanup(struct cx18 *cx, int unregister)
{}

static void cx18_vbi_setup(struct cx18_stream *s)
{}

void cx18_stream_rotate_idx_mdls(struct cx18 *cx)
{}

static
struct cx18_queue *_cx18_stream_put_mdl_fw(struct cx18_stream *s,
					   struct cx18_mdl *mdl)
{}

static
void _cx18_stream_load_fw_queue(struct cx18_stream *s)
{}

void cx18_out_work_handler(struct work_struct *work)
{}

static void cx18_stream_configure_mdls(struct cx18_stream *s)
{}

int cx18_start_v4l2_encode_stream(struct cx18_stream *s)
{}
EXPORT_SYMBOL();

void cx18_stop_all_captures(struct cx18 *cx)
{}

int cx18_stop_v4l2_encode_stream(struct cx18_stream *s, int gop_end)
{}
EXPORT_SYMBOL();

u32 cx18_find_handle(struct cx18 *cx)
{}

struct cx18_stream *cx18_handle_to_stream(struct cx18 *cx, u32 handle)
{}