hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/drivers/media/platform/rockchip/cif/dev.h
....@@ -193,6 +193,7 @@
193193
194194 struct rkcif_tools_buffer {
195195 struct vb2_v4l2_buffer *vb;
196
+ struct rkisp_rx_buf *dbufs;
196197 struct list_head list;
197198 u32 frame_idx;
198199 u64 timestamp;
....@@ -279,10 +280,12 @@
279280 unsigned int width;
280281 unsigned int height;
281282 unsigned int virtual_width;
283
+ unsigned int left_virtual_width;
282284 unsigned int crop_st_x;
283285 unsigned int crop_st_y;
284286 unsigned int dsi_input;
285287 struct rkmodule_lvds_cfg lvds_cfg;
288
+ struct rkmodule_capture_info capture_info;
286289 };
287290
288291 struct rkcif_vdev_node {
....@@ -526,7 +529,7 @@
526529 unsigned int cur_stream_mode;
527530 struct rkcif_rx_buffer rx_buf[RKISP_VICAP_BUF_CNT_MAX];
528531 struct list_head rx_buf_head;
529
- int buf_num_toisp;
532
+ int total_buf_num;
530533 u64 line_int_cnt;
531534 int lack_buf_cnt;
532535 unsigned int buf_wake_up_cnt;
....@@ -536,6 +539,7 @@
536539 int last_rx_buf_idx;
537540 int last_frame_idx;
538541 int new_fource_idx;
542
+ atomic_t buf_cnt;
539543 bool stopping;
540544 bool crop_enable;
541545 bool crop_dyn_en;
....@@ -552,6 +556,7 @@
552556 bool is_in_vblank;
553557 bool is_change_toisp;
554558 bool is_stop_capture;
559
+ bool is_wait_dma_stop;
555560 };
556561
557562 struct rkcif_lvds_subdev {
....@@ -841,6 +846,7 @@
841846 struct rkcif_work_struct reset_work;
842847 int id_use_cnt;
843848 unsigned int csi_host_idx;
849
+ unsigned int csi_host_idx_def;
844850 unsigned int dvp_sof_in_oneframe;
845851 unsigned int wait_line;
846852 unsigned int wait_line_bak;
....@@ -883,7 +889,7 @@
883889 int rkcif_scale_start(struct rkcif_scale_vdev *scale_vdev);
884890
885891 const struct
886
-cif_input_fmt *get_input_fmt(struct v4l2_subdev *sd,
892
+cif_input_fmt *rkcif_get_input_fmt(struct rkcif_device *dev,
887893 struct v4l2_rect *rect,
888894 u32 pad_id, struct csi_channel_info *csi_info);
889895