linux/drivers/media/platform/st/stm32/stm32-dcmipp/dcmipp-parallel.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Driver for STM32 Digital Camera Memory Interface Pixel Processor
 *
 * Copyright (C) STMicroelectronics SA 2023
 * Authors: Hugues Fruchet <[email protected]>
 *          Alain Volmat <[email protected]>
 *          for STMicroelectronics.
 */

#include <linux/v4l2-mediabus.h>
#include <media/v4l2-event.h>
#include <media/v4l2-subdev.h>

#include "dcmipp-common.h"

#define DCMIPP_PRCR
#define DCMIPP_PRCR_FORMAT_SHIFT
#define DCMIPP_PRCR_FORMAT_YUV422
#define DCMIPP_PRCR_FORMAT_RGB565
#define DCMIPP_PRCR_FORMAT_RAW8
#define DCMIPP_PRCR_FORMAT_G8
#define DCMIPP_PRCR_FORMAT_BYTE_STREAM
#define DCMIPP_PRCR_ESS
#define DCMIPP_PRCR_PCKPOL
#define DCMIPP_PRCR_HSPOL
#define DCMIPP_PRCR_VSPOL
#define DCMIPP_PRCR_ENABLE
#define DCMIPP_PRCR_SWAPCYCLES

#define DCMIPP_PRESCR
#define DCMIPP_PRESUR

#define IS_SINK(pad)
#define IS_SRC(pad)

struct dcmipp_par_pix_map {};

#define PIXMAP_SINK_SRC_PRCR_SWAP(sink, src, prcr, swap)
static const struct dcmipp_par_pix_map dcmipp_par_pix_map_list[] =;

/*
 * Search through the pix_map table, skipping two consecutive entry with the
 * same code
 */
static inline const struct dcmipp_par_pix_map *dcmipp_par_pix_map_by_index
						(unsigned int index,
						 unsigned int pad)
{}

static inline const struct dcmipp_par_pix_map *dcmipp_par_pix_map_by_code
					(u32 code_sink, u32 code_src)
{}

struct dcmipp_par_device {};

static const struct v4l2_mbus_framefmt fmt_default =;

static int dcmipp_par_init_state(struct v4l2_subdev *sd,
				 struct v4l2_subdev_state *sd_state)
{}

static int dcmipp_par_enum_mbus_code(struct v4l2_subdev *sd,
				     struct v4l2_subdev_state *sd_state,
				     struct v4l2_subdev_mbus_code_enum *code)
{}

static int dcmipp_par_enum_frame_size(struct v4l2_subdev *sd,
				      struct v4l2_subdev_state *sd_state,
				      struct v4l2_subdev_frame_size_enum *fse)
{}

static void dcmipp_par_adjust_fmt(struct dcmipp_par_device *par,
				  struct v4l2_mbus_framefmt *fmt, __u32 pad)
{}

static int dcmipp_par_set_fmt(struct v4l2_subdev *sd,
			      struct v4l2_subdev_state *sd_state,
			      struct v4l2_subdev_format *fmt)
{}

static const struct v4l2_subdev_pad_ops dcmipp_par_pad_ops =;

static int dcmipp_par_configure(struct dcmipp_par_device *par)
{}

static int dcmipp_par_s_stream(struct v4l2_subdev *sd, int enable)
{}

static const struct v4l2_subdev_video_ops dcmipp_par_video_ops =;

static const struct v4l2_subdev_ops dcmipp_par_ops =;

static void dcmipp_par_release(struct v4l2_subdev *sd)
{}

static const struct v4l2_subdev_internal_ops dcmipp_par_int_ops =;

void dcmipp_par_ent_release(struct dcmipp_ent_device *ved)
{}

struct dcmipp_ent_device *dcmipp_par_ent_init(struct device *dev,
					      const char *entity_name,
					      struct v4l2_device *v4l2_dev,
					      void __iomem *regs)
{}