Home
last modified time | relevance | path

Searched refs:asd (Results 1 – 25 of 76) sorted by relevance

1234

/kernel/linux/linux-5.10/drivers/staging/media/atomisp/pci/
Datomisp_compat.h49 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 …]
Datomisp_compat_css20.c192 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 …]
Datomisp_cmd.c111 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 …]
Datomisp_cmd.h61 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 …]
Datomisp_fops.c87 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 …]
Datomisp_acc.c75 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 …]
Datomisp_ioctl.c609 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 …]
Datomisp_subdev.c118 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 …]
Datomisp_acc.h42 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 …]
Datomisp_compat_css20.h108 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 …]
Datomisp_internal.h134 #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 …]
Datomisp_file.c41 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()
Datomisp_fops.h25 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);
Datomisp_csi2.c297 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()
Datomisp_subdev.h99 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,
Datomisp_v4l2.c831 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/
Dv4l2-async.c27 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 …]
Dv4l2-fwnode.c813 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/
Dxilinx-vipp.c37 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/
Dimx-media-of.c22 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/
Drkisp1-dev.c185 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/
Datmel-sama5d2-isc.c101 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/
Dv4l2-async.h110 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/
Dsun4i_csi.c45 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/
Dcal.c409 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()

1234