Lines Matching refs:dev
108 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_user_gen); in vivid_user_gen_s_ctrl() local
112 v4l2_info(&dev->v4l2_dev, "disconnect\n"); in vivid_user_gen_s_ctrl()
113 clear_bit(V4L2_FL_REGISTERED, &dev->vid_cap_dev.flags); in vivid_user_gen_s_ctrl()
114 clear_bit(V4L2_FL_REGISTERED, &dev->vid_out_dev.flags); in vivid_user_gen_s_ctrl()
115 clear_bit(V4L2_FL_REGISTERED, &dev->vbi_cap_dev.flags); in vivid_user_gen_s_ctrl()
116 clear_bit(V4L2_FL_REGISTERED, &dev->vbi_out_dev.flags); in vivid_user_gen_s_ctrl()
117 clear_bit(V4L2_FL_REGISTERED, &dev->sdr_cap_dev.flags); in vivid_user_gen_s_ctrl()
118 clear_bit(V4L2_FL_REGISTERED, &dev->radio_rx_dev.flags); in vivid_user_gen_s_ctrl()
119 clear_bit(V4L2_FL_REGISTERED, &dev->radio_tx_dev.flags); in vivid_user_gen_s_ctrl()
122 vivid_clear_fb(dev); in vivid_user_gen_s_ctrl()
125 dev->button_pressed = 30; in vivid_user_gen_s_ctrl()
287 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_user_vid); in vivid_user_vid_g_volatile_ctrl() local
291 dev->gain->val = dev->jiffies_vid_cap & 0xff; in vivid_user_vid_g_volatile_ctrl()
299 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_user_vid); in vivid_user_vid_s_ctrl() local
303 dev->input_brightness[dev->input] = ctrl->val - dev->input * 128; in vivid_user_vid_s_ctrl()
304 tpg_s_brightness(&dev->tpg, dev->input_brightness[dev->input]); in vivid_user_vid_s_ctrl()
307 tpg_s_contrast(&dev->tpg, ctrl->val); in vivid_user_vid_s_ctrl()
310 tpg_s_saturation(&dev->tpg, ctrl->val); in vivid_user_vid_s_ctrl()
313 tpg_s_hue(&dev->tpg, ctrl->val); in vivid_user_vid_s_ctrl()
316 dev->hflip = ctrl->val; in vivid_user_vid_s_ctrl()
317 tpg_s_hflip(&dev->tpg, dev->sensor_hflip ^ dev->hflip); in vivid_user_vid_s_ctrl()
320 dev->vflip = ctrl->val; in vivid_user_vid_s_ctrl()
321 tpg_s_vflip(&dev->tpg, dev->sensor_vflip ^ dev->vflip); in vivid_user_vid_s_ctrl()
324 tpg_s_alpha_component(&dev->tpg, ctrl->val); in vivid_user_vid_s_ctrl()
351 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_vid_cap); in vivid_vid_cap_s_ctrl() local
356 vivid_update_quality(dev); in vivid_vid_cap_s_ctrl()
357 tpg_s_pattern(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
360 tpg_s_colorspace(&dev->tpg, colorspaces[ctrl->val]); in vivid_vid_cap_s_ctrl()
361 vivid_send_source_change(dev, TV); in vivid_vid_cap_s_ctrl()
362 vivid_send_source_change(dev, SVID); in vivid_vid_cap_s_ctrl()
363 vivid_send_source_change(dev, HDMI); in vivid_vid_cap_s_ctrl()
364 vivid_send_source_change(dev, WEBCAM); in vivid_vid_cap_s_ctrl()
367 tpg_s_xfer_func(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
368 vivid_send_source_change(dev, TV); in vivid_vid_cap_s_ctrl()
369 vivid_send_source_change(dev, SVID); in vivid_vid_cap_s_ctrl()
370 vivid_send_source_change(dev, HDMI); in vivid_vid_cap_s_ctrl()
371 vivid_send_source_change(dev, WEBCAM); in vivid_vid_cap_s_ctrl()
374 tpg_s_ycbcr_enc(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
375 vivid_send_source_change(dev, TV); in vivid_vid_cap_s_ctrl()
376 vivid_send_source_change(dev, SVID); in vivid_vid_cap_s_ctrl()
377 vivid_send_source_change(dev, HDMI); in vivid_vid_cap_s_ctrl()
378 vivid_send_source_change(dev, WEBCAM); in vivid_vid_cap_s_ctrl()
381 tpg_s_quantization(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
382 vivid_send_source_change(dev, TV); in vivid_vid_cap_s_ctrl()
383 vivid_send_source_change(dev, SVID); in vivid_vid_cap_s_ctrl()
384 vivid_send_source_change(dev, HDMI); in vivid_vid_cap_s_ctrl()
385 vivid_send_source_change(dev, WEBCAM); in vivid_vid_cap_s_ctrl()
388 if (!vivid_is_hdmi_cap(dev)) in vivid_vid_cap_s_ctrl()
390 tpg_s_rgb_range(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
393 tpg_s_real_rgb_range(&dev->tpg, ctrl->val ? in vivid_vid_cap_s_ctrl()
397 tpg_s_alpha_mode(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
400 tpg_s_mv_hor_mode(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
403 tpg_s_mv_vert_mode(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
406 dev->osd_mode = ctrl->val; in vivid_vid_cap_s_ctrl()
409 tpg_s_perc_fill(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
411 dev->must_blank[i] = ctrl->val < 100; in vivid_vid_cap_s_ctrl()
414 tpg_s_insert_sav(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
417 tpg_s_insert_eav(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
420 dev->sensor_hflip = ctrl->val; in vivid_vid_cap_s_ctrl()
421 tpg_s_hflip(&dev->tpg, dev->sensor_hflip ^ dev->hflip); in vivid_vid_cap_s_ctrl()
424 dev->sensor_vflip = ctrl->val; in vivid_vid_cap_s_ctrl()
425 tpg_s_vflip(&dev->tpg, dev->sensor_vflip ^ dev->vflip); in vivid_vid_cap_s_ctrl()
428 dev->has_crop_cap = ctrl->val; in vivid_vid_cap_s_ctrl()
429 vivid_update_format_cap(dev, true); in vivid_vid_cap_s_ctrl()
432 dev->has_compose_cap = ctrl->val; in vivid_vid_cap_s_ctrl()
433 vivid_update_format_cap(dev, true); in vivid_vid_cap_s_ctrl()
436 dev->has_scaler_cap = ctrl->val; in vivid_vid_cap_s_ctrl()
437 vivid_update_format_cap(dev, true); in vivid_vid_cap_s_ctrl()
440 tpg_s_show_border(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
443 tpg_s_show_square(&dev->tpg, ctrl->val); in vivid_vid_cap_s_ctrl()
446 dev->std_aspect_ratio = ctrl->val; in vivid_vid_cap_s_ctrl()
447 tpg_s_video_aspect(&dev->tpg, vivid_get_video_aspect(dev)); in vivid_vid_cap_s_ctrl()
450 dev->dv_timings_signal_mode = dev->ctrl_dv_timings_signal_mode->val; in vivid_vid_cap_s_ctrl()
451 if (dev->dv_timings_signal_mode == SELECTED_DV_TIMINGS) in vivid_vid_cap_s_ctrl()
452 dev->query_dv_timings = dev->ctrl_dv_timings->val; in vivid_vid_cap_s_ctrl()
453 v4l2_ctrl_activate(dev->ctrl_dv_timings, in vivid_vid_cap_s_ctrl()
454 dev->dv_timings_signal_mode == SELECTED_DV_TIMINGS); in vivid_vid_cap_s_ctrl()
455 vivid_update_quality(dev); in vivid_vid_cap_s_ctrl()
456 vivid_send_source_change(dev, HDMI); in vivid_vid_cap_s_ctrl()
459 dev->dv_timings_aspect_ratio = ctrl->val; in vivid_vid_cap_s_ctrl()
460 tpg_s_video_aspect(&dev->tpg, vivid_get_video_aspect(dev)); in vivid_vid_cap_s_ctrl()
463 dev->tstamp_src_is_soe = ctrl->val; in vivid_vid_cap_s_ctrl()
464 dev->vb_vid_cap_q.timestamp_flags &= ~V4L2_BUF_FLAG_TSTAMP_SRC_MASK; in vivid_vid_cap_s_ctrl()
465 if (dev->tstamp_src_is_soe) in vivid_vid_cap_s_ctrl()
466 dev->vb_vid_cap_q.timestamp_flags |= V4L2_BUF_FLAG_TSTAMP_SRC_SOE; in vivid_vid_cap_s_ctrl()
469 dev->edid_max_blocks = ctrl->val; in vivid_vid_cap_s_ctrl()
470 if (dev->edid_blocks > dev->edid_max_blocks) in vivid_vid_cap_s_ctrl()
471 dev->edid_blocks = dev->edid_max_blocks; in vivid_vid_cap_s_ctrl()
805 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_loop_cap); in vivid_loop_cap_s_ctrl() local
809 dev->loop_video = ctrl->val; in vivid_loop_cap_s_ctrl()
810 vivid_update_quality(dev); in vivid_loop_cap_s_ctrl()
811 vivid_send_source_change(dev, SVID); in vivid_loop_cap_s_ctrl()
812 vivid_send_source_change(dev, HDMI); in vivid_loop_cap_s_ctrl()
836 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_vbi_cap); in vivid_vbi_cap_s_ctrl() local
840 dev->vbi_cap_interlaced = ctrl->val; in vivid_vbi_cap_s_ctrl()
864 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_vid_out); in vivid_vid_out_s_ctrl() local
865 struct v4l2_bt_timings *bt = &dev->dv_timings_out.bt; in vivid_vid_out_s_ctrl()
869 dev->has_crop_out = ctrl->val; in vivid_vid_out_s_ctrl()
870 vivid_update_format_out(dev); in vivid_vid_out_s_ctrl()
873 dev->has_compose_out = ctrl->val; in vivid_vid_out_s_ctrl()
874 vivid_update_format_out(dev); in vivid_vid_out_s_ctrl()
877 dev->has_scaler_out = ctrl->val; in vivid_vid_out_s_ctrl()
878 vivid_update_format_out(dev); in vivid_vid_out_s_ctrl()
881 dev->dvi_d_out = ctrl->val == V4L2_DV_TX_MODE_DVI_D; in vivid_vid_out_s_ctrl()
882 if (!vivid_is_hdmi_out(dev)) in vivid_vid_out_s_ctrl()
884 if (!dev->dvi_d_out && (bt->flags & V4L2_DV_FL_IS_CE_VIDEO)) { in vivid_vid_out_s_ctrl()
886 dev->colorspace_out = V4L2_COLORSPACE_SMPTE170M; in vivid_vid_out_s_ctrl()
888 dev->colorspace_out = V4L2_COLORSPACE_REC709; in vivid_vid_out_s_ctrl()
889 dev->quantization_out = V4L2_QUANTIZATION_DEFAULT; in vivid_vid_out_s_ctrl()
891 dev->colorspace_out = V4L2_COLORSPACE_SRGB; in vivid_vid_out_s_ctrl()
892 dev->quantization_out = dev->dvi_d_out ? in vivid_vid_out_s_ctrl()
896 if (dev->loop_video) in vivid_vid_out_s_ctrl()
897 vivid_send_source_change(dev, HDMI); in vivid_vid_out_s_ctrl()
942 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_streaming); in vivid_streaming_s_ctrl() local
947 dev->dqbuf_error = true; in vivid_streaming_s_ctrl()
950 dev->perc_dropped_buffers = ctrl->val; in vivid_streaming_s_ctrl()
953 dev->queue_setup_error = true; in vivid_streaming_s_ctrl()
956 dev->buf_prepare_error = true; in vivid_streaming_s_ctrl()
959 dev->start_streaming_error = true; in vivid_streaming_s_ctrl()
962 if (vb2_start_streaming_called(&dev->vb_vid_cap_q)) in vivid_streaming_s_ctrl()
963 vb2_queue_error(&dev->vb_vid_cap_q); in vivid_streaming_s_ctrl()
964 if (vb2_start_streaming_called(&dev->vb_vbi_cap_q)) in vivid_streaming_s_ctrl()
965 vb2_queue_error(&dev->vb_vbi_cap_q); in vivid_streaming_s_ctrl()
966 if (vb2_start_streaming_called(&dev->vb_vid_out_q)) in vivid_streaming_s_ctrl()
967 vb2_queue_error(&dev->vb_vid_out_q); in vivid_streaming_s_ctrl()
968 if (vb2_start_streaming_called(&dev->vb_vbi_out_q)) in vivid_streaming_s_ctrl()
969 vb2_queue_error(&dev->vb_vbi_out_q); in vivid_streaming_s_ctrl()
970 if (vb2_start_streaming_called(&dev->vb_sdr_cap_q)) in vivid_streaming_s_ctrl()
971 vb2_queue_error(&dev->vb_sdr_cap_q); in vivid_streaming_s_ctrl()
974 dev->seq_wrap = ctrl->val; in vivid_streaming_s_ctrl()
977 dev->time_wrap = ctrl->val; in vivid_streaming_s_ctrl()
979 dev->time_wrap_offset = 0; in vivid_streaming_s_ctrl()
983 dev->time_wrap_offset = -tv.tv_sec - 16; in vivid_streaming_s_ctrl()
1061 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_sdtv_cap); in vivid_sdtv_cap_s_ctrl() local
1065 dev->std_signal_mode = dev->ctrl_std_signal_mode->val; in vivid_sdtv_cap_s_ctrl()
1066 if (dev->std_signal_mode == SELECTED_STD) in vivid_sdtv_cap_s_ctrl()
1067 dev->query_std = vivid_standard[dev->ctrl_standard->val]; in vivid_sdtv_cap_s_ctrl()
1068 v4l2_ctrl_activate(dev->ctrl_standard, dev->std_signal_mode == SELECTED_STD); in vivid_sdtv_cap_s_ctrl()
1069 vivid_update_quality(dev); in vivid_sdtv_cap_s_ctrl()
1070 vivid_send_source_change(dev, TV); in vivid_sdtv_cap_s_ctrl()
1071 vivid_send_source_change(dev, SVID); in vivid_sdtv_cap_s_ctrl()
1116 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_radio_rx); in vivid_radio_rx_s_ctrl() local
1120 dev->radio_rx_hw_seek_mode = ctrl->val; in vivid_radio_rx_s_ctrl()
1123 dev->radio_rx_hw_seek_prog_lim = ctrl->val; in vivid_radio_rx_s_ctrl()
1126 dev->rds_gen.use_rbds = ctrl->val; in vivid_radio_rx_s_ctrl()
1129 dev->radio_rx_rds_controls = ctrl->val; in vivid_radio_rx_s_ctrl()
1130 dev->radio_rx_caps &= ~V4L2_CAP_READWRITE; in vivid_radio_rx_s_ctrl()
1131 dev->radio_rx_rds_use_alternates = false; in vivid_radio_rx_s_ctrl()
1132 if (!dev->radio_rx_rds_controls) { in vivid_radio_rx_s_ctrl()
1133 dev->radio_rx_caps |= V4L2_CAP_READWRITE; in vivid_radio_rx_s_ctrl()
1134 __v4l2_ctrl_s_ctrl(dev->radio_rx_rds_pty, 0); in vivid_radio_rx_s_ctrl()
1135 __v4l2_ctrl_s_ctrl(dev->radio_rx_rds_ta, 0); in vivid_radio_rx_s_ctrl()
1136 __v4l2_ctrl_s_ctrl(dev->radio_rx_rds_tp, 0); in vivid_radio_rx_s_ctrl()
1137 __v4l2_ctrl_s_ctrl(dev->radio_rx_rds_ms, 0); in vivid_radio_rx_s_ctrl()
1138 __v4l2_ctrl_s_ctrl_string(dev->radio_rx_rds_psname, ""); in vivid_radio_rx_s_ctrl()
1139 __v4l2_ctrl_s_ctrl_string(dev->radio_rx_rds_radiotext, ""); in vivid_radio_rx_s_ctrl()
1141 v4l2_ctrl_activate(dev->radio_rx_rds_pty, dev->radio_rx_rds_controls); in vivid_radio_rx_s_ctrl()
1142 v4l2_ctrl_activate(dev->radio_rx_rds_psname, dev->radio_rx_rds_controls); in vivid_radio_rx_s_ctrl()
1143 v4l2_ctrl_activate(dev->radio_rx_rds_radiotext, dev->radio_rx_rds_controls); in vivid_radio_rx_s_ctrl()
1144 v4l2_ctrl_activate(dev->radio_rx_rds_ta, dev->radio_rx_rds_controls); in vivid_radio_rx_s_ctrl()
1145 v4l2_ctrl_activate(dev->radio_rx_rds_tp, dev->radio_rx_rds_controls); in vivid_radio_rx_s_ctrl()
1146 v4l2_ctrl_activate(dev->radio_rx_rds_ms, dev->radio_rx_rds_controls); in vivid_radio_rx_s_ctrl()
1149 dev->radio_rx_rds_enabled = ctrl->val; in vivid_radio_rx_s_ctrl()
1213 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_radio_tx); in vivid_radio_tx_s_ctrl() local
1217 dev->radio_tx_rds_controls = ctrl->val; in vivid_radio_tx_s_ctrl()
1218 dev->radio_tx_caps &= ~V4L2_CAP_READWRITE; in vivid_radio_tx_s_ctrl()
1219 if (!dev->radio_tx_rds_controls) in vivid_radio_tx_s_ctrl()
1220 dev->radio_tx_caps |= V4L2_CAP_READWRITE; in vivid_radio_tx_s_ctrl()
1223 if (dev->radio_rx_rds_controls) in vivid_radio_tx_s_ctrl()
1224 v4l2_ctrl_s_ctrl(dev->radio_rx_rds_pty, ctrl->val); in vivid_radio_tx_s_ctrl()
1227 if (dev->radio_rx_rds_controls) in vivid_radio_tx_s_ctrl()
1228 v4l2_ctrl_s_ctrl_string(dev->radio_rx_rds_psname, ctrl->p_new.p_char); in vivid_radio_tx_s_ctrl()
1231 if (dev->radio_rx_rds_controls) in vivid_radio_tx_s_ctrl()
1232 v4l2_ctrl_s_ctrl_string(dev->radio_rx_rds_radiotext, ctrl->p_new.p_char); in vivid_radio_tx_s_ctrl()
1235 if (dev->radio_rx_rds_controls) in vivid_radio_tx_s_ctrl()
1236 v4l2_ctrl_s_ctrl(dev->radio_rx_rds_ta, ctrl->val); in vivid_radio_tx_s_ctrl()
1239 if (dev->radio_rx_rds_controls) in vivid_radio_tx_s_ctrl()
1240 v4l2_ctrl_s_ctrl(dev->radio_rx_rds_tp, ctrl->val); in vivid_radio_tx_s_ctrl()
1243 if (dev->radio_rx_rds_controls) in vivid_radio_tx_s_ctrl()
1244 v4l2_ctrl_s_ctrl(dev->radio_rx_rds_ms, ctrl->val); in vivid_radio_tx_s_ctrl()
1269 struct vivid_dev *dev = container_of(ctrl->handler, struct vivid_dev, ctrl_hdl_sdr_cap); in vivid_sdr_cap_s_ctrl() local
1273 dev->sdr_fm_deviation = ctrl->val; in vivid_sdr_cap_s_ctrl()
1303 int vivid_create_controls(struct vivid_dev *dev, bool show_ccs_cap, in vivid_create_controls() argument
1307 struct v4l2_ctrl_handler *hdl_user_gen = &dev->ctrl_hdl_user_gen; in vivid_create_controls()
1308 struct v4l2_ctrl_handler *hdl_user_vid = &dev->ctrl_hdl_user_vid; in vivid_create_controls()
1309 struct v4l2_ctrl_handler *hdl_user_aud = &dev->ctrl_hdl_user_aud; in vivid_create_controls()
1310 struct v4l2_ctrl_handler *hdl_streaming = &dev->ctrl_hdl_streaming; in vivid_create_controls()
1311 struct v4l2_ctrl_handler *hdl_sdtv_cap = &dev->ctrl_hdl_sdtv_cap; in vivid_create_controls()
1312 struct v4l2_ctrl_handler *hdl_loop_cap = &dev->ctrl_hdl_loop_cap; in vivid_create_controls()
1313 struct v4l2_ctrl_handler *hdl_vid_cap = &dev->ctrl_hdl_vid_cap; in vivid_create_controls()
1314 struct v4l2_ctrl_handler *hdl_vid_out = &dev->ctrl_hdl_vid_out; in vivid_create_controls()
1315 struct v4l2_ctrl_handler *hdl_vbi_cap = &dev->ctrl_hdl_vbi_cap; in vivid_create_controls()
1316 struct v4l2_ctrl_handler *hdl_vbi_out = &dev->ctrl_hdl_vbi_out; in vivid_create_controls()
1317 struct v4l2_ctrl_handler *hdl_radio_rx = &dev->ctrl_hdl_radio_rx; in vivid_create_controls()
1318 struct v4l2_ctrl_handler *hdl_radio_tx = &dev->ctrl_hdl_radio_tx; in vivid_create_controls()
1319 struct v4l2_ctrl_handler *hdl_sdr_cap = &dev->ctrl_hdl_sdr_cap; in vivid_create_controls()
1356 dev->volume = v4l2_ctrl_new_std(hdl_user_aud, NULL, in vivid_create_controls()
1358 dev->mute = v4l2_ctrl_new_std(hdl_user_aud, NULL, in vivid_create_controls()
1360 if (dev->has_vid_cap) { in vivid_create_controls()
1361 dev->brightness = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1364 dev->input_brightness[i] = 128; in vivid_create_controls()
1365 dev->contrast = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1367 dev->saturation = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1369 dev->hue = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1375 dev->autogain = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1377 dev->gain = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1379 dev->alpha = v4l2_ctrl_new_std(hdl_user_vid, &vivid_user_vid_ctrl_ops, in vivid_create_controls()
1382 dev->button = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_button, NULL); in vivid_create_controls()
1383 dev->int32 = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_int32, NULL); in vivid_create_controls()
1384 dev->int64 = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_int64, NULL); in vivid_create_controls()
1385 dev->boolean = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_boolean, NULL); in vivid_create_controls()
1386 dev->menu = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_menu, NULL); in vivid_create_controls()
1387 dev->string = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_string, NULL); in vivid_create_controls()
1388 dev->bitmask = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_bitmask, NULL); in vivid_create_controls()
1389 dev->int_menu = v4l2_ctrl_new_custom(hdl_user_gen, &vivid_ctrl_int_menu, NULL); in vivid_create_controls()
1394 if (dev->has_vid_cap) { in vivid_create_controls()
1405 dev->test_pattern = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1418 dev->ctrl_has_crop_cap = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1420 dev->ctrl_has_compose_cap = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1422 dev->ctrl_has_scaler_cap = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1427 dev->colorspace = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1435 if (dev->has_vid_out && show_ccs_out) { in vivid_create_controls()
1436 dev->ctrl_has_crop_out = v4l2_ctrl_new_custom(hdl_vid_out, in vivid_create_controls()
1438 dev->ctrl_has_compose_out = v4l2_ctrl_new_custom(hdl_vid_out, in vivid_create_controls()
1440 dev->ctrl_has_scaler_out = v4l2_ctrl_new_custom(hdl_vid_out, in vivid_create_controls()
1462 if (has_sdtv && (dev->has_vid_cap || dev->has_vbi_cap)) { in vivid_create_controls()
1463 if (dev->has_vid_cap) in vivid_create_controls()
1465 dev->ctrl_std_signal_mode = v4l2_ctrl_new_custom(hdl_sdtv_cap, in vivid_create_controls()
1467 dev->ctrl_standard = v4l2_ctrl_new_custom(hdl_sdtv_cap, in vivid_create_controls()
1469 if (dev->ctrl_std_signal_mode) in vivid_create_controls()
1470 v4l2_ctrl_cluster(2, &dev->ctrl_std_signal_mode); in vivid_create_controls()
1471 if (dev->has_raw_vbi_cap) in vivid_create_controls()
1475 if (has_hdmi && dev->has_vid_cap) { in vivid_create_controls()
1476 dev->ctrl_dv_timings_signal_mode = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1479 vivid_ctrl_dv_timings.max = dev->query_dv_timings_size - 1; in vivid_create_controls()
1481 (const char * const *)dev->query_dv_timings_qmenu; in vivid_create_controls()
1482 dev->ctrl_dv_timings = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1484 if (dev->ctrl_dv_timings_signal_mode) in vivid_create_controls()
1485 v4l2_ctrl_cluster(2, &dev->ctrl_dv_timings_signal_mode); in vivid_create_controls()
1489 dev->real_rgb_range_cap = v4l2_ctrl_new_custom(hdl_vid_cap, in vivid_create_controls()
1491 dev->rgb_range_cap = v4l2_ctrl_new_std_menu(hdl_vid_cap, in vivid_create_controls()
1496 if (has_hdmi && dev->has_vid_out) { in vivid_create_controls()
1501 dev->ctrl_tx_rgb_range = v4l2_ctrl_new_std_menu(hdl_vid_out, NULL, in vivid_create_controls()
1504 dev->ctrl_tx_mode = v4l2_ctrl_new_std_menu(hdl_vid_out, NULL, in vivid_create_controls()
1508 if ((dev->has_vid_cap && dev->has_vid_out) || in vivid_create_controls()
1509 (dev->has_vbi_cap && dev->has_vbi_out)) in vivid_create_controls()
1512 if (dev->has_fb) in vivid_create_controls()
1515 if (dev->has_radio_rx) { in vivid_create_controls()
1522 dev->radio_rx_rds_pty = v4l2_ctrl_new_std(hdl_radio_rx, in vivid_create_controls()
1525 dev->radio_rx_rds_psname = v4l2_ctrl_new_std(hdl_radio_rx, in vivid_create_controls()
1528 dev->radio_rx_rds_radiotext = v4l2_ctrl_new_std(hdl_radio_rx, in vivid_create_controls()
1531 dev->radio_rx_rds_ta = v4l2_ctrl_new_std(hdl_radio_rx, in vivid_create_controls()
1534 dev->radio_rx_rds_tp = v4l2_ctrl_new_std(hdl_radio_rx, in vivid_create_controls()
1537 dev->radio_rx_rds_ms = v4l2_ctrl_new_std(hdl_radio_rx, in vivid_create_controls()
1541 if (dev->has_radio_tx) { in vivid_create_controls()
1544 dev->radio_tx_rds_pi = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1547 dev->radio_tx_rds_pty = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1550 dev->radio_tx_rds_psname = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1553 if (dev->radio_tx_rds_psname) in vivid_create_controls()
1554 v4l2_ctrl_s_ctrl_string(dev->radio_tx_rds_psname, "VIVID-TX"); in vivid_create_controls()
1555 dev->radio_tx_rds_radiotext = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1558 if (dev->radio_tx_rds_radiotext) in vivid_create_controls()
1559 v4l2_ctrl_s_ctrl_string(dev->radio_tx_rds_radiotext, in vivid_create_controls()
1561 dev->radio_tx_rds_mono_stereo = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1564 dev->radio_tx_rds_art_head = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1567 dev->radio_tx_rds_compressed = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1570 dev->radio_tx_rds_dyn_pty = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1573 dev->radio_tx_rds_ta = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1576 dev->radio_tx_rds_tp = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1579 dev->radio_tx_rds_ms = v4l2_ctrl_new_std(hdl_radio_tx, in vivid_create_controls()
1583 if (dev->has_sdr_cap) { in vivid_create_controls()
1600 if (dev->autogain) in vivid_create_controls()
1601 v4l2_ctrl_auto_cluster(2, &dev->autogain, 0, true); in vivid_create_controls()
1603 if (dev->has_vid_cap) { in vivid_create_controls()
1612 dev->vid_cap_dev.ctrl_handler = hdl_vid_cap; in vivid_create_controls()
1614 if (dev->has_vid_out) { in vivid_create_controls()
1620 dev->vid_out_dev.ctrl_handler = hdl_vid_out; in vivid_create_controls()
1622 if (dev->has_vbi_cap) { in vivid_create_controls()
1629 dev->vbi_cap_dev.ctrl_handler = hdl_vbi_cap; in vivid_create_controls()
1631 if (dev->has_vbi_out) { in vivid_create_controls()
1636 dev->vbi_out_dev.ctrl_handler = hdl_vbi_out; in vivid_create_controls()
1638 if (dev->has_radio_rx) { in vivid_create_controls()
1643 dev->radio_rx_dev.ctrl_handler = hdl_radio_rx; in vivid_create_controls()
1645 if (dev->has_radio_tx) { in vivid_create_controls()
1650 dev->radio_tx_dev.ctrl_handler = hdl_radio_tx; in vivid_create_controls()
1652 if (dev->has_sdr_cap) { in vivid_create_controls()
1657 dev->sdr_cap_dev.ctrl_handler = hdl_sdr_cap; in vivid_create_controls()
1662 void vivid_free_controls(struct vivid_dev *dev) in vivid_free_controls() argument
1664 v4l2_ctrl_handler_free(&dev->ctrl_hdl_vid_cap); in vivid_free_controls()
1665 v4l2_ctrl_handler_free(&dev->ctrl_hdl_vid_out); in vivid_free_controls()
1666 v4l2_ctrl_handler_free(&dev->ctrl_hdl_vbi_cap); in vivid_free_controls()
1667 v4l2_ctrl_handler_free(&dev->ctrl_hdl_vbi_out); in vivid_free_controls()
1668 v4l2_ctrl_handler_free(&dev->ctrl_hdl_radio_rx); in vivid_free_controls()
1669 v4l2_ctrl_handler_free(&dev->ctrl_hdl_radio_tx); in vivid_free_controls()
1670 v4l2_ctrl_handler_free(&dev->ctrl_hdl_sdr_cap); in vivid_free_controls()
1671 v4l2_ctrl_handler_free(&dev->ctrl_hdl_user_gen); in vivid_free_controls()
1672 v4l2_ctrl_handler_free(&dev->ctrl_hdl_user_vid); in vivid_free_controls()
1673 v4l2_ctrl_handler_free(&dev->ctrl_hdl_user_aud); in vivid_free_controls()
1674 v4l2_ctrl_handler_free(&dev->ctrl_hdl_streaming); in vivid_free_controls()
1675 v4l2_ctrl_handler_free(&dev->ctrl_hdl_sdtv_cap); in vivid_free_controls()
1676 v4l2_ctrl_handler_free(&dev->ctrl_hdl_loop_cap); in vivid_free_controls()