Lines Matching full:cx
147 struct cx18 *cx = id->cx; in cx18_g_fmt_vid_cap() local
148 struct cx18_stream *s = &cx->streams[id->type]; in cx18_g_fmt_vid_cap()
151 pixfmt->width = cx->cxhdl.width; in cx18_g_fmt_vid_cap()
152 pixfmt->height = cx->cxhdl.height; in cx18_g_fmt_vid_cap()
170 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_fmt_vbi_cap() local
177 vbifmt->start[0] = cx->vbi.start[0]; in cx18_g_fmt_vbi_cap()
178 vbifmt->start[1] = cx->vbi.start[1]; in cx18_g_fmt_vbi_cap()
179 vbifmt->count[0] = vbifmt->count[1] = cx->vbi.count; in cx18_g_fmt_vbi_cap()
189 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_fmt_sliced_vbi_cap() local
204 if (v4l2_subdev_call(cx->sd_av, vbi, g_sliced_fmt, &fmt->fmt.sliced)) in cx18_g_fmt_sliced_vbi_cap()
215 struct cx18 *cx = id->cx; in cx18_try_fmt_vid_cap() local
227 h = min(h, cx->is_50hz ? 576 : 480); in cx18_try_fmt_vid_cap()
244 struct cx18 *cx = fh2id(fh)->cx; in cx18_try_fmt_sliced_vbi_cap() local
253 cx18_expand_service_set(vbifmt, cx->is_50hz); in cx18_try_fmt_sliced_vbi_cap()
255 if (check_service_set(vbifmt, cx->is_50hz)) in cx18_try_fmt_sliced_vbi_cap()
264 struct cx18 *cx = id->cx; in cx18_s_fmt_vid_cap() local
268 struct cx18_stream *s = &cx->streams[id->type]; in cx18_s_fmt_vid_cap()
278 if (cx->cxhdl.width == w && cx->cxhdl.height == h && in cx18_s_fmt_vid_cap()
282 if (atomic_read(&cx->ana_capturing) > 0) in cx18_s_fmt_vid_cap()
296 format.format.width = cx->cxhdl.width = w; in cx18_s_fmt_vid_cap()
297 format.format.height = cx->cxhdl.height = h; in cx18_s_fmt_vid_cap()
299 v4l2_subdev_call(cx->sd_av, pad, set_fmt, NULL, &format); in cx18_s_fmt_vid_cap()
307 struct cx18 *cx = id->cx; in cx18_s_fmt_vbi_cap() local
314 if (!cx18_raw_vbi(cx) && atomic_read(&cx->ana_capturing) > 0) in cx18_s_fmt_vbi_cap()
322 ret = v4l2_subdev_call(cx->sd_av, vbi, s_raw_fmt, &fmt->fmt.vbi); in cx18_s_fmt_vbi_cap()
327 cx->vbi.sliced_in->service_set = 0; in cx18_s_fmt_vbi_cap()
328 cx->vbi.in.type = V4L2_BUF_TYPE_VBI_CAPTURE; in cx18_s_fmt_vbi_cap()
337 struct cx18 *cx = id->cx; in cx18_s_fmt_sliced_vbi_cap() local
347 if (cx18_raw_vbi(cx) && atomic_read(&cx->ana_capturing) > 0) in cx18_s_fmt_sliced_vbi_cap()
355 ret = v4l2_subdev_call(cx->sd_av, vbi, s_sliced_fmt, &fmt->fmt.sliced); in cx18_s_fmt_sliced_vbi_cap()
359 cx->vbi.in.type = V4L2_BUF_TYPE_SLICED_VBI_CAPTURE; in cx18_s_fmt_sliced_vbi_cap()
360 memcpy(cx->vbi.sliced_in, vbifmt, sizeof(*cx->vbi.sliced_in)); in cx18_s_fmt_sliced_vbi_cap()
368 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_register() local
375 reg->val = cx18_read_enc(cx, reg->reg); in cx18_g_register()
382 struct cx18 *cx = fh2id(fh)->cx; in cx18_s_register() local
388 cx18_write_enc(cx, reg->val, reg->reg); in cx18_s_register()
398 struct cx18 *cx = id->cx; in cx18_querycap() local
401 strlcpy(vcap->card, cx->card_name, sizeof(vcap->card)); in cx18_querycap()
403 "PCI:%s", pci_name(cx->pci_dev)); in cx18_querycap()
404 vcap->capabilities = cx->v4l2_cap; /* capabilities */ in cx18_querycap()
412 struct cx18 *cx = fh2id(fh)->cx; in cx18_enumaudio() local
414 return cx18_get_audio_input(cx, vin->index, vin); in cx18_enumaudio()
419 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_audio() local
421 vin->index = cx->audio_input; in cx18_g_audio()
422 return cx18_get_audio_input(cx, vin->index, vin); in cx18_g_audio()
427 struct cx18 *cx = fh2id(fh)->cx; in cx18_s_audio() local
429 if (vout->index >= cx->nof_audio_inputs) in cx18_s_audio()
431 cx->audio_input = vout->index; in cx18_s_audio()
432 cx18_audio_set_io(cx); in cx18_s_audio()
438 struct cx18 *cx = fh2id(fh)->cx; in cx18_enum_input() local
441 return cx18_get_input(cx, vin->index, vin); in cx18_enum_input()
447 struct cx18 *cx = fh2id(fh)->cx; in cx18_cropcap() local
451 cropcap->pixelaspect.numerator = cx->is_50hz ? 54 : 11; in cx18_cropcap()
452 cropcap->pixelaspect.denominator = cx->is_50hz ? 59 : 10; in cx18_cropcap()
459 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_selection() local
468 sel->r.height = cx->is_50hz ? 576 : 480; in cx18_g_selection()
499 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_input() local
501 *i = cx->active_input; in cx18_g_input()
508 struct cx18 *cx = id->cx; in cx18_s_input() local
511 cx->card->video_inputs + inp; in cx18_s_input()
513 if (inp >= cx->nof_inputs) in cx18_s_input()
516 if (inp == cx->active_input) { in cx18_s_input()
522 cx->active_input, inp); in cx18_s_input()
524 cx->active_input = inp; in cx18_s_input()
526 cx->audio_input = cx->card->video_inputs[inp].audio_index; in cx18_s_input()
528 std = cx->tuner_std; in cx18_s_input()
529 cx->streams[CX18_ENC_STREAM_TYPE_MPG].video_dev.tvnorms = std; in cx18_s_input()
530 cx->streams[CX18_ENC_STREAM_TYPE_YUV].video_dev.tvnorms = std; in cx18_s_input()
531 cx->streams[CX18_ENC_STREAM_TYPE_VBI].video_dev.tvnorms = std; in cx18_s_input()
535 cx18_mute(cx); in cx18_s_input()
536 cx18_video_set_io(cx); in cx18_s_input()
537 cx18_audio_set_io(cx); in cx18_s_input()
538 cx18_unmute(cx); in cx18_s_input()
545 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_frequency() local
550 cx18_call_all(cx, tuner, g_frequency, vf); in cx18_g_frequency()
557 struct cx18 *cx = id->cx; in cx18_s_frequency() local
562 cx18_mute(cx); in cx18_s_frequency()
564 cx18_call_all(cx, tuner, s_frequency, vf); in cx18_s_frequency()
565 cx18_unmute(cx); in cx18_s_frequency()
571 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_std() local
573 *std = cx->std; in cx18_g_std()
580 struct cx18 *cx = id->cx; in cx18_s_std() local
585 if (std == cx->std) in cx18_s_std()
588 if (test_bit(CX18_F_I_RADIO_USER, &cx->i_flags) || in cx18_s_std()
589 atomic_read(&cx->ana_capturing) > 0) { in cx18_s_std()
596 cx->std = std; in cx18_s_std()
597 cx->is_60hz = (std & V4L2_STD_525_60) ? 1 : 0; in cx18_s_std()
598 cx->is_50hz = !cx->is_60hz; in cx18_s_std()
599 cx2341x_handler_set_50hz(&cx->cxhdl, cx->is_50hz); in cx18_s_std()
600 cx->cxhdl.width = 720; in cx18_s_std()
601 cx->cxhdl.height = cx->is_50hz ? 576 : 480; in cx18_s_std()
602 cx->vbi.count = cx->is_50hz ? 18 : 12; in cx18_s_std()
603 cx->vbi.start[0] = cx->is_50hz ? 6 : 10; in cx18_s_std()
604 cx->vbi.start[1] = cx->is_50hz ? 318 : 273; in cx18_s_std()
606 (unsigned long long) cx->std); in cx18_s_std()
609 cx18_call_all(cx, video, s_std, cx->std); in cx18_s_std()
616 struct cx18 *cx = id->cx; in cx18_s_tuner() local
621 cx18_call_all(cx, tuner, s_tuner, vt); in cx18_s_tuner()
627 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_tuner() local
632 cx18_call_all(cx, tuner, g_tuner, vt); in cx18_g_tuner()
644 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_sliced_vbi_cap() local
645 int set = cx->is_50hz ? V4L2_SLICED_VBI_625 : V4L2_SLICED_VBI_525; in cx18_g_sliced_vbi_cap()
654 if (valid_service_line(f, l, cx->is_50hz)) { in cx18_g_sliced_vbi_cap()
765 struct cx18 *cx = fh2id(fh)->cx; in cx18_g_enc_index() local
766 struct cx18_stream *s = &cx->streams[CX18_ENC_STREAM_TYPE_IDX]; in cx18_g_enc_index()
812 struct cx18 *cx = id->cx; in cx18_vb_queue() local
813 struct cx18_stream *s = &cx->streams[id->type]; in cx18_vb_queue()
831 struct cx18 *cx = id->cx; in cx18_streamon() local
832 struct cx18_stream *s = &cx->streams[id->type]; in cx18_streamon()
852 struct cx18 *cx = id->cx; in cx18_streamoff() local
853 struct cx18_stream *s = &cx->streams[id->type]; in cx18_streamoff()
870 struct cx18 *cx = id->cx; in cx18_reqbufs() local
871 struct cx18_stream *s = &cx->streams[id->type]; in cx18_reqbufs()
884 struct cx18 *cx = id->cx; in cx18_querybuf() local
885 struct cx18_stream *s = &cx->streams[id->type]; in cx18_querybuf()
897 struct cx18 *cx = id->cx; in cx18_qbuf() local
898 struct cx18_stream *s = &cx->streams[id->type]; in cx18_qbuf()
910 struct cx18 *cx = id->cx; in cx18_dqbuf() local
911 struct cx18_stream *s = &cx->streams[id->type]; in cx18_dqbuf()
924 struct cx18 *cx = id->cx; in cx18_encoder_cmd() local
943 if (!atomic_read(&cx->ana_capturing)) in cx18_encoder_cmd()
945 if (test_and_set_bit(CX18_F_I_ENC_PAUSED, &cx->i_flags)) in cx18_encoder_cmd()
947 h = cx18_find_handle(cx); in cx18_encoder_cmd()
952 cx18_mute(cx); in cx18_encoder_cmd()
953 cx18_vapi(cx, CX18_CPU_CAPTURE_PAUSE, 1, h); in cx18_encoder_cmd()
959 if (!atomic_read(&cx->ana_capturing)) in cx18_encoder_cmd()
961 if (!test_and_clear_bit(CX18_F_I_ENC_PAUSED, &cx->i_flags)) in cx18_encoder_cmd()
963 h = cx18_find_handle(cx); in cx18_encoder_cmd()
968 cx18_vapi(cx, CX18_CPU_CAPTURE_RESUME, 1, h); in cx18_encoder_cmd()
969 cx18_unmute(cx); in cx18_encoder_cmd()
982 struct cx18 *cx = fh2id(fh)->cx; in cx18_try_encoder_cmd() local
1014 struct cx18 *cx = fh2id(fh)->cx; in cx18_log_status() local
1019 CX18_INFO("Version: %s Card: %s\n", CX18_VERSION, cx->card_name); in cx18_log_status()
1020 if (cx->hw_flags & CX18_HW_TVEEPROM) { in cx18_log_status()
1023 cx18_read_eeprom(cx, &tv); in cx18_log_status()
1025 cx18_call_all(cx, core, log_status); in cx18_log_status()
1026 cx18_get_input(cx, cx->active_input, &vidin); in cx18_log_status()
1027 cx18_get_audio_input(cx, cx->audio_input, &audin); in cx18_log_status()
1030 mutex_lock(&cx->gpio_lock); in cx18_log_status()
1032 cx->gpio_dir, cx->gpio_val); in cx18_log_status()
1033 mutex_unlock(&cx->gpio_lock); in cx18_log_status()
1035 test_bit(CX18_F_I_RADIO_USER, &cx->i_flags) ? "Radio" : "TV"); in cx18_log_status()
1036 v4l2_ctrl_handler_log_status(&cx->cxhdl.hdl, cx->v4l2_dev.name); in cx18_log_status()
1037 CX18_INFO("Status flags: 0x%08lx\n", cx->i_flags); in cx18_log_status()
1039 struct cx18_stream *s = &cx->streams[i]; in cx18_log_status()
1050 (long long)cx->mpg_data_received, in cx18_log_status()
1051 (long long)cx->vbi_data_inserted); in cx18_log_status()
1058 struct cx18 *cx = fh2id(fh)->cx; in cx18_default() local
1065 cx18_call_hw(cx, CX18_HW_GPIO_RESET_CTRL, core, reset, in cx18_default()