#include "camss.h"
#include "camss-vfe.h"
#include "camss-vfe-gen1.h"
#define VFE_FRAME_DROP_UPDATES …
#define VFE_NEXT_SOF_MS …
int vfe_gen1_halt(struct vfe_device *vfe)
{ … }
static int vfe_disable_output(struct vfe_line *line)
{ … }
int vfe_gen1_disable(struct vfe_line *line)
{ … }
static void vfe_output_init_addrs(struct vfe_device *vfe,
struct vfe_output *output, u8 sync,
struct vfe_line *line)
{ … }
static void vfe_output_frame_drop(struct vfe_device *vfe,
struct vfe_output *output,
u32 drop_pattern)
{ … }
static int vfe_enable_output(struct vfe_line *line)
{ … }
static int vfe_get_output(struct vfe_line *line)
{ … }
int vfe_gen1_enable(struct vfe_line *line)
{ … }
static void vfe_output_update_ping_addr(struct vfe_device *vfe,
struct vfe_output *output, u8 sync,
struct vfe_line *line)
{ … }
static void vfe_output_update_pong_addr(struct vfe_device *vfe,
struct vfe_output *output, u8 sync,
struct vfe_line *line)
{ … }
static void vfe_buf_update_wm_on_next(struct vfe_device *vfe,
struct vfe_output *output)
{ … }
static void vfe_buf_update_wm_on_last(struct vfe_device *vfe,
struct vfe_output *output)
{ … }
static void vfe_buf_update_wm_on_new(struct vfe_device *vfe,
struct vfe_output *output,
struct camss_buffer *new_buf,
struct vfe_line *line)
{ … }
static void vfe_isr_halt_ack(struct vfe_device *vfe)
{ … }
static void vfe_isr_sof(struct vfe_device *vfe, enum vfe_line_id line_id)
{ … }
static void vfe_isr_reg_update(struct vfe_device *vfe, enum vfe_line_id line_id)
{ … }
static void vfe_isr_wm_done(struct vfe_device *vfe, u8 wm)
{ … }
static int vfe_queue_buffer(struct camss_video *vid, struct camss_buffer *buf)
{ … }
#define CALC_WORD(width, M, N) …
int vfe_word_per_line(u32 format, u32 width)
{ … }
const struct vfe_isr_ops vfe_isr_ops_gen1 = …;
const struct camss_video_ops vfe_video_ops_gen1 = …;