linux/drivers/media/platform/sunxi/sun4i-csi/sun4i_v4l2.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright (C) 2016 NextThing Co
 * Copyright (C) 2016-2019 Bootlin
 *
 * Author: Maxime Ripard <[email protected]>
 */

#include <linux/device.h>
#include <linux/pm_runtime.h>

#include <media/v4l2-ioctl.h>
#include <media/v4l2-mc.h>
#include <media/videobuf2-v4l2.h>

#include "sun4i_csi.h"

#define CSI_DEFAULT_WIDTH
#define CSI_DEFAULT_HEIGHT

static const struct sun4i_csi_format sun4i_csi_formats[] =;

const struct sun4i_csi_format *sun4i_csi_find_format(const u32 *fourcc,
						     const u32 *mbus)
{}

static int sun4i_csi_querycap(struct file *file, void *priv,
			      struct v4l2_capability *cap)
{}

static int sun4i_csi_enum_input(struct file *file, void *priv,
				struct v4l2_input *inp)
{}

static int sun4i_csi_g_input(struct file *file, void *fh,
			     unsigned int *i)
{}

static int sun4i_csi_s_input(struct file *file, void *fh,
			     unsigned int i)
{}

static void _sun4i_csi_try_fmt(struct sun4i_csi *csi,
			       struct v4l2_pix_format_mplane *pix)
{}

static int sun4i_csi_try_fmt_vid_cap(struct file *file, void *priv,
				     struct v4l2_format *f)
{}

static int sun4i_csi_s_fmt_vid_cap(struct file *file, void *priv,
				   struct v4l2_format *f)
{}

static int sun4i_csi_g_fmt_vid_cap(struct file *file, void *priv,
				   struct v4l2_format *f)
{}

static int sun4i_csi_enum_fmt_vid_cap(struct file *file, void *priv,
				      struct v4l2_fmtdesc *f)
{}

static const struct v4l2_ioctl_ops sun4i_csi_ioctl_ops =;

static int sun4i_csi_open(struct file *file)
{}

static int sun4i_csi_release(struct file *file)
{}

static const struct v4l2_file_operations sun4i_csi_fops =;

static const struct v4l2_mbus_framefmt sun4i_csi_pad_fmt_default =;

static int sun4i_csi_subdev_init_state(struct v4l2_subdev *subdev,
				       struct v4l2_subdev_state *sd_state)
{}

static int sun4i_csi_subdev_get_fmt(struct v4l2_subdev *subdev,
				    struct v4l2_subdev_state *sd_state,
				    struct v4l2_subdev_format *fmt)
{}

static int sun4i_csi_subdev_set_fmt(struct v4l2_subdev *subdev,
				    struct v4l2_subdev_state *sd_state,
				    struct v4l2_subdev_format *fmt)
{}

static int
sun4i_csi_subdev_enum_mbus_code(struct v4l2_subdev *subdev,
				struct v4l2_subdev_state *sd_state,
				struct v4l2_subdev_mbus_code_enum *mbus)
{}

static const struct v4l2_subdev_pad_ops sun4i_csi_subdev_pad_ops =;

const struct v4l2_subdev_ops sun4i_csi_subdev_ops =;

const struct v4l2_subdev_internal_ops sun4i_csi_subdev_internal_ops =;

int sun4i_csi_v4l2_register(struct sun4i_csi *csi)
{}