/kernel/linux/linux-5.10/drivers/staging/media/atomisp/pci/ |
D | atomisp_compat.h | 49 void atomisp_css_init_struct(struct atomisp_sub_device *asd); 63 int atomisp_q_video_buffer_to_css(struct atomisp_sub_device *asd, 69 int atomisp_q_s3a_buffer_to_css(struct atomisp_sub_device *asd, 74 int atomisp_q_metadata_buffer_to_css(struct atomisp_sub_device *asd, 79 int atomisp_q_dis_buffer_to_css(struct atomisp_sub_device *asd, 88 int atomisp_css_start(struct atomisp_sub_device *asd, 91 void atomisp_css_update_isp_params(struct atomisp_sub_device *asd); 92 void atomisp_css_update_isp_params_on_pipe(struct atomisp_sub_device *asd, 95 int atomisp_css_queue_buffer(struct atomisp_sub_device *asd, 101 int atomisp_css_dequeue_buffer(struct atomisp_sub_device *asd, [all …]
|
D | atomisp_compat_css20.c | 192 static void __dump_pipe_config(struct atomisp_sub_device *asd, in __dump_pipe_config() argument 196 struct atomisp_device *isp = asd->isp; in __dump_pipe_config() 287 static void __dump_stream_config(struct atomisp_sub_device *asd, in __dump_stream_config() argument 290 struct atomisp_device *isp = asd->isp; in __dump_stream_config() 297 __dump_pipe_config(asd, stream_env, j); in __dump_stream_config() 421 static int __destroy_stream(struct atomisp_sub_device *asd, in __destroy_stream() argument 424 struct atomisp_device *isp = asd->isp; in __destroy_stream() 473 static int __destroy_streams(struct atomisp_sub_device *asd, bool force) in __destroy_streams() argument 478 ret = __destroy_stream(asd, &asd->stream_env[i], force); in __destroy_streams() 482 asd->stream_prepared = false; in __destroy_streams() [all …]
|
D | atomisp_cmd.c | 111 static unsigned short atomisp_get_sensor_fps(struct atomisp_sub_device *asd) in atomisp_get_sensor_fps() argument 114 struct atomisp_device *isp = asd->isp; in atomisp_get_sensor_fps() 119 ret = v4l2_subdev_call(isp->inputs[asd->input_curr].camera, in atomisp_get_sensor_fps() 212 struct atomisp_sub_device *asd = &isp->asd[0]; in atomisp_freq_scaling() local 225 ATOMISP_PCI_DEVICE_SOC_CHT && ATOMISP_USE_YUVPP(asd)) in atomisp_freq_scaling() 247 fps = atomisp_get_sensor_fps(asd); in atomisp_freq_scaling() 255 curr_rules.width = asd->fmt[asd->capture_pad].fmt.width; in atomisp_freq_scaling() 256 curr_rules.height = asd->fmt[asd->capture_pad].fmt.height; in atomisp_freq_scaling() 258 curr_rules.run_mode = asd->run_mode->val; in atomisp_freq_scaling() 264 if (asd->continuous_mode->val) { in atomisp_freq_scaling() [all …]
|
D | atomisp_cmd.h | 61 void atomisp_flush_bufs_and_wakeup(struct atomisp_sub_device *asd); 62 void atomisp_clear_css_buffer_counters(struct atomisp_sub_device *asd); 64 bool atomisp_buffers_queued(struct atomisp_sub_device *asd); 75 void atomisp_setup_flash(struct atomisp_sub_device *asd); 99 int atomisp_set_sensor_runmode(struct atomisp_sub_device *asd, 105 int atomisp_gdc_cac(struct atomisp_sub_device *asd, int flag, 111 int atomisp_low_light(struct atomisp_sub_device *asd, int flag, 118 int atomisp_xnr(struct atomisp_sub_device *asd, int flag, int *arg); 120 int atomisp_formats(struct atomisp_sub_device *asd, int flag, 126 int atomisp_nr(struct atomisp_sub_device *asd, int flag, [all …]
|
D | atomisp_fops.c | 87 static int atomisp_q_one_metadata_buffer(struct atomisp_sub_device *asd, in atomisp_q_one_metadata_buffer() argument 93 atomisp_get_metadata_type(asd, css_pipe_id); in atomisp_q_one_metadata_buffer() 96 if (asd->metadata_bufs_in_css[stream_id][css_pipe_id] >= in atomisp_q_one_metadata_buffer() 100 if (!list_empty(&asd->metadata[md_type])) { in atomisp_q_one_metadata_buffer() 101 metadata_list = &asd->metadata[md_type]; in atomisp_q_one_metadata_buffer() 102 } else if (!list_empty(&asd->metadata_ready[md_type])) { in atomisp_q_one_metadata_buffer() 103 metadata_list = &asd->metadata_ready[md_type]; in atomisp_q_one_metadata_buffer() 105 dev_warn(asd->isp->dev, "%s: No metadata buffers available for type %d!\n", in atomisp_q_one_metadata_buffer() 114 if (atomisp_q_metadata_buffer_to_css(asd, metadata_buf, in atomisp_q_one_metadata_buffer() 120 &asd->metadata_in_css[md_type]); in atomisp_q_one_metadata_buffer() [all …]
|
D | atomisp_acc.c | 75 acc_get_fw(struct atomisp_sub_device *asd, unsigned int handle) in acc_get_fw() argument 79 list_for_each_entry(acc_fw, &asd->acc.fw, list) in acc_get_fw() 86 static struct atomisp_map *acc_get_map(struct atomisp_sub_device *asd, in acc_get_map() argument 91 list_for_each_entry(atomisp_map, &asd->acc.memory_maps, list) { in acc_get_map() 99 static int acc_stop_acceleration(struct atomisp_sub_device *asd) in acc_stop_acceleration() argument 103 ret = atomisp_css_stop_acc_pipe(asd); in acc_stop_acceleration() 104 atomisp_css_destroy_acc_pipe(asd); in acc_stop_acceleration() 114 ida_destroy(&isp->asd[i].acc.ida); in atomisp_acc_cleanup() 117 void atomisp_acc_release(struct atomisp_sub_device *asd) in atomisp_acc_release() argument 123 if (asd->acc.pipeline) in atomisp_acc_release() [all …]
|
D | atomisp_ioctl.c | 609 atomisp_subdev_streaming_count(struct atomisp_sub_device *asd) in atomisp_subdev_streaming_count() argument 611 return asd->video_out_preview.capq.streaming in atomisp_subdev_streaming_count() 612 + asd->video_out_capture.capq.streaming in atomisp_subdev_streaming_count() 613 + asd->video_out_video_capture.capq.streaming in atomisp_subdev_streaming_count() 614 + asd->video_out_vf.capq.streaming in atomisp_subdev_streaming_count() 615 + asd->video_in.capq.streaming; in atomisp_subdev_streaming_count() 623 sum += isp->asd[i].streaming == in atomisp_streaming_count() 634 if (isp->asd[i].acc.pipeline) in atomisp_is_acc_enabled() 647 struct atomisp_sub_device *asd = atomisp_to_video_pipe(vdev)->asd; in atomisp_g_input() local 649 if (!asd) { in atomisp_g_input() [all …]
|
D | atomisp_subdev.c | 118 bool atomisp_subdev_format_conversion(struct atomisp_sub_device *asd, in atomisp_subdev_format_conversion() argument 123 sink = atomisp_subdev_get_ffmt(&asd->subdev, NULL, in atomisp_subdev_format_conversion() 126 src = atomisp_subdev_get_ffmt(&asd->subdev, NULL, in atomisp_subdev_format_conversion() 577 static int atomisp_get_sensor_bin_factor(struct atomisp_sub_device *asd) in atomisp_get_sensor_bin_factor() argument 580 struct atomisp_device *isp = asd->isp; in atomisp_get_sensor_bin_factor() 584 if (isp->inputs[asd->input_curr].type == FILE_INPUT || in atomisp_get_sensor_bin_factor() 585 isp->inputs[asd->input_curr].type == TEST_PATTERN) in atomisp_get_sensor_bin_factor() 590 v4l2_g_ctrl(isp->inputs[asd->input_curr].camera->ctrl_handler, in atomisp_get_sensor_bin_factor() 595 v4l2_g_ctrl(isp->inputs[asd->input_curr].camera->ctrl_handler, in atomisp_get_sensor_bin_factor() 732 static void isp_subdev_init_params(struct atomisp_sub_device *asd) in isp_subdev_init_params() argument [all …]
|
D | atomisp_acc.h | 42 void atomisp_acc_release(struct atomisp_sub_device *asd); 45 int atomisp_acc_load(struct atomisp_sub_device *asd, 49 int atomisp_acc_load_to_pipe(struct atomisp_sub_device *asd, 53 int atomisp_acc_unload(struct atomisp_sub_device *asd, 59 int atomisp_acc_map(struct atomisp_sub_device *asd, 65 int atomisp_acc_unmap(struct atomisp_sub_device *asd, 71 int atomisp_acc_s_mapped_arg(struct atomisp_sub_device *asd, 79 int atomisp_acc_start(struct atomisp_sub_device *asd, 87 int atomisp_acc_wait(struct atomisp_sub_device *asd, 94 void atomisp_acc_done(struct atomisp_sub_device *asd, unsigned int handle); [all …]
|
D | atomisp_compat_css20.h | 108 void atomisp_css_set_macc_config(struct atomisp_sub_device *asd, 111 void atomisp_css_set_ecd_config(struct atomisp_sub_device *asd, 114 void atomisp_css_set_ynr_config(struct atomisp_sub_device *asd, 117 void atomisp_css_set_fc_config(struct atomisp_sub_device *asd, 120 void atomisp_css_set_aa_config(struct atomisp_sub_device *asd, 123 void atomisp_css_set_baa_config(struct atomisp_sub_device *asd, 126 void atomisp_css_set_anr_config(struct atomisp_sub_device *asd, 129 void atomisp_css_set_xnr_config(struct atomisp_sub_device *asd, 132 void atomisp_css_set_cnr_config(struct atomisp_sub_device *asd, 135 void atomisp_css_set_ctc_config(struct atomisp_sub_device *asd, [all …]
|
D | atomisp_internal.h | 134 #define ATOMISP_SOC_CAMERA(asd) \ argument 135 (asd->isp->inputs[asd->input_curr].type == SOC_CAMERA \ 136 && asd->isp->inputs[asd->input_curr].camera_caps-> \ 137 sensor[asd->sensor_curr].stream_num == 1) 139 #define ATOMISP_USE_YUVPP(asd) \ argument 140 (ATOMISP_SOC_CAMERA(asd) && ATOMISP_CSS_SUPPORT_YUVPP && \ 141 !asd->copy_mode) 168 struct atomisp_sub_device *asd; member 235 struct atomisp_sub_device *asd; member 297 void atomisp_wdt_refresh(struct atomisp_sub_device *asd, unsigned int delay); [all …]
|
D | atomisp_file.c | 41 struct atomisp_sub_device *asd = &isp->asd[0]; in file_work() local 42 struct atomisp_video_pipe *out_pipe = &asd->video_in; in file_work() 46 if (asd->streaming != ATOMISP_DEVICE_STREAMING_ENABLED) in file_work() 50 isp_sink_fmt = *atomisp_subdev_get_ffmt(&asd->subdev, NULL, in file_work() 57 ia_css_stream_send_input_frame(asd->stream_env[ATOMISP_INPUT_STREAM_GENERAL].stream, in file_work() 68 struct atomisp_sub_device *asd = &isp->asd[0]; in file_input_s_stream() local 72 if (asd->streaming != ATOMISP_DEVICE_STREAMING_ENABLED) in file_input_s_stream() 90 struct atomisp_sub_device *asd = &isp->asd[0]; in file_input_get_fmt() local 95 isp_sink_fmt = atomisp_subdev_get_ffmt(&asd->subdev, NULL, in file_input_get_fmt()
|
D | atomisp_fops.h | 25 int atomisp_q_video_buffers_to_css(struct atomisp_sub_device *asd, 32 unsigned int atomisp_sub_dev_users(struct atomisp_sub_device *asd); 45 int atomisp_qbuffers_to_css(struct atomisp_sub_device *asd);
|
D | atomisp_csi2.c | 297 static void atomisp_csi2_configure_isp2401(struct atomisp_sub_device *asd) in atomisp_csi2_configure_isp2401() argument 361 struct atomisp_device *isp = asd->isp; in atomisp_csi2_configure_isp2401() 369 isp->inputs[asd->input_curr].camera); in atomisp_csi2_configure_isp2401() 374 (isp->inputs[asd->input_curr].camera->ctrl_handler, &ctrl) == 0) in atomisp_csi2_configure_isp2401() 395 void atomisp_csi2_configure(struct atomisp_sub_device *asd) in atomisp_csi2_configure() argument 397 if (IS_HWREVISION(asd->isp, ATOMISP_HW_REVISION_ISP2401)) in atomisp_csi2_configure() 398 atomisp_csi2_configure_isp2401(asd); in atomisp_csi2_configure()
|
D | atomisp_subdev.h | 99 struct atomisp_sub_device *asd; member 127 struct atomisp_sub_device *asd; member 436 bool atomisp_subdev_format_conversion(struct atomisp_sub_device *asd, 458 int atomisp_update_run_mode(struct atomisp_sub_device *asd); 460 void atomisp_subdev_cleanup_pending_events(struct atomisp_sub_device *asd); 462 void atomisp_subdev_unregister_entities(struct atomisp_sub_device *asd); 463 int atomisp_subdev_register_entities(struct atomisp_sub_device *asd,
|
D | atomisp_v4l2.c | 831 struct atomisp_sub_device *asd = &isp->asd[0]; in atomisp_suspend() local 843 if (asd->streaming != ATOMISP_DEVICE_STREAMING_DISABLED) { in atomisp_suspend() 1176 atomisp_subdev_unregister_entities(&isp->asd[i]); in atomisp_unregister_entities() 1244 struct atomisp_sub_device *asd = &isp->asd[i]; in atomisp_register_entities() local 1246 ret = atomisp_subdev_register_entities(asd, &isp->v4l2_dev); in atomisp_register_entities() 1252 &isp->asd[i - 1]); in atomisp_register_entities() 1258 struct atomisp_sub_device *asd = &isp->asd[i]; in atomisp_register_entities() local 1260 init_completion(&asd->init_done); in atomisp_register_entities() 1262 asd->delayed_init_workq = in atomisp_register_entities() 1265 if (!asd->delayed_init_workq) { in atomisp_register_entities() [all …]
|
/kernel/linux/linux-5.10/drivers/media/v4l2-core/ |
D | v4l2-async.c | 27 struct v4l2_async_subdev *asd) in v4l2_async_notifier_call_bound() argument 32 return n->ops->bound(n, subdev, asd); in v4l2_async_notifier_call_bound() 37 struct v4l2_async_subdev *asd) in v4l2_async_notifier_call_unbind() argument 42 n->ops->unbind(n, subdev, asd); in v4l2_async_notifier_call_unbind() 54 struct v4l2_subdev *sd, struct v4l2_async_subdev *asd) in match_i2c() argument 60 asd->match.i2c.adapter_id == client->adapter->nr && in match_i2c() 61 asd->match.i2c.address == client->addr; in match_i2c() 68 struct v4l2_subdev *sd, struct v4l2_async_subdev *asd) in match_devname() argument 70 return !strcmp(asd->match.device_name, dev_name(sd->dev)); in match_devname() 74 struct v4l2_subdev *sd, struct v4l2_async_subdev *asd) in match_fwnode() argument [all …]
|
D | v4l2-fwnode.c | 813 struct v4l2_async_subdev *asd; in v4l2_async_notifier_fwnode_parse_endpoint() local 816 asd = kzalloc(asd_struct_size, GFP_KERNEL); in v4l2_async_notifier_fwnode_parse_endpoint() 817 if (!asd) in v4l2_async_notifier_fwnode_parse_endpoint() 820 asd->match_type = V4L2_ASYNC_MATCH_FWNODE; in v4l2_async_notifier_fwnode_parse_endpoint() 821 asd->match.fwnode = in v4l2_async_notifier_fwnode_parse_endpoint() 823 if (!asd->match.fwnode) { in v4l2_async_notifier_fwnode_parse_endpoint() 836 ret = parse_endpoint ? parse_endpoint(dev, &vep, asd) : 0; in v4l2_async_notifier_fwnode_parse_endpoint() 848 ret = v4l2_async_notifier_add_subdev(notifier, asd); in v4l2_async_notifier_fwnode_parse_endpoint() 859 fwnode_handle_put(asd->match.fwnode); in v4l2_async_notifier_fwnode_parse_endpoint() 860 kfree(asd); in v4l2_async_notifier_fwnode_parse_endpoint() [all …]
|
/kernel/linux/linux-5.10/drivers/media/platform/xilinx/ |
D | xilinx-vipp.c | 37 struct v4l2_async_subdev asd; /* must be first */ member 43 to_xvip_entity(struct v4l2_async_subdev *asd) in to_xvip_entity() argument 45 return container_of(asd, struct xvip_graph_entity, asd); in to_xvip_entity() 57 struct v4l2_async_subdev *asd; in xvip_graph_find_entity() local 59 list_for_each_entry(asd, &xdev->notifier.asd_list, asd_list) { in xvip_graph_find_entity() 60 entity = to_xvip_entity(asd); in xvip_graph_find_entity() 61 if (entity->asd.match.fwnode == fwnode) in xvip_graph_find_entity() 85 ep = fwnode_graph_get_next_endpoint(entity->asd.match.fwnode, in xvip_graph_build_one() 288 struct v4l2_async_subdev *asd; in xvip_graph_notify_complete() local 294 list_for_each_entry(asd, &xdev->notifier.asd_list, asd_list) { in xvip_graph_notify_complete() [all …]
|
/kernel/linux/linux-5.10/drivers/staging/media/imx/ |
D | imx-media-of.c | 22 struct v4l2_async_subdev *asd; in imx_media_of_add_csi() local 32 asd = v4l2_async_notifier_add_fwnode_subdev(&imxmd->notifier, in imx_media_of_add_csi() 34 sizeof(*asd)); in imx_media_of_add_csi() 35 if (IS_ERR(asd)) { in imx_media_of_add_csi() 36 ret = PTR_ERR(asd); in imx_media_of_add_csi()
|
/kernel/linux/linux-5.10/drivers/staging/media/rkisp1/ |
D | rkisp1-dev.c | 185 struct v4l2_async_subdev *asd) in rkisp1_subdev_notifier_bound() argument 190 container_of(asd, struct rkisp1_sensor_async, asd); in rkisp1_subdev_notifier_bound() 209 struct v4l2_async_subdev *asd) in rkisp1_subdev_notifier_unbind() argument 212 container_of(asd, struct rkisp1_sensor_async, asd); in rkisp1_subdev_notifier_unbind() 255 struct v4l2_async_subdev *asd; in rkisp1_subdev_notifier() local 267 asd = v4l2_async_notifier_add_fwnode_remote_subdev(ntf, ep, in rkisp1_subdev_notifier() 269 if (IS_ERR(asd)) { in rkisp1_subdev_notifier() 270 ret = PTR_ERR(asd); in rkisp1_subdev_notifier() 274 rk_asd = container_of(asd, struct rkisp1_sensor_async, asd); in rkisp1_subdev_notifier()
|
/kernel/linux/linux-5.10/drivers/media/platform/atmel/ |
D | atmel-sama5d2-isc.c | 101 subdev_entity->asd = kzalloc(sizeof(*subdev_entity->asd), in isc_parse_dt() 103 if (!subdev_entity->asd) { in isc_parse_dt() 124 subdev_entity->asd->match_type = V4L2_ASYNC_MATCH_FWNODE; in isc_parse_dt() 125 subdev_entity->asd->match.fwnode = of_fwnode_handle(rem); in isc_parse_dt() 234 subdev_entity->asd); in atmel_isc_probe() 236 fwnode_handle_put(subdev_entity->asd->match.fwnode); in atmel_isc_probe() 237 kfree(subdev_entity->asd); in atmel_isc_probe()
|
/kernel/linux/linux-5.10/include/media/ |
D | v4l2-async.h | 110 struct v4l2_async_subdev *asd); 114 struct v4l2_async_subdev *asd); 162 struct v4l2_async_subdev *asd);
|
/kernel/linux/linux-5.10/drivers/media/platform/sunxi/sun4i-csi/ |
D | sun4i_csi.c | 45 struct v4l2_async_subdev *asd) in sun4i_csi_notify_bound() argument 121 struct v4l2_async_subdev *asd; in sun4i_csi_notifier_init() local 138 asd = v4l2_async_notifier_add_fwnode_remote_subdev(&csi->notifier, in sun4i_csi_notifier_init() 139 ep, sizeof(*asd)); in sun4i_csi_notifier_init() 140 if (IS_ERR(asd)) { in sun4i_csi_notifier_init() 141 ret = PTR_ERR(asd); in sun4i_csi_notifier_init()
|
/kernel/linux/linux-5.10/drivers/media/platform/ti-vpe/ |
D | cal.c | 409 struct v4l2_async_subdev asd; /* Must be first */ member 414 to_cal_asd(struct v4l2_async_subdev *asd) in to_cal_asd() argument 416 return container_of(asd, struct cal_v4l2_async_subdev, asd); in to_cal_asd() 421 struct v4l2_async_subdev *asd) in cal_async_notifier_bound() argument 423 struct cal_camerarx *phy = to_cal_asd(asd)->phy; in cal_async_notifier_bound() 466 struct v4l2_async_subdev *asd; in cal_async_notifier_register() local 473 asd = v4l2_async_notifier_add_fwnode_subdev(&cal->notifier, in cal_async_notifier_register() 476 if (IS_ERR(asd)) { in cal_async_notifier_register() 478 ret = PTR_ERR(asd); in cal_async_notifier_register() 482 casd = to_cal_asd(asd); in cal_async_notifier_register()
|