#include <linux/module.h>
#include <linux/pm_runtime.h>
#include <media/v4l2-ioctl.h>
#include <media/videobuf2-vmalloc.h>
#include "atomisp_cmd.h"
#include "atomisp_common.h"
#include "atomisp_fops.h"
#include "atomisp_internal.h"
#include "atomisp_ioctl.h"
#include "atomisp_compat.h"
#include "atomisp_subdev.h"
#include "atomisp_v4l2.h"
#include "atomisp-regs.h"
#include "hmm/hmm.h"
#include "ia_css_frame.h"
#include "type_support.h"
#include "device_access/device_access.h"
static int atomisp_queue_setup(struct vb2_queue *vq,
unsigned int *nbuffers, unsigned int *nplanes,
unsigned int sizes[], struct device *alloc_devs[])
{ … }
static int atomisp_buf_init(struct vb2_buffer *vb)
{ … }
static int atomisp_q_one_metadata_buffer(struct atomisp_sub_device *asd,
enum atomisp_input_stream_id stream_id,
enum ia_css_pipe_id css_pipe_id)
{ … }
static int atomisp_q_one_s3a_buffer(struct atomisp_sub_device *asd,
enum atomisp_input_stream_id stream_id,
enum ia_css_pipe_id css_pipe_id)
{ … }
static int atomisp_q_one_dis_buffer(struct atomisp_sub_device *asd,
enum atomisp_input_stream_id stream_id,
enum ia_css_pipe_id css_pipe_id)
{ … }
static int atomisp_q_video_buffers_to_css(struct atomisp_sub_device *asd,
struct atomisp_video_pipe *pipe,
enum atomisp_input_stream_id stream_id,
enum ia_css_buffer_type css_buf_type,
enum ia_css_pipe_id css_pipe_id)
{ … }
int atomisp_qbuffers_to_css(struct atomisp_sub_device *asd)
{ … }
static void atomisp_buf_queue(struct vb2_buffer *vb)
{ … }
static void atomisp_buf_cleanup(struct vb2_buffer *vb)
{ … }
const struct vb2_ops atomisp_vb2_ops = …;
static void atomisp_dev_init_struct(struct atomisp_device *isp)
{ … }
static void atomisp_subdev_init_struct(struct atomisp_sub_device *asd)
{ … }
static int atomisp_open(struct file *file)
{ … }
static int atomisp_release(struct file *file)
{ … }
const struct v4l2_file_operations atomisp_fops = …;