#include <media/media-device.h>
#include <media/media-entity.h>
#include <media/v4l2-device.h>
#include <media/v4l2-subdev.h>
#include "microchip-isc-regs.h"
#include "microchip-isc.h"
static void isc_scaler_prepare_fmt(struct v4l2_mbus_framefmt *framefmt)
{
framefmt->colorspace = V4L2_COLORSPACE_SRGB;
framefmt->field = V4L2_FIELD_NONE;
framefmt->ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
framefmt->quantization = V4L2_QUANTIZATION_DEFAULT;
framefmt->xfer_func = V4L2_XFER_FUNC_DEFAULT;
};
static int isc_scaler_get_fmt(struct v4l2_subdev *sd,
struct v4l2_subdev_state *sd_state,
struct v4l2_subdev_format *format)
{ … }
static int isc_scaler_set_fmt(struct v4l2_subdev *sd,
struct v4l2_subdev_state *sd_state,
struct v4l2_subdev_format *req_fmt)
{ … }
static int isc_scaler_enum_mbus_code(struct v4l2_subdev *sd,
struct v4l2_subdev_state *sd_state,
struct v4l2_subdev_mbus_code_enum *code)
{ … }
static int isc_scaler_g_sel(struct v4l2_subdev *sd,
struct v4l2_subdev_state *sd_state,
struct v4l2_subdev_selection *sel)
{ … }
static int isc_scaler_init_state(struct v4l2_subdev *sd,
struct v4l2_subdev_state *sd_state)
{ … }
static const struct v4l2_subdev_pad_ops isc_scaler_pad_ops = …;
static const struct media_entity_operations isc_scaler_entity_ops = …;
static const struct v4l2_subdev_ops xisc_scaler_subdev_ops = …;
static const struct v4l2_subdev_internal_ops isc_scaler_internal_ops = …;
int isc_scaler_init(struct isc_device *isc)
{ … }
EXPORT_SYMBOL_GPL(…);
int isc_scaler_link(struct isc_device *isc)
{ … }
EXPORT_SYMBOL_GPL(…);