#include <linux/device.h>
#include <linux/gfp.h>
#include <media/v4l2-subdev.h>
#include <media/videobuf2-vmalloc.h>
#include "vsp1.h"
#include "vsp1_dl.h"
#include "vsp1_hgt.h"
#define HGT_DATA_SIZE …
static inline u32 vsp1_hgt_read(struct vsp1_hgt *hgt, u32 reg)
{ … }
static inline void vsp1_hgt_write(struct vsp1_hgt *hgt,
struct vsp1_dl_body *dlb, u32 reg, u32 data)
{ … }
void vsp1_hgt_frame_end(struct vsp1_entity *entity)
{ … }
#define V4L2_CID_VSP1_HGT_HUE_AREAS …
static int hgt_hue_areas_try_ctrl(struct v4l2_ctrl *ctrl)
{ … }
static int hgt_hue_areas_s_ctrl(struct v4l2_ctrl *ctrl)
{ … }
static const struct v4l2_ctrl_ops hgt_hue_areas_ctrl_ops = …;
static const struct v4l2_ctrl_config hgt_hue_areas = …;
static void hgt_configure_stream(struct vsp1_entity *entity,
struct v4l2_subdev_state *state,
struct vsp1_pipeline *pipe,
struct vsp1_dl_list *dl,
struct vsp1_dl_body *dlb)
{ … }
static const struct vsp1_entity_operations hgt_entity_ops = …;
static const unsigned int hgt_mbus_formats[] = …;
struct vsp1_hgt *vsp1_hgt_create(struct vsp1_device *vsp1)
{ … }