void mxc_isi_channel_config(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_enable(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_disable(struct mxc_isi_dev *mxc_isi);
-void mxc_isi_channel_set_outbuf(struct mxc_isi_dev *mxc_isi, struct mxc_isi_buffer *buf);
-void mxc_isi_frame_write_done(struct mxc_isi_dev *mxc_isi);
-void mxc_isi_frame_read_done(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_channel_set_outbuf(struct mxc_isi_dev *mxc_isi,
+ struct mxc_isi_buffer *buf);
+void mxc_isi_cap_frame_write_done(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_frame_write_done(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_frame_read_done(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_deinterlace(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_sw_reset(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_hw_reset(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_source_config(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_flip(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_csc(struct mxc_isi_dev *mxc_isi);
-void mxc_isi_channel_set_alpha_roi0(struct mxc_isi_dev *mxc_isi, struct v4l2_rect *rect);
+void mxc_isi_channel_set_alpha_roi0(struct mxc_isi_dev *mxc_isi,
+ struct v4l2_rect *rect);
void mxc_isi_channel_set_alpha(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_4k(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_deinterlace(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_memory_image(struct mxc_isi_dev *mxc_isi);
void mxc_isi_channel_set_scaler(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_channel_init(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_channel_config(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_channel_enable(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_channel_disable(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_config_src(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_config_dst(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_m2m_start_read(struct mxc_isi_dev *mxc_isi);
+
void mxc_isi_clean_irq_status(struct mxc_isi_dev *mxc_isi, u32 val);
u32 mxc_isi_get_irq_status(struct mxc_isi_dev *mxc_isi);
void mxc_isi_enable_irq(struct mxc_isi_dev *mxc_isi);
void mxc_isi_disable_irq(struct mxc_isi_dev *mxc_isi);
+void mxc_isi_channel_set_m2m_out_addr(struct mxc_isi_dev *mxc_isi,
+ struct mxc_isi_buffer *buf);
+void mxc_isi_channel_set_m2m_src_addr(struct mxc_isi_dev *mxc_isi,
+ struct mxc_isi_buffer *buf);
void dump_isi_regs(struct mxc_isi_dev *mxc_isi);
#endif /* MXC_ISI_HW_H_ */