#include <media/v4l2-common.h>
#include <media/v4l2-event.h>
#include <media/v4l2-ioctl.h>
#include <media/videobuf2-core.h>
#include <media/videobuf2-vmalloc.h>
#include "rkisp1-common.h"
#define RKISP1_STATS_DEV_NAME …
#define RKISP1_ISP_STATS_REQ_BUFS_MIN …
#define RKISP1_ISP_STATS_REQ_BUFS_MAX …
static int rkisp1_stats_enum_fmt_meta_cap(struct file *file, void *priv,
struct v4l2_fmtdesc *f)
{ … }
static int rkisp1_stats_g_fmt_meta_cap(struct file *file, void *priv,
struct v4l2_format *f)
{ … }
static int rkisp1_stats_querycap(struct file *file,
void *priv, struct v4l2_capability *cap)
{ … }
static const struct v4l2_ioctl_ops rkisp1_stats_ioctl = …;
static const struct v4l2_file_operations rkisp1_stats_fops = …;
static int rkisp1_stats_vb2_queue_setup(struct vb2_queue *vq,
unsigned int *num_buffers,
unsigned int *num_planes,
unsigned int sizes[],
struct device *alloc_devs[])
{ … }
static void rkisp1_stats_vb2_buf_queue(struct vb2_buffer *vb)
{ … }
static int rkisp1_stats_vb2_buf_prepare(struct vb2_buffer *vb)
{ … }
static void rkisp1_stats_vb2_stop_streaming(struct vb2_queue *vq)
{ … }
static const struct vb2_ops rkisp1_stats_vb2_ops = …;
static int
rkisp1_stats_init_vb2_queue(struct vb2_queue *q, struct rkisp1_stats *stats)
{ … }
static void rkisp1_stats_get_awb_meas_v10(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_awb_meas_v12(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_aec_meas_v10(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_aec_meas_v12(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_afc_meas(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_hst_meas_v10(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_hst_meas_v12(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static void rkisp1_stats_get_bls_meas(struct rkisp1_stats *stats,
struct rkisp1_stat_buffer *pbuf)
{ … }
static const struct rkisp1_stats_ops rkisp1_v10_stats_ops = …;
static struct rkisp1_stats_ops rkisp1_v12_stats_ops = …;
static void
rkisp1_stats_send_measurement(struct rkisp1_stats *stats, u32 isp_ris)
{ … }
void rkisp1_stats_isr(struct rkisp1_stats *stats, u32 isp_ris)
{ … }
static void rkisp1_init_stats(struct rkisp1_stats *stats)
{ … }
int rkisp1_stats_register(struct rkisp1_device *rkisp1)
{ … }
void rkisp1_stats_unregister(struct rkisp1_device *rkisp1)
{ … }