itv 977 arch/alpha/kernel/osf_sys.c struct itimerval32 itv; itv 978 arch/alpha/kernel/osf_sys.c if (copy_from_user(&itv, i, sizeof(struct itimerval32))) itv 980 arch/alpha/kernel/osf_sys.c o->it_interval.tv_sec = itv.it_interval.tv_sec; itv 981 arch/alpha/kernel/osf_sys.c o->it_interval.tv_usec = itv.it_interval.tv_usec; itv 982 arch/alpha/kernel/osf_sys.c o->it_value.tv_sec = itv.it_value.tv_sec; itv 983 arch/alpha/kernel/osf_sys.c o->it_value.tv_usec = itv.it_value.tv_usec; itv 879 arch/ia64/include/asm/sal.h u64 itv; itv 99 drivers/media/pci/ivtv/ivtv-alsa-main.c struct ivtv *itv = to_ivtv(itvsc->v4l2_dev); itv 107 drivers/media/pci/ivtv/ivtv-alsa-main.c itv->instance); itv 112 drivers/media/pci/ivtv/ivtv-alsa-main.c itv->instance, itv->card_name); itv 119 drivers/media/pci/ivtv/ivtv-alsa-main.c struct ivtv *itv = to_ivtv(v4l2_dev); itv 131 drivers/media/pci/ivtv/ivtv-alsa-main.c idx = index[itv->instance] == -1 ? SNDRV_DEFAULT_IDX1 : index[itv->instance]; itv 132 drivers/media/pci/ivtv/ivtv-alsa-main.c ret = snd_card_new(&itv->pdev->dev, itv 164 drivers/media/pci/ivtv/ivtv-alsa-main.c itv->alsa = itvsc; itv 169 drivers/media/pci/ivtv/ivtv-alsa-main.c itv->alsa = NULL; itv 176 drivers/media/pci/ivtv/ivtv-alsa-main.c __func__, itv->instance, sc->number); itv 188 drivers/media/pci/ivtv/ivtv-alsa-main.c static int ivtv_alsa_load(struct ivtv *itv) itv 190 drivers/media/pci/ivtv/ivtv-alsa-main.c struct v4l2_device *v4l2_dev = &itv->v4l2_dev; itv 199 drivers/media/pci/ivtv/ivtv-alsa-main.c itv = to_ivtv(v4l2_dev); itv 200 drivers/media/pci/ivtv/ivtv-alsa-main.c if (itv == NULL) { itv 205 drivers/media/pci/ivtv/ivtv-alsa-main.c s = &itv->streams[IVTV_ENC_STREAM_TYPE_PCM]; itv 211 drivers/media/pci/ivtv/ivtv-alsa-main.c if (itv->alsa != NULL) { itv 235 drivers/media/pci/ivtv/ivtv-alsa-main.c struct ivtv *itv = to_ivtv(itvsc->v4l2_dev); itv 240 drivers/media/pci/ivtv/ivtv-alsa-main.c itv->alsa = NULL; itv 138 drivers/media/pci/ivtv/ivtv-alsa-pcm.c struct ivtv *itv = to_ivtv(v4l2_dev); itv 146 drivers/media/pci/ivtv/ivtv-alsa-pcm.c if (ivtv_init_on_first_open(itv)) { itv 151 drivers/media/pci/ivtv/ivtv-alsa-pcm.c s = &itv->streams[IVTV_ENC_STREAM_TYPE_PCM]; itv 154 drivers/media/pci/ivtv/ivtv-alsa-pcm.c item.itv = itv; itv 176 drivers/media/pci/ivtv/ivtv-alsa-pcm.c runtime->private_data = itv; itv 178 drivers/media/pci/ivtv/ivtv-alsa-pcm.c itv->pcm_announce_callback = ivtv_alsa_announce_pcm_data; itv 192 drivers/media/pci/ivtv/ivtv-alsa-pcm.c struct ivtv *itv = to_ivtv(v4l2_dev); itv 197 drivers/media/pci/ivtv/ivtv-alsa-pcm.c s = &itv->streams[IVTV_ENC_STREAM_TYPE_PCM]; itv 203 drivers/media/pci/ivtv/ivtv-alsa-pcm.c itv->pcm_announce_callback = NULL; itv 324 drivers/media/pci/ivtv/ivtv-alsa-pcm.c struct ivtv *itv = to_ivtv(v4l2_dev); itv 344 drivers/media/pci/ivtv/ivtv-alsa-pcm.c strscpy(sp->name, itv->card_name, sizeof(sp->name)); itv 28 drivers/media/pci/ivtv/ivtv-alsa.h struct ivtv *itv = to_ivtv(itvsc->v4l2_dev); itv 29 drivers/media/pci/ivtv/ivtv-alsa.h mutex_lock(&itv->serialize_lock); itv 34 drivers/media/pci/ivtv/ivtv-alsa.h struct ivtv *itv = to_ivtv(itvsc->v4l2_dev); itv 35 drivers/media/pci/ivtv/ivtv-alsa.h mutex_unlock(&itv->serialize_lock); itv 1293 drivers/media/pci/ivtv/ivtv-cards.c int ivtv_get_input(struct ivtv *itv, u16 index, struct v4l2_input *input) itv 1295 drivers/media/pci/ivtv/ivtv-cards.c const struct ivtv_card_video_input *card_input = itv->card->video_inputs + index; itv 1305 drivers/media/pci/ivtv/ivtv-cards.c if (index >= itv->nof_inputs) itv 1312 drivers/media/pci/ivtv/ivtv-cards.c input->audioset = (1 << itv->nof_audio_inputs) - 1; itv 1314 drivers/media/pci/ivtv/ivtv-cards.c itv->tuner_std : V4L2_STD_ALL; itv 1318 drivers/media/pci/ivtv/ivtv-cards.c int ivtv_get_output(struct ivtv *itv, u16 index, struct v4l2_output *output) itv 1320 drivers/media/pci/ivtv/ivtv-cards.c const struct ivtv_card_output *card_output = itv->card->video_outputs + index; itv 1322 drivers/media/pci/ivtv/ivtv-cards.c if (index >= itv->card->nof_outputs) itv 1332 drivers/media/pci/ivtv/ivtv-cards.c int ivtv_get_audio_input(struct ivtv *itv, u16 index, struct v4l2_audio *audio) itv 1334 drivers/media/pci/ivtv/ivtv-cards.c const struct ivtv_card_audio_input *aud_input = itv->card->audio_inputs + index; itv 1342 drivers/media/pci/ivtv/ivtv-cards.c if (index >= itv->nof_audio_inputs) itv 1351 drivers/media/pci/ivtv/ivtv-cards.c int ivtv_get_audio_output(struct ivtv *itv, u16 index, struct v4l2_audioout *aud_output) itv 1354 drivers/media/pci/ivtv/ivtv-cards.c if (itv->card->video_outputs == NULL || index != 0) itv 282 drivers/media/pci/ivtv/ivtv-cards.h int ivtv_get_input(struct ivtv *itv, u16 index, struct v4l2_input *input); itv 283 drivers/media/pci/ivtv/ivtv-cards.h int ivtv_get_output(struct ivtv *itv, u16 index, struct v4l2_output *output); itv 284 drivers/media/pci/ivtv/ivtv-cards.h int ivtv_get_audio_input(struct ivtv *itv, u16 index, struct v4l2_audio *input); itv 285 drivers/media/pci/ivtv/ivtv-cards.h int ivtv_get_audio_output(struct ivtv *itv, u16 index, struct v4l2_audioout *output); itv 16 drivers/media/pci/ivtv/ivtv-controls.c struct ivtv *itv = container_of(cxhdl, struct ivtv, cxhdl); itv 19 drivers/media/pci/ivtv/ivtv-controls.c if (fmt && itv->vbi.sliced_mpeg_data[0] == NULL) { itv 24 drivers/media/pci/ivtv/ivtv-controls.c itv->vbi.sliced_mpeg_data[i] = kmalloc(2049, GFP_KERNEL); itv 25 drivers/media/pci/ivtv/ivtv-controls.c if (itv->vbi.sliced_mpeg_data[i] == NULL) { itv 27 drivers/media/pci/ivtv/ivtv-controls.c kfree(itv->vbi.sliced_mpeg_data[i]); itv 28 drivers/media/pci/ivtv/ivtv-controls.c itv->vbi.sliced_mpeg_data[i] = NULL; itv 35 drivers/media/pci/ivtv/ivtv-controls.c itv->vbi.insert_mpeg = fmt; itv 37 drivers/media/pci/ivtv/ivtv-controls.c if (itv->vbi.insert_mpeg == 0) { itv 41 drivers/media/pci/ivtv/ivtv-controls.c if (ivtv_get_service_set(itv->vbi.sliced_in) == 0) { itv 42 drivers/media/pci/ivtv/ivtv-controls.c if (itv->is_60hz) itv 43 drivers/media/pci/ivtv/ivtv-controls.c itv->vbi.sliced_in->service_set = V4L2_SLICED_CAPTION_525; itv 45 drivers/media/pci/ivtv/ivtv-controls.c itv->vbi.sliced_in->service_set = V4L2_SLICED_WSS_625; itv 46 drivers/media/pci/ivtv/ivtv-controls.c ivtv_expand_service_set(itv->vbi.sliced_in, itv->is_50hz); itv 53 drivers/media/pci/ivtv/ivtv-controls.c struct ivtv *itv = container_of(cxhdl, struct ivtv, cxhdl); itv 63 drivers/media/pci/ivtv/ivtv-controls.c v4l2_subdev_call(itv->sd_video, pad, set_fmt, NULL, &format); itv 70 drivers/media/pci/ivtv/ivtv-controls.c struct ivtv *itv = container_of(cxhdl, struct ivtv, cxhdl); itv 75 drivers/media/pci/ivtv/ivtv-controls.c ivtv_call_all(itv, audio, s_clock_freq, freqs[idx]); itv 81 drivers/media/pci/ivtv/ivtv-controls.c struct ivtv *itv = container_of(cxhdl, struct ivtv, cxhdl); itv 83 drivers/media/pci/ivtv/ivtv-controls.c itv->dualwatch_stereo_mode = val; itv 94 drivers/media/pci/ivtv/ivtv-controls.c int ivtv_g_pts_frame(struct ivtv *itv, s64 *pts, s64 *frame) itv 98 drivers/media/pci/ivtv/ivtv-controls.c if (test_bit(IVTV_F_I_VALID_DEC_TIMINGS, &itv->i_flags)) { itv 99 drivers/media/pci/ivtv/ivtv-controls.c *pts = (s64)((u64)itv->last_dec_timing[2] << 32) | itv 100 drivers/media/pci/ivtv/ivtv-controls.c (u64)itv->last_dec_timing[1]; itv 101 drivers/media/pci/ivtv/ivtv-controls.c *frame = itv->last_dec_timing[0]; itv 106 drivers/media/pci/ivtv/ivtv-controls.c if (atomic_read(&itv->decoding)) { itv 107 drivers/media/pci/ivtv/ivtv-controls.c if (ivtv_api(itv, CX2341X_DEC_GET_TIMING_INFO, 5, data)) { itv 111 drivers/media/pci/ivtv/ivtv-controls.c memcpy(itv->last_dec_timing, data, sizeof(itv->last_dec_timing)); itv 112 drivers/media/pci/ivtv/ivtv-controls.c set_bit(IVTV_F_I_VALID_DEC_TIMINGS, &itv->i_flags); itv 122 drivers/media/pci/ivtv/ivtv-controls.c struct ivtv *itv = container_of(ctrl->handler, struct ivtv, cxhdl.hdl); itv 128 drivers/media/pci/ivtv/ivtv-controls.c return ivtv_g_pts_frame(itv, itv->ctrl_pts->p_new.p_s64, itv 129 drivers/media/pci/ivtv/ivtv-controls.c itv->ctrl_frame->p_new.p_s64); itv 136 drivers/media/pci/ivtv/ivtv-controls.c struct ivtv *itv = container_of(ctrl->handler, struct ivtv, cxhdl.hdl); itv 142 drivers/media/pci/ivtv/ivtv-controls.c itv->audio_stereo_mode = itv->ctrl_audio_playback->val - 1; itv 143 drivers/media/pci/ivtv/ivtv-controls.c itv->audio_bilingual_mode = itv->ctrl_audio_multilingual_playback->val - 1; itv 144 drivers/media/pci/ivtv/ivtv-controls.c ivtv_vapi(itv, CX2341X_DEC_SET_AUDIO_MODE, 2, itv->audio_bilingual_mode, itv->audio_stereo_mode); itv 14 drivers/media/pci/ivtv/ivtv-controls.h int ivtv_g_pts_frame(struct ivtv *itv, s64 *pts, s64 *frame); itv 314 drivers/media/pci/ivtv/ivtv-driver.c void ivtv_clear_irq_mask(struct ivtv *itv, u32 mask) itv 316 drivers/media/pci/ivtv/ivtv-driver.c itv->irqmask &= ~mask; itv 317 drivers/media/pci/ivtv/ivtv-driver.c write_reg_sync(itv->irqmask, IVTV_REG_IRQMASK); itv 320 drivers/media/pci/ivtv/ivtv-driver.c void ivtv_set_irq_mask(struct ivtv *itv, u32 mask) itv 322 drivers/media/pci/ivtv/ivtv-driver.c itv->irqmask |= mask; itv 323 drivers/media/pci/ivtv/ivtv-driver.c write_reg_sync(itv->irqmask, IVTV_REG_IRQMASK); itv 326 drivers/media/pci/ivtv/ivtv-driver.c int ivtv_set_output_mode(struct ivtv *itv, int mode) itv 330 drivers/media/pci/ivtv/ivtv-driver.c spin_lock(&itv->lock); itv 331 drivers/media/pci/ivtv/ivtv-driver.c old_mode = itv->output_mode; itv 333 drivers/media/pci/ivtv/ivtv-driver.c itv->output_mode = old_mode = mode; itv 334 drivers/media/pci/ivtv/ivtv-driver.c spin_unlock(&itv->lock); itv 338 drivers/media/pci/ivtv/ivtv-driver.c struct ivtv_stream *ivtv_get_output_stream(struct ivtv *itv) itv 340 drivers/media/pci/ivtv/ivtv-driver.c switch (itv->output_mode) { itv 342 drivers/media/pci/ivtv/ivtv-driver.c return &itv->streams[IVTV_DEC_STREAM_TYPE_MPG]; itv 344 drivers/media/pci/ivtv/ivtv-driver.c return &itv->streams[IVTV_DEC_STREAM_TYPE_YUV]; itv 379 drivers/media/pci/ivtv/ivtv-driver.c static void ivtv_iounmap(struct ivtv *itv) itv 381 drivers/media/pci/ivtv/ivtv-driver.c if (itv == NULL) itv 385 drivers/media/pci/ivtv/ivtv-driver.c if (itv->reg_mem != NULL) { itv 387 drivers/media/pci/ivtv/ivtv-driver.c iounmap(itv->reg_mem); itv 388 drivers/media/pci/ivtv/ivtv-driver.c itv->reg_mem = NULL; itv 391 drivers/media/pci/ivtv/ivtv-driver.c if (itv->has_cx23415 && itv->dec_mem != NULL) { itv 393 drivers/media/pci/ivtv/ivtv-driver.c iounmap(itv->dec_mem); itv 395 drivers/media/pci/ivtv/ivtv-driver.c itv->dec_mem = NULL; itv 398 drivers/media/pci/ivtv/ivtv-driver.c if (itv->enc_mem != NULL) { itv 400 drivers/media/pci/ivtv/ivtv-driver.c iounmap(itv->enc_mem); itv 401 drivers/media/pci/ivtv/ivtv-driver.c itv->enc_mem = NULL; itv 406 drivers/media/pci/ivtv/ivtv-driver.c void ivtv_read_eeprom(struct ivtv *itv, struct tveeprom *tv) itv 410 drivers/media/pci/ivtv/ivtv-driver.c itv->i2c_client.addr = 0xA0 >> 1; itv 411 drivers/media/pci/ivtv/ivtv-driver.c tveeprom_read(&itv->i2c_client, eedata, sizeof(eedata)); itv 415 drivers/media/pci/ivtv/ivtv-driver.c static void ivtv_process_eeprom(struct ivtv *itv) itv 418 drivers/media/pci/ivtv/ivtv-driver.c int pci_slot = PCI_SLOT(itv->pdev->devfn); itv 420 drivers/media/pci/ivtv/ivtv-driver.c ivtv_read_eeprom(itv, &tv); itv 432 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_PVR_250); itv 436 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_PVR_350); itv 441 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_PVR_150); itv 448 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_PVR_150); itv 456 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_PVR_350_V1); itv 462 drivers/media/pci/ivtv/ivtv-driver.c itv->v4l2_cap = itv->card->v4l2_capabilities; itv 463 drivers/media/pci/ivtv/ivtv-driver.c itv->card_name = itv->card->name; itv 464 drivers/media/pci/ivtv/ivtv-driver.c itv->card_i2c = itv->card->i2c; itv 488 drivers/media/pci/ivtv/ivtv-driver.c itv->card_name = "WinTV PVR 500"; itv 489 drivers/media/pci/ivtv/ivtv-driver.c itv->card_i2c = &ivtv_i2c_radio; itv 493 drivers/media/pci/ivtv/ivtv-driver.c itv->card_name = is_first ? "WinTV PVR 500 (unit #1)" : itv 501 drivers/media/pci/ivtv/ivtv-driver.c IVTV_INFO("Autodetected %s\n", itv->card_name); itv 507 drivers/media/pci/ivtv/ivtv-driver.c itv->pvr150_workaround = 1; itv 515 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.tuner == -1) itv 516 drivers/media/pci/ivtv/ivtv-driver.c itv->options.tuner = tv.tuner_type; itv 517 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.radio == -1) itv 518 drivers/media/pci/ivtv/ivtv-driver.c itv->options.radio = (tv.has_radio != 0); itv 520 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.newi2c == -1 && tv.has_ir) { itv 521 drivers/media/pci/ivtv/ivtv-driver.c itv->options.newi2c = (tv.has_ir & 4) ? 1 : 0; itv 522 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.newi2c) { itv 524 drivers/media/pci/ivtv/ivtv-driver.c exit_ivtv_i2c(itv); itv 525 drivers/media/pci/ivtv/ivtv-driver.c init_ivtv_i2c(itv); itv 529 drivers/media/pci/ivtv/ivtv-driver.c if (itv->std != 0) itv 536 drivers/media/pci/ivtv/ivtv-driver.c itv->std |= V4L2_STD_PAL_BG | V4L2_STD_PAL_H; itv 539 drivers/media/pci/ivtv/ivtv-driver.c itv->std |= V4L2_STD_NTSC_M; itv 542 drivers/media/pci/ivtv/ivtv-driver.c itv->std |= V4L2_STD_SECAM_L; itv 545 drivers/media/pci/ivtv/ivtv-driver.c itv->std |= V4L2_STD_NTSC_M; itv 549 drivers/media/pci/ivtv/ivtv-driver.c static v4l2_std_id ivtv_parse_std(struct ivtv *itv) itv 642 drivers/media/pci/ivtv/ivtv-driver.c static void ivtv_process_options(struct ivtv *itv) itv 647 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_ENC_STREAM_TYPE_MPG] = enc_mpg_buffers * 1024; itv 648 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_ENC_STREAM_TYPE_YUV] = enc_yuv_buffers * 1024; itv 649 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_ENC_STREAM_TYPE_VBI] = enc_vbi_buffers * 1024; itv 650 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_ENC_STREAM_TYPE_PCM] = enc_pcm_buffers; itv 651 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_DEC_STREAM_TYPE_MPG] = dec_mpg_buffers * 1024; itv 652 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_DEC_STREAM_TYPE_YUV] = dec_yuv_buffers * 1024; itv 653 drivers/media/pci/ivtv/ivtv-driver.c itv->options.kilobytes[IVTV_DEC_STREAM_TYPE_VBI] = dec_vbi_buffers; itv 654 drivers/media/pci/ivtv/ivtv-driver.c itv->options.cardtype = cardtype[itv->instance]; itv 655 drivers/media/pci/ivtv/ivtv-driver.c itv->options.tuner = tuner[itv->instance]; itv 656 drivers/media/pci/ivtv/ivtv-driver.c itv->options.radio = radio[itv->instance]; itv 658 drivers/media/pci/ivtv/ivtv-driver.c itv->options.i2c_clock_period = i2c_clock_period[itv->instance]; itv 659 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.i2c_clock_period == -1) itv 660 drivers/media/pci/ivtv/ivtv-driver.c itv->options.i2c_clock_period = IVTV_DEFAULT_I2C_CLOCK_PERIOD; itv 661 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->options.i2c_clock_period < 10) itv 662 drivers/media/pci/ivtv/ivtv-driver.c itv->options.i2c_clock_period = 10; itv 663 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->options.i2c_clock_period > 4500) itv 664 drivers/media/pci/ivtv/ivtv-driver.c itv->options.i2c_clock_period = 4500; itv 666 drivers/media/pci/ivtv/ivtv-driver.c itv->options.newi2c = newi2c; itv 671 drivers/media/pci/ivtv/ivtv-driver.c itv->std = ivtv_parse_std(itv); itv 672 drivers/media/pci/ivtv/ivtv-driver.c if (itv->std == 0 && tunertype >= 0) itv 673 drivers/media/pci/ivtv/ivtv-driver.c itv->std = tunertype ? V4L2_STD_MN : (V4L2_STD_ALL & ~V4L2_STD_MN); itv 674 drivers/media/pci/ivtv/ivtv-driver.c itv->has_cx23415 = (itv->pdev->device == PCI_DEVICE_ID_IVTV15); itv 675 drivers/media/pci/ivtv/ivtv-driver.c chipname = itv->has_cx23415 ? "cx23415" : "cx23416"; itv 676 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.cardtype == -1) { itv 680 drivers/media/pci/ivtv/ivtv-driver.c if ((itv->card = ivtv_get_card(itv->options.cardtype - 1))) { itv 682 drivers/media/pci/ivtv/ivtv-driver.c itv->card->name, chipname); itv 683 drivers/media/pci/ivtv/ivtv-driver.c } else if (itv->options.cardtype != 0) { itv 686 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card == NULL) { itv 687 drivers/media/pci/ivtv/ivtv-driver.c if (itv->pdev->subsystem_vendor == IVTV_PCI_ID_HAUPPAUGE || itv 688 drivers/media/pci/ivtv/ivtv-driver.c itv->pdev->subsystem_vendor == IVTV_PCI_ID_HAUPPAUGE_ALT1 || itv 689 drivers/media/pci/ivtv/ivtv-driver.c itv->pdev->subsystem_vendor == IVTV_PCI_ID_HAUPPAUGE_ALT2) { itv 690 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(itv->has_cx23415 ? IVTV_CARD_PVR_350 : IVTV_CARD_PVR_150); itv 695 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card == NULL) { itv 696 drivers/media/pci/ivtv/ivtv-driver.c for (i = 0; (itv->card = ivtv_get_card(i)); i++) { itv 697 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->pci_list == NULL) itv 699 drivers/media/pci/ivtv/ivtv-driver.c for (j = 0; itv->card->pci_list[j].device; j++) { itv 700 drivers/media/pci/ivtv/ivtv-driver.c if (itv->pdev->device != itv 701 drivers/media/pci/ivtv/ivtv-driver.c itv->card->pci_list[j].device) itv 703 drivers/media/pci/ivtv/ivtv-driver.c if (itv->pdev->subsystem_vendor != itv 704 drivers/media/pci/ivtv/ivtv-driver.c itv->card->pci_list[j].subsystem_vendor) itv 706 drivers/media/pci/ivtv/ivtv-driver.c if (itv->pdev->subsystem_device != itv 707 drivers/media/pci/ivtv/ivtv-driver.c itv->card->pci_list[j].subsystem_device) itv 710 drivers/media/pci/ivtv/ivtv-driver.c itv->card->name, chipname); itv 717 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card == NULL) { itv 718 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_PVR_150); itv 720 drivers/media/pci/ivtv/ivtv-driver.c itv->pdev->vendor, itv->pdev->device); itv 722 drivers/media/pci/ivtv/ivtv-driver.c itv->pdev->subsystem_vendor, itv->pdev->subsystem_device); itv 724 drivers/media/pci/ivtv/ivtv-driver.c IVTV_ERR("Defaulting to %s card\n", itv->card->name); itv 729 drivers/media/pci/ivtv/ivtv-driver.c itv->v4l2_cap = itv->card->v4l2_capabilities; itv 730 drivers/media/pci/ivtv/ivtv-driver.c itv->card_name = itv->card->name; itv 731 drivers/media/pci/ivtv/ivtv-driver.c itv->card_i2c = itv->card->i2c; itv 739 drivers/media/pci/ivtv/ivtv-driver.c static int ivtv_init_struct1(struct ivtv *itv) itv 743 drivers/media/pci/ivtv/ivtv-driver.c itv->base_addr = pci_resource_start(itv->pdev, 0); itv 744 drivers/media/pci/ivtv/ivtv-driver.c itv->enc_mbox.max_mbox = 2; /* the encoder has 3 mailboxes (0-2) */ itv 745 drivers/media/pci/ivtv/ivtv-driver.c itv->dec_mbox.max_mbox = 1; /* the decoder has 2 mailboxes (0-1) */ itv 747 drivers/media/pci/ivtv/ivtv-driver.c mutex_init(&itv->serialize_lock); itv 748 drivers/media/pci/ivtv/ivtv-driver.c mutex_init(&itv->i2c_bus_lock); itv 749 drivers/media/pci/ivtv/ivtv-driver.c mutex_init(&itv->udma.lock); itv 751 drivers/media/pci/ivtv/ivtv-driver.c spin_lock_init(&itv->lock); itv 752 drivers/media/pci/ivtv/ivtv-driver.c spin_lock_init(&itv->dma_reg_lock); itv 754 drivers/media/pci/ivtv/ivtv-driver.c kthread_init_worker(&itv->irq_worker); itv 755 drivers/media/pci/ivtv/ivtv-driver.c itv->irq_worker_task = kthread_run(kthread_worker_fn, &itv->irq_worker, itv 756 drivers/media/pci/ivtv/ivtv-driver.c "%s", itv->v4l2_dev.name); itv 757 drivers/media/pci/ivtv/ivtv-driver.c if (IS_ERR(itv->irq_worker_task)) { itv 762 drivers/media/pci/ivtv/ivtv-driver.c sched_setscheduler(itv->irq_worker_task, SCHED_FIFO, ¶m); itv 764 drivers/media/pci/ivtv/ivtv-driver.c kthread_init_work(&itv->irq_work, ivtv_irq_work_handler); itv 767 drivers/media/pci/ivtv/ivtv-driver.c itv->cxhdl.port = CX2341X_PORT_MEMORY; itv 768 drivers/media/pci/ivtv/ivtv-driver.c itv->cxhdl.capabilities = CX2341X_CAP_HAS_SLICED_VBI; itv 769 drivers/media/pci/ivtv/ivtv-driver.c init_waitqueue_head(&itv->eos_waitq); itv 770 drivers/media/pci/ivtv/ivtv-driver.c init_waitqueue_head(&itv->event_waitq); itv 771 drivers/media/pci/ivtv/ivtv-driver.c init_waitqueue_head(&itv->vsync_waitq); itv 772 drivers/media/pci/ivtv/ivtv-driver.c init_waitqueue_head(&itv->dma_waitq); itv 773 drivers/media/pci/ivtv/ivtv-driver.c timer_setup(&itv->dma_timer, ivtv_unfinished_dma, 0); itv 775 drivers/media/pci/ivtv/ivtv-driver.c itv->cur_dma_stream = -1; itv 776 drivers/media/pci/ivtv/ivtv-driver.c itv->cur_pio_stream = -1; itv 779 drivers/media/pci/ivtv/ivtv-driver.c itv->speed = 1000; itv 782 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.in.type = V4L2_BUF_TYPE_VBI_CAPTURE; itv 783 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_in = &itv->vbi.in.fmt.sliced; itv 786 drivers/media/pci/ivtv/ivtv-driver.c sg_init_table(itv->udma.SGlist, IVTV_DMA_SG_OSD_ENT); itv 789 drivers/media/pci/ivtv/ivtv-driver.c itv->osd_global_alpha_state = 1; itv 790 drivers/media/pci/ivtv/ivtv-driver.c itv->osd_global_alpha = 255; itv 793 drivers/media/pci/ivtv/ivtv-driver.c atomic_set(&itv->yuv_info.next_dma_frame, -1); itv 794 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.lace_mode = ivtv_yuv_mode; itv 795 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.lace_threshold = ivtv_yuv_threshold; itv 796 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.max_frames_buffered = 3; itv 797 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.track_osd = 1; itv 803 drivers/media/pci/ivtv/ivtv-driver.c static void ivtv_init_struct2(struct ivtv *itv) itv 808 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->video_inputs[i].video_type == 0) itv 810 drivers/media/pci/ivtv/ivtv-driver.c itv->nof_inputs = i; itv 812 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->audio_inputs[i].audio_type == 0) itv 814 drivers/media/pci/ivtv/ivtv-driver.c itv->nof_audio_inputs = i; itv 816 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->hw_all & IVTV_HW_CX25840) { itv 817 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_size = 288; /* multiple of 16, real size = 284 */ itv 819 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_size = 64; /* multiple of 16, real size = 52 */ itv 823 drivers/media/pci/ivtv/ivtv-driver.c for (i = 0; i < itv->nof_inputs; i++) { itv 824 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->video_inputs[i].video_type == itv 828 drivers/media/pci/ivtv/ivtv-driver.c if (i >= itv->nof_inputs) itv 830 drivers/media/pci/ivtv/ivtv-driver.c itv->active_input = i; itv 831 drivers/media/pci/ivtv/ivtv-driver.c itv->audio_input = itv->card->video_inputs[i].audio_index; itv 834 drivers/media/pci/ivtv/ivtv-driver.c static int ivtv_setup_pci(struct ivtv *itv, struct pci_dev *pdev, itv 850 drivers/media/pci/ivtv/ivtv-driver.c if (!request_mem_region(itv->base_addr, IVTV_ENCODER_SIZE, "ivtv encoder")) { itv 855 drivers/media/pci/ivtv/ivtv-driver.c if (!request_mem_region(itv->base_addr + IVTV_REG_OFFSET, itv 858 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr, IVTV_ENCODER_SIZE); itv 862 drivers/media/pci/ivtv/ivtv-driver.c if (itv->has_cx23415 && itv 863 drivers/media/pci/ivtv/ivtv-driver.c !request_mem_region(itv->base_addr + IVTV_DECODER_OFFSET, itv 866 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr, IVTV_ENCODER_SIZE); itv 867 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); itv 901 drivers/media/pci/ivtv/ivtv-driver.c pdev->irq, pci_latency, (u64)itv->base_addr); itv 906 drivers/media/pci/ivtv/ivtv-driver.c static void ivtv_load_and_init_modules(struct ivtv *itv) itv 908 drivers/media/pci/ivtv/ivtv-driver.c u32 hw = itv->card->hw_all; itv 919 drivers/media/pci/ivtv/ivtv-driver.c itv->hw_flags |= device; itv 922 drivers/media/pci/ivtv/ivtv-driver.c if (ivtv_i2c_register(itv, i) == 0) itv 923 drivers/media/pci/ivtv/ivtv-driver.c itv->hw_flags |= device; itv 927 drivers/media/pci/ivtv/ivtv-driver.c if ((itv->hw_flags & IVTV_HW_IR_ANY) == 0) itv 928 drivers/media/pci/ivtv/ivtv-driver.c ivtv_i2c_new_ir_legacy(itv); itv 930 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->hw_all & IVTV_HW_CX25840) itv 931 drivers/media/pci/ivtv/ivtv-driver.c itv->sd_video = ivtv_find_hw(itv, IVTV_HW_CX25840); itv 932 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->card->hw_all & IVTV_HW_SAA717X) itv 933 drivers/media/pci/ivtv/ivtv-driver.c itv->sd_video = ivtv_find_hw(itv, IVTV_HW_SAA717X); itv 934 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->card->hw_all & IVTV_HW_SAA7114) itv 935 drivers/media/pci/ivtv/ivtv-driver.c itv->sd_video = ivtv_find_hw(itv, IVTV_HW_SAA7114); itv 937 drivers/media/pci/ivtv/ivtv-driver.c itv->sd_video = ivtv_find_hw(itv, IVTV_HW_SAA7115); itv 938 drivers/media/pci/ivtv/ivtv-driver.c itv->sd_audio = ivtv_find_hw(itv, itv->card->hw_audio_ctrl); itv 939 drivers/media/pci/ivtv/ivtv-driver.c itv->sd_muxer = ivtv_find_hw(itv, itv->card->hw_muxer); itv 941 drivers/media/pci/ivtv/ivtv-driver.c hw = itv->hw_flags; itv 943 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->type == IVTV_CARD_CX23416GYC) { itv 947 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_CX23416GYC_NOGRYCS); itv 949 drivers/media/pci/ivtv/ivtv-driver.c itv->card = ivtv_get_card(IVTV_CARD_CX23416GYC_NOGR); itv 951 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->card->type == IVTV_CARD_GV_MVPRX || itv 952 drivers/media/pci/ivtv/ivtv-driver.c itv->card->type == IVTV_CARD_GV_MVPRX2E) { itv 954 drivers/media/pci/ivtv/ivtv-driver.c v4l2_subdev_call(itv->sd_video, video, s_crystal_freq, itv 959 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_line_size = 1444; itv 960 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_sav_odd_field = 0x20; itv 961 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_sav_even_field = 0x60; itv 962 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_line_size = 272; itv 963 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_sav_odd_field = 0xB0; itv 964 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_sav_even_field = 0xF0; itv 969 drivers/media/pci/ivtv/ivtv-driver.c itv->hw_flags &= ~IVTV_HW_SAA711X; itv 971 drivers/media/pci/ivtv/ivtv-driver.c if (strstr(itv->sd_video->name, "saa7114")) { itv 972 drivers/media/pci/ivtv/ivtv-driver.c itv->hw_flags |= IVTV_HW_SAA7114; itv 974 drivers/media/pci/ivtv/ivtv-driver.c itv->v4l2_cap &= ~(V4L2_CAP_SLICED_VBI_CAPTURE|V4L2_CAP_VBI_CAPTURE); itv 976 drivers/media/pci/ivtv/ivtv-driver.c itv->hw_flags |= IVTV_HW_SAA7115; itv 978 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_line_size = 1443; itv 979 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_sav_odd_field = 0x25; itv 980 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_sav_even_field = 0x62; itv 981 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_line_size = 51; itv 982 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_sav_odd_field = 0xAB; itv 983 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_sav_even_field = 0xEC; itv 987 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_line_size = 1443; itv 988 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_sav_odd_field = 0x25; itv 989 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_decoder_sav_even_field = 0x62; itv 990 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_line_size = 51; itv 991 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_sav_odd_field = 0xAB; itv 992 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.sliced_decoder_sav_even_field = 0xEC; itv 1000 drivers/media/pci/ivtv/ivtv-driver.c struct ivtv *itv; itv 1002 drivers/media/pci/ivtv/ivtv-driver.c itv = kzalloc(sizeof(struct ivtv), GFP_KERNEL); itv 1003 drivers/media/pci/ivtv/ivtv-driver.c if (itv == NULL) itv 1005 drivers/media/pci/ivtv/ivtv-driver.c itv->pdev = pdev; itv 1006 drivers/media/pci/ivtv/ivtv-driver.c itv->instance = v4l2_device_set_name(&itv->v4l2_dev, "ivtv", itv 1009 drivers/media/pci/ivtv/ivtv-driver.c retval = v4l2_device_register(&pdev->dev, &itv->v4l2_dev); itv 1011 drivers/media/pci/ivtv/ivtv-driver.c kfree(itv); itv 1014 drivers/media/pci/ivtv/ivtv-driver.c IVTV_INFO("Initializing card %d\n", itv->instance); itv 1016 drivers/media/pci/ivtv/ivtv-driver.c ivtv_process_options(itv); itv 1017 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.cardtype == -1) { itv 1021 drivers/media/pci/ivtv/ivtv-driver.c if (ivtv_init_struct1(itv)) { itv 1025 drivers/media/pci/ivtv/ivtv-driver.c retval = cx2341x_handler_init(&itv->cxhdl, 50); itv 1028 drivers/media/pci/ivtv/ivtv-driver.c itv->v4l2_dev.ctrl_handler = &itv->cxhdl.hdl; itv 1029 drivers/media/pci/ivtv/ivtv-driver.c itv->cxhdl.ops = &ivtv_cxhdl_ops; itv 1030 drivers/media/pci/ivtv/ivtv-driver.c itv->cxhdl.priv = itv; itv 1031 drivers/media/pci/ivtv/ivtv-driver.c itv->cxhdl.func = ivtv_api_func; itv 1033 drivers/media/pci/ivtv/ivtv-driver.c IVTV_DEBUG_INFO("base addr: 0x%llx\n", (u64)itv->base_addr); itv 1036 drivers/media/pci/ivtv/ivtv-driver.c retval = ivtv_setup_pci(itv, pdev, pci_id); itv 1044 drivers/media/pci/ivtv/ivtv-driver.c (u64)itv->base_addr + IVTV_ENCODER_OFFSET, IVTV_ENCODER_SIZE); itv 1045 drivers/media/pci/ivtv/ivtv-driver.c itv->enc_mem = ioremap_nocache(itv->base_addr + IVTV_ENCODER_OFFSET, itv 1047 drivers/media/pci/ivtv/ivtv-driver.c if (!itv->enc_mem) { itv 1056 drivers/media/pci/ivtv/ivtv-driver.c if (itv->has_cx23415) { itv 1058 drivers/media/pci/ivtv/ivtv-driver.c (u64)itv->base_addr + IVTV_DECODER_OFFSET, IVTV_DECODER_SIZE); itv 1059 drivers/media/pci/ivtv/ivtv-driver.c itv->dec_mem = ioremap_nocache(itv->base_addr + IVTV_DECODER_OFFSET, itv 1061 drivers/media/pci/ivtv/ivtv-driver.c if (!itv->dec_mem) { itv 1071 drivers/media/pci/ivtv/ivtv-driver.c itv->dec_mem = itv->enc_mem; itv 1076 drivers/media/pci/ivtv/ivtv-driver.c (u64)itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); itv 1077 drivers/media/pci/ivtv/ivtv-driver.c itv->reg_mem = itv 1078 drivers/media/pci/ivtv/ivtv-driver.c ioremap_nocache(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); itv 1079 drivers/media/pci/ivtv/ivtv-driver.c if (!itv->reg_mem) { itv 1088 drivers/media/pci/ivtv/ivtv-driver.c retval = ivtv_gpio_init(itv); itv 1094 drivers/media/pci/ivtv/ivtv-driver.c if (init_ivtv_i2c(itv)) { itv 1099 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->hw_all & IVTV_HW_TVEEPROM) { itv 1102 drivers/media/pci/ivtv/ivtv-driver.c ivtv_process_eeprom(itv); itv 1104 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->comment) itv 1105 drivers/media/pci/ivtv/ivtv-driver.c IVTV_INFO("%s", itv->card->comment); itv 1106 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->v4l2_capabilities == 0) { itv 1112 drivers/media/pci/ivtv/ivtv-driver.c if (itv->std == 0) { itv 1113 drivers/media/pci/ivtv/ivtv-driver.c itv->std = V4L2_STD_NTSC_M; itv 1116 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.tuner == -1) { itv 1120 drivers/media/pci/ivtv/ivtv-driver.c if ((itv->std & itv->card->tuners[i].std) == 0) itv 1122 drivers/media/pci/ivtv/ivtv-driver.c itv->options.tuner = itv->card->tuners[i].tuner; itv 1127 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.tuner == -1 && itv->card->tuners[0].std) { itv 1128 drivers/media/pci/ivtv/ivtv-driver.c itv->std = itv->card->tuners[0].std; itv 1129 drivers/media/pci/ivtv/ivtv-driver.c if (itv->std & V4L2_STD_PAL) itv 1130 drivers/media/pci/ivtv/ivtv-driver.c itv->std = V4L2_STD_PAL_BG | V4L2_STD_PAL_H; itv 1131 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->std & V4L2_STD_NTSC) itv 1132 drivers/media/pci/ivtv/ivtv-driver.c itv->std = V4L2_STD_NTSC_M; itv 1133 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->std & V4L2_STD_SECAM) itv 1134 drivers/media/pci/ivtv/ivtv-driver.c itv->std = V4L2_STD_SECAM_L; itv 1135 drivers/media/pci/ivtv/ivtv-driver.c itv->options.tuner = itv->card->tuners[0].tuner; itv 1137 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.radio == -1) itv 1138 drivers/media/pci/ivtv/ivtv-driver.c itv->options.radio = (itv->card->radio_input.audio_type != 0); itv 1142 drivers/media/pci/ivtv/ivtv-driver.c ivtv_init_struct2(itv); itv 1144 drivers/media/pci/ivtv/ivtv-driver.c ivtv_load_and_init_modules(itv); itv 1146 drivers/media/pci/ivtv/ivtv-driver.c if (itv->std & V4L2_STD_525_60) { itv 1147 drivers/media/pci/ivtv/ivtv-driver.c itv->is_60hz = 1; itv 1148 drivers/media/pci/ivtv/ivtv-driver.c itv->is_out_60hz = 1; itv 1150 drivers/media/pci/ivtv/ivtv-driver.c itv->is_50hz = 1; itv 1151 drivers/media/pci/ivtv/ivtv-driver.c itv->is_out_50hz = 1; itv 1154 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.osd_full_w = 720; itv 1155 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.osd_full_h = itv->is_out_50hz ? 576 : 480; itv 1156 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.v4l2_src_w = itv->yuv_info.osd_full_w; itv 1157 drivers/media/pci/ivtv/ivtv-driver.c itv->yuv_info.v4l2_src_h = itv->yuv_info.osd_full_h; itv 1159 drivers/media/pci/ivtv/ivtv-driver.c cx2341x_handler_set_50hz(&itv->cxhdl, itv->is_50hz); itv 1161 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_ENC_STREAM_TYPE_MPG] = 0x08000; itv 1162 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_ENC_STREAM_TYPE_PCM] = 0x01200; itv 1163 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_DEC_STREAM_TYPE_MPG] = 0x10000; itv 1164 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_DEC_STREAM_TYPE_YUV] = 0x10000; itv 1165 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_ENC_STREAM_TYPE_YUV] = 0x08000; itv 1171 drivers/media/pci/ivtv/ivtv-driver.c itv->vbi.raw_size = 1456; itv 1178 drivers/media/pci/ivtv/ivtv-driver.c vbi_buf_size = itv->vbi.raw_size * (itv->is_60hz ? 24 : 36) / 2; itv 1179 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_ENC_STREAM_TYPE_VBI] = vbi_buf_size; itv 1180 drivers/media/pci/ivtv/ivtv-driver.c itv->stream_buf_size[IVTV_DEC_STREAM_TYPE_VBI] = sizeof(struct v4l2_sliced_vbi_data) * 36; itv 1182 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.radio > 0) itv 1183 drivers/media/pci/ivtv/ivtv-driver.c itv->v4l2_cap |= V4L2_CAP_RADIO; itv 1185 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.tuner > -1) { itv 1189 drivers/media/pci/ivtv/ivtv-driver.c setup.type = itv->options.tuner; itv 1191 drivers/media/pci/ivtv/ivtv-driver.c if (itv->options.radio > 0) itv 1195 drivers/media/pci/ivtv/ivtv-driver.c ivtv_call_all(itv, tuner, s_type_addr, &setup); itv 1202 drivers/media/pci/ivtv/ivtv-driver.c .tuner = itv->options.tuner, itv 1205 drivers/media/pci/ivtv/ivtv-driver.c ivtv_call_all(itv, tuner, s_config, &cfg); itv 1211 drivers/media/pci/ivtv/ivtv-driver.c itv->tuner_std = itv->std; itv 1213 drivers/media/pci/ivtv/ivtv-driver.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { itv 1214 drivers/media/pci/ivtv/ivtv-driver.c struct v4l2_ctrl_handler *hdl = itv->v4l2_dev.ctrl_handler; itv 1216 drivers/media/pci/ivtv/ivtv-driver.c itv->ctrl_pts = v4l2_ctrl_new_std(hdl, &ivtv_hdl_out_ops, itv 1218 drivers/media/pci/ivtv/ivtv-driver.c itv->ctrl_frame = v4l2_ctrl_new_std(hdl, &ivtv_hdl_out_ops, itv 1222 drivers/media/pci/ivtv/ivtv-driver.c itv->ctrl_audio_playback = itv 1228 drivers/media/pci/ivtv/ivtv-driver.c itv->ctrl_audio_multilingual_playback = itv 1238 drivers/media/pci/ivtv/ivtv-driver.c v4l2_ctrl_cluster(2, &itv->ctrl_pts); itv 1239 drivers/media/pci/ivtv/ivtv-driver.c v4l2_ctrl_cluster(2, &itv->ctrl_audio_playback); itv 1240 drivers/media/pci/ivtv/ivtv-driver.c ivtv_call_all(itv, video, s_std_output, itv->std); itv 1244 drivers/media/pci/ivtv/ivtv-driver.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_stream, 0); itv 1248 drivers/media/pci/ivtv/ivtv-driver.c ivtv_set_irq_mask(itv, 0xffffffff); itv 1251 drivers/media/pci/ivtv/ivtv-driver.c retval = request_irq(itv->pdev->irq, ivtv_irq_handler, itv 1252 drivers/media/pci/ivtv/ivtv-driver.c IRQF_SHARED, itv->v4l2_dev.name, (void *)itv); itv 1258 drivers/media/pci/ivtv/ivtv-driver.c retval = ivtv_streams_setup(itv); itv 1263 drivers/media/pci/ivtv/ivtv-driver.c retval = ivtv_streams_register(itv); itv 1268 drivers/media/pci/ivtv/ivtv-driver.c IVTV_INFO("Initialized card: %s\n", itv->card_name); itv 1271 drivers/media/pci/ivtv/ivtv-driver.c request_modules(itv); itv 1275 drivers/media/pci/ivtv/ivtv-driver.c ivtv_streams_cleanup(itv); itv 1277 drivers/media/pci/ivtv/ivtv-driver.c free_irq(itv->pdev->irq, (void *)itv); itv 1279 drivers/media/pci/ivtv/ivtv-driver.c v4l2_ctrl_handler_free(&itv->cxhdl.hdl); itv 1280 drivers/media/pci/ivtv/ivtv-driver.c exit_ivtv_i2c(itv); itv 1282 drivers/media/pci/ivtv/ivtv-driver.c ivtv_iounmap(itv); itv 1284 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr, IVTV_ENCODER_SIZE); itv 1285 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); itv 1286 drivers/media/pci/ivtv/ivtv-driver.c if (itv->has_cx23415) itv 1287 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr + IVTV_DECODER_OFFSET, IVTV_DECODER_SIZE); itv 1289 drivers/media/pci/ivtv/ivtv-driver.c kthread_stop(itv->irq_worker_task); itv 1295 drivers/media/pci/ivtv/ivtv-driver.c v4l2_device_unregister(&itv->v4l2_dev); itv 1296 drivers/media/pci/ivtv/ivtv-driver.c kfree(itv); itv 1300 drivers/media/pci/ivtv/ivtv-driver.c int ivtv_init_on_first_open(struct ivtv *itv) itv 1308 drivers/media/pci/ivtv/ivtv-driver.c fh.itv = itv; itv 1311 drivers/media/pci/ivtv/ivtv-driver.c if (test_bit(IVTV_F_I_FAILED, &itv->i_flags)) itv 1314 drivers/media/pci/ivtv/ivtv-driver.c if (test_and_set_bit(IVTV_F_I_INITED, &itv->i_flags)) itv 1319 drivers/media/pci/ivtv/ivtv-driver.c if (ivtv_firmware_init(itv) == 0) itv 1326 drivers/media/pci/ivtv/ivtv-driver.c set_bit(IVTV_F_I_FAILED, &itv->i_flags); itv 1332 drivers/media/pci/ivtv/ivtv-driver.c ivtv_firmware_versions(itv); itv 1334 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->hw_all & IVTV_HW_CX25840) itv 1335 drivers/media/pci/ivtv/ivtv-driver.c v4l2_subdev_call(itv->sd_video, core, load_fw); itv 1343 drivers/media/pci/ivtv/ivtv-driver.c if (itv->std == V4L2_STD_NTSC_M_JP) { itv 1346 drivers/media/pci/ivtv/ivtv-driver.c else if (itv->std & V4L2_STD_NTSC_M) { itv 1350 drivers/media/pci/ivtv/ivtv-driver.c video_input = itv->active_input; itv 1351 drivers/media/pci/ivtv/ivtv-driver.c itv->active_input++; /* Force update of input */ itv 1356 drivers/media/pci/ivtv/ivtv-driver.c itv->std++; /* Force full standard initialization */ itv 1357 drivers/media/pci/ivtv/ivtv-driver.c itv->std_out = itv->std; itv 1360 drivers/media/pci/ivtv/ivtv-driver.c if (itv->card->v4l2_capabilities & V4L2_CAP_VIDEO_OUTPUT) { itv 1364 drivers/media/pci/ivtv/ivtv-driver.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_stream, 1); itv 1365 drivers/media/pci/ivtv/ivtv-driver.c ivtv_init_mpeg_decoder(itv); itv 1369 drivers/media/pci/ivtv/ivtv-driver.c if (!itv->has_cx23415) itv 1372 drivers/media/pci/ivtv/ivtv-driver.c ivtv_s_std_enc(itv, itv->tuner_std); itv 1379 drivers/media/pci/ivtv/ivtv-driver.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { itv 1380 drivers/media/pci/ivtv/ivtv-driver.c ivtv_clear_irq_mask(itv, IVTV_IRQ_MASK_INIT | IVTV_IRQ_DEC_VSYNC); itv 1381 drivers/media/pci/ivtv/ivtv-driver.c ivtv_set_osd_alpha(itv); itv 1382 drivers/media/pci/ivtv/ivtv-driver.c ivtv_s_std_dec(itv, itv->tuner_std); itv 1384 drivers/media/pci/ivtv/ivtv-driver.c ivtv_clear_irq_mask(itv, IVTV_IRQ_MASK_INIT); itv 1388 drivers/media/pci/ivtv/ivtv-driver.c cx2341x_handler_setup(&itv->cxhdl); itv 1395 drivers/media/pci/ivtv/ivtv-driver.c struct ivtv *itv = to_ivtv(v4l2_dev); itv 1400 drivers/media/pci/ivtv/ivtv-driver.c flush_request_modules(itv); itv 1402 drivers/media/pci/ivtv/ivtv-driver.c if (test_bit(IVTV_F_I_INITED, &itv->i_flags)) { itv 1405 drivers/media/pci/ivtv/ivtv-driver.c if (atomic_read(&itv->capturing) > 0) itv 1406 drivers/media/pci/ivtv/ivtv-driver.c ivtv_stop_all_captures(itv); itv 1412 drivers/media/pci/ivtv/ivtv-driver.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) itv 1413 drivers/media/pci/ivtv/ivtv-driver.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_stream, 0); itv 1414 drivers/media/pci/ivtv/ivtv-driver.c if (atomic_read(&itv->decoding) > 0) { itv 1417 drivers/media/pci/ivtv/ivtv-driver.c if (test_bit(IVTV_F_I_DEC_YUV, &itv->i_flags)) itv 1421 drivers/media/pci/ivtv/ivtv-driver.c ivtv_stop_v4l2_decode_stream(&itv->streams[type], itv 1424 drivers/media/pci/ivtv/ivtv-driver.c ivtv_halt_firmware(itv); itv 1428 drivers/media/pci/ivtv/ivtv-driver.c ivtv_set_irq_mask(itv, 0xffffffff); itv 1429 drivers/media/pci/ivtv/ivtv-driver.c del_timer_sync(&itv->dma_timer); itv 1432 drivers/media/pci/ivtv/ivtv-driver.c kthread_flush_worker(&itv->irq_worker); itv 1433 drivers/media/pci/ivtv/ivtv-driver.c kthread_stop(itv->irq_worker_task); itv 1435 drivers/media/pci/ivtv/ivtv-driver.c ivtv_streams_cleanup(itv); itv 1436 drivers/media/pci/ivtv/ivtv-driver.c ivtv_udma_free(itv); itv 1438 drivers/media/pci/ivtv/ivtv-driver.c v4l2_ctrl_handler_free(&itv->cxhdl.hdl); itv 1440 drivers/media/pci/ivtv/ivtv-driver.c exit_ivtv_i2c(itv); itv 1442 drivers/media/pci/ivtv/ivtv-driver.c free_irq(itv->pdev->irq, (void *)itv); itv 1443 drivers/media/pci/ivtv/ivtv-driver.c ivtv_iounmap(itv); itv 1445 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr, IVTV_ENCODER_SIZE); itv 1446 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); itv 1447 drivers/media/pci/ivtv/ivtv-driver.c if (itv->has_cx23415) itv 1448 drivers/media/pci/ivtv/ivtv-driver.c release_mem_region(itv->base_addr + IVTV_DECODER_OFFSET, IVTV_DECODER_SIZE); itv 1450 drivers/media/pci/ivtv/ivtv-driver.c pci_disable_device(itv->pdev); itv 1452 drivers/media/pci/ivtv/ivtv-driver.c kfree(itv->vbi.sliced_mpeg_data[i]); itv 1454 drivers/media/pci/ivtv/ivtv-driver.c pr_info("Removed %s\n", itv->card_name); itv 1456 drivers/media/pci/ivtv/ivtv-driver.c v4l2_device_unregister(&itv->v4l2_dev); itv 1457 drivers/media/pci/ivtv/ivtv-driver.c kfree(itv); itv 146 drivers/media/pci/ivtv/ivtv-driver.h v4l2_info(&itv->v4l2_dev, " " type ": " fmt , ##args); \ itv 162 drivers/media/pci/ivtv/ivtv-driver.h v4l2_info(&itv->v4l2_dev, " " type ": " fmt , ##args); \ itv 176 drivers/media/pci/ivtv/ivtv-driver.h #define IVTV_ERR(fmt, args...) v4l2_err(&itv->v4l2_dev, fmt , ## args) itv 177 drivers/media/pci/ivtv/ivtv-driver.h #define IVTV_WARN(fmt, args...) v4l2_warn(&itv->v4l2_dev, fmt , ## args) itv 178 drivers/media/pci/ivtv/ivtv-driver.h #define IVTV_INFO(fmt, args...) v4l2_info(&itv->v4l2_dev, fmt , ## args) itv 333 drivers/media/pci/ivtv/ivtv-driver.h struct ivtv *itv; /* for ease of use */ itv 387 drivers/media/pci/ivtv/ivtv-driver.h struct ivtv *itv; itv 757 drivers/media/pci/ivtv/ivtv-driver.h void (*ivtvfb_restore)(struct ivtv *itv); /* Used for a warm start */ itv 774 drivers/media/pci/ivtv/ivtv-driver.h void ivtv_set_irq_mask(struct ivtv *itv, u32 mask); itv 775 drivers/media/pci/ivtv/ivtv-driver.h void ivtv_clear_irq_mask(struct ivtv *itv, u32 mask); itv 778 drivers/media/pci/ivtv/ivtv-driver.h int ivtv_set_output_mode(struct ivtv *itv, int mode); itv 781 drivers/media/pci/ivtv/ivtv-driver.h struct ivtv_stream *ivtv_get_output_stream(struct ivtv *itv); itv 791 drivers/media/pci/ivtv/ivtv-driver.h void ivtv_read_eeprom(struct ivtv *itv, struct tveeprom *tv); itv 794 drivers/media/pci/ivtv/ivtv-driver.h int ivtv_init_on_first_open(struct ivtv *itv); itv 797 drivers/media/pci/ivtv/ivtv-driver.h static inline int ivtv_raw_vbi(const struct ivtv *itv) itv 799 drivers/media/pci/ivtv/ivtv-driver.h return itv->vbi.in.type == V4L2_BUF_TYPE_VBI_CAPTURE; itv 814 drivers/media/pci/ivtv/ivtv-driver.h #define read_reg(reg) readl(itv->reg_mem + (reg)) itv 815 drivers/media/pci/ivtv/ivtv-driver.h #define write_reg(val, reg) writel(val, itv->reg_mem + (reg)) itv 819 drivers/media/pci/ivtv/ivtv-driver.h #define read_enc(addr) readl(itv->enc_mem + (u32)(addr)) itv 820 drivers/media/pci/ivtv/ivtv-driver.h #define write_enc(val, addr) writel(val, itv->enc_mem + (u32)(addr)) itv 824 drivers/media/pci/ivtv/ivtv-driver.h #define read_dec(addr) readl(itv->dec_mem + (u32)(addr)) itv 825 drivers/media/pci/ivtv/ivtv-driver.h #define write_dec(val, addr) writel(val, itv->dec_mem + (u32)(addr)) itv 831 drivers/media/pci/ivtv/ivtv-driver.h #define ivtv_call_hw(itv, hw, o, f, args...) \ itv 832 drivers/media/pci/ivtv/ivtv-driver.h v4l2_device_mask_call_all(&(itv)->v4l2_dev, hw, o, f, ##args) itv 834 drivers/media/pci/ivtv/ivtv-driver.h #define ivtv_call_all(itv, o, f, args...) ivtv_call_hw(itv, 0, o, f , ##args) itv 839 drivers/media/pci/ivtv/ivtv-driver.h #define ivtv_call_hw_err(itv, hw, o, f, args...) \ itv 840 drivers/media/pci/ivtv/ivtv-driver.h v4l2_device_mask_call_until_err(&(itv)->v4l2_dev, hw, o, f, ##args) itv 842 drivers/media/pci/ivtv/ivtv-driver.h #define ivtv_call_all_err(itv, o, f, args...) ivtv_call_hw_err(itv, 0, o, f , ##args) itv 34 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 35 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[type]; itv 61 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_clear_irq_mask(itv, IVTV_IRQ_DEC_VBI_RE_INSERT); itv 71 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi.insert_mpeg && !ivtv_raw_vbi(itv)) { itv 76 drivers/media/pci/ivtv/ivtv-fileops.c s_vbi = &itv->streams[vbi_type]; itv 81 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_clear_irq_mask(itv, IVTV_IRQ_DEC_VBI_RE_INSERT); itv 93 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = s->itv; itv 111 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_set_irq_mask(itv, IVTV_IRQ_DEC_VBI_RE_INSERT); itv 117 drivers/media/pci/ivtv/ivtv-fileops.c s_vbi = &itv->streams[IVTV_DEC_STREAM_TYPE_VBI]; itv 119 drivers/media/pci/ivtv/ivtv-fileops.c s_vbi = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 134 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_set_irq_mask(itv, IVTV_IRQ_DEC_VBI_RE_INSERT); itv 140 drivers/media/pci/ivtv/ivtv-fileops.c static void ivtv_dualwatch(struct ivtv *itv) itv 146 drivers/media/pci/ivtv/ivtv-fileops.c new_stereo_mode = v4l2_ctrl_g_ctrl(itv->cxhdl.audio_mode); itv 148 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_call_all(itv, tuner, g_tuner, &vt); itv 152 drivers/media/pci/ivtv/ivtv-fileops.c if (new_stereo_mode == itv->dualwatch_stereo_mode) itv 156 drivers/media/pci/ivtv/ivtv-fileops.c itv->dualwatch_stereo_mode, new_stereo_mode); itv 157 drivers/media/pci/ivtv/ivtv-fileops.c if (v4l2_ctrl_s_ctrl(itv->cxhdl.audio_mode, new_stereo_mode)) itv 161 drivers/media/pci/ivtv/ivtv-fileops.c static void ivtv_update_pgm_info(struct ivtv *itv) itv 163 drivers/media/pci/ivtv/ivtv-fileops.c u32 wr_idx = (read_enc(itv->pgm_info_offset) - itv->pgm_info_offset - 4) / 24; itv 167 drivers/media/pci/ivtv/ivtv-fileops.c if (wr_idx >= itv->pgm_info_num) { itv 168 drivers/media/pci/ivtv/ivtv-fileops.c IVTV_DEBUG_WARN("Invalid PGM index %d (>= %d)\n", wr_idx, itv->pgm_info_num); itv 171 drivers/media/pci/ivtv/ivtv-fileops.c cnt = (wr_idx + itv->pgm_info_num - itv->pgm_info_write_idx) % itv->pgm_info_num; itv 173 drivers/media/pci/ivtv/ivtv-fileops.c int idx = (itv->pgm_info_write_idx + i) % itv->pgm_info_num; itv 174 drivers/media/pci/ivtv/ivtv-fileops.c struct v4l2_enc_idx_entry *e = itv->pgm_info + idx; itv 175 drivers/media/pci/ivtv/ivtv-fileops.c u32 addr = itv->pgm_info_offset + 4 + idx * 24; itv 181 drivers/media/pci/ivtv/ivtv-fileops.c if (e->offset > itv->mpg_data_received) { itv 184 drivers/media/pci/ivtv/ivtv-fileops.c e->offset += itv->vbi_data_inserted; itv 190 drivers/media/pci/ivtv/ivtv-fileops.c itv->pgm_info_write_idx = (itv->pgm_info_write_idx + i) % itv->pgm_info_num; itv 195 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = s->itv; itv 196 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s_vbi = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 204 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_update_pgm_info(itv); itv 207 drivers/media/pci/ivtv/ivtv-fileops.c itv->dualwatch_jiffies + itv 209 drivers/media/pci/ivtv/ivtv-fileops.c itv->dualwatch_jiffies = jiffies; itv 210 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_dualwatch(itv); itv 217 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_process_vbi_data(itv, buf, s_vbi->dma_pts, s_vbi->type); itv 221 drivers/media/pci/ivtv/ivtv-fileops.c buf = &itv->vbi.sliced_mpeg_buf; itv 243 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_process_vbi_data(itv, buf, s->dma_pts, s->type); itv 261 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 267 drivers/media/pci/ivtv/ivtv-fileops.c mutex_lock(&itv->serialize_lock); itv 277 drivers/media/pci/ivtv/ivtv-fileops.c static void ivtv_setup_sliced_vbi_buf(struct ivtv *itv) itv 279 drivers/media/pci/ivtv/ivtv-fileops.c int idx = itv->vbi.inserted_frame % IVTV_VBI_FRAMES; itv 281 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi.sliced_mpeg_buf.buf = itv->vbi.sliced_mpeg_data[idx]; itv 282 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi.sliced_mpeg_buf.bytesused = itv->vbi.sliced_mpeg_size[idx]; itv 283 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi.sliced_mpeg_buf.readpos = 0; itv 289 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = s->itv; itv 293 drivers/media/pci/ivtv/ivtv-fileops.c if (itv->vbi.insert_mpeg && s->type == IVTV_ENC_STREAM_TYPE_MPG && itv 294 drivers/media/pci/ivtv/ivtv-fileops.c !ivtv_raw_vbi(itv) && buf != &itv->vbi.sliced_mpeg_buf) { itv 298 drivers/media/pci/ivtv/ivtv-fileops.c u8 ch = itv->search_pack_header ? 0xba : 0xe0; itv 307 drivers/media/pci/ivtv/ivtv-fileops.c if (!itv->search_pack_header) { itv 313 drivers/media/pci/ivtv/ivtv-fileops.c itv->search_pack_header = 1; itv 326 drivers/media/pci/ivtv/ivtv-fileops.c itv->search_pack_header = 0; itv 328 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_setup_sliced_vbi_buf(itv); itv 341 drivers/media/pci/ivtv/ivtv-fileops.c if (s->type == IVTV_ENC_STREAM_TYPE_MPG && buf != &itv->vbi.sliced_mpeg_buf) itv 342 drivers/media/pci/ivtv/ivtv-fileops.c itv->mpg_data_received += len; itv 348 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = s->itv; itv 352 drivers/media/pci/ivtv/ivtv-fileops.c if (atomic_read(&itv->capturing) == 0 && s->fh == NULL) { itv 361 drivers/media/pci/ivtv/ivtv-fileops.c (s->type == IVTV_ENC_STREAM_TYPE_VBI && !ivtv_raw_vbi(itv))) itv 384 drivers/media/pci/ivtv/ivtv-fileops.c if (buf != &itv->vbi.sliced_mpeg_buf) { itv 388 drivers/media/pci/ivtv/ivtv-fileops.c int idx = itv->vbi.inserted_frame % IVTV_VBI_FRAMES; itv 389 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi.sliced_mpeg_size[idx] = 0; itv 390 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi.inserted_frame++; itv 391 drivers/media/pci/ivtv/ivtv-fileops.c itv->vbi_data_inserted += buf->bytesused; itv 407 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = s->itv; itv 417 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 418 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 447 drivers/media/pci/ivtv/ivtv-fileops.c s_vbi = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 472 drivers/media/pci/ivtv/ivtv-fileops.c if (test_and_clear_bit(IVTV_F_I_ENC_PAUSED, &itv->i_flags)) itv 473 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_vapi(itv, CX2341X_ENC_PAUSE_ENCODER, 1, 1); itv 496 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 497 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 502 drivers/media/pci/ivtv/ivtv-fileops.c if (mutex_lock_interruptible(&itv->serialize_lock)) itv 507 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 513 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 514 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 517 drivers/media/pci/ivtv/ivtv-fileops.c if (atomic_read(&itv->decoding) == 0) { itv 532 drivers/media/pci/ivtv/ivtv-fileops.c return ivtv_set_speed(itv, speed); itv 539 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 540 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 541 drivers/media/pci/ivtv/ivtv-fileops.c struct yuv_playback_info *yi = &itv->yuv_info; itv 566 drivers/media/pci/ivtv/ivtv-fileops.c return ivtv_write_vbi_from_user(itv, itv 572 drivers/media/pci/ivtv/ivtv-fileops.c if (ivtv_set_output_mode(itv, mode) != mode) { itv 580 drivers/media/pci/ivtv/ivtv-fileops.c rc = ivtv_start_decoding(id, itv->speed); itv 593 drivers/media/pci/ivtv/ivtv-fileops.c if (mode == OUT_YUV && s->q_full.length == 0 && itv->dma_data_req_size) { itv 594 drivers/media/pci/ivtv/ivtv-fileops.c while (count >= itv->dma_data_req_size) { itv 595 drivers/media/pci/ivtv/ivtv-fileops.c rc = ivtv_yuv_udma_stream_frame(itv, (void __user *)user_buf); itv 600 drivers/media/pci/ivtv/ivtv-fileops.c bytes_written += itv->dma_data_req_size; itv 601 drivers/media/pci/ivtv/ivtv-fileops.c user_buf += itv->dma_data_req_size; itv 602 drivers/media/pci/ivtv/ivtv-fileops.c count -= itv->dma_data_req_size; itv 621 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 627 drivers/media/pci/ivtv/ivtv-fileops.c mutex_lock(&itv->serialize_lock); itv 639 drivers/media/pci/ivtv/ivtv-fileops.c yi->stream_size + count > itv->dma_data_req_size) itv 641 drivers/media/pci/ivtv/ivtv-fileops.c itv->dma_data_req_size - yi->stream_size); itv 657 drivers/media/pci/ivtv/ivtv-fileops.c if (yi->stream_size == itv->dma_data_req_size) { itv 676 drivers/media/pci/ivtv/ivtv-fileops.c if (s->q_full.length >= itv->dma_data_req_size) { itv 680 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_yuv_setup_stream_frame(itv); itv 682 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 683 drivers/media/pci/ivtv/ivtv-fileops.c prepare_to_wait(&itv->dma_waitq, &wait, TASK_INTERRUPTIBLE); itv 688 drivers/media/pci/ivtv/ivtv-fileops.c finish_wait(&itv->dma_waitq, &wait); itv 689 drivers/media/pci/ivtv/ivtv-fileops.c mutex_lock(&itv->serialize_lock); itv 696 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_queue_move(s, &s->q_full, NULL, &s->q_predma, itv->dma_data_req_size); itv 697 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_dma_stream_dec_prepare(s, itv->dma_data_req_offset + IVTV_DECODER_OFFSET, 1); itv 711 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 714 drivers/media/pci/ivtv/ivtv-fileops.c if (mutex_lock_interruptible(&itv->serialize_lock)) itv 717 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 724 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 725 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 736 drivers/media/pci/ivtv/ivtv-fileops.c clear_bit(IVTV_F_I_EV_VSYNC_ENABLED, &itv->i_flags); itv 743 drivers/media/pci/ivtv/ivtv-fileops.c set_bit(IVTV_F_I_EV_VSYNC_ENABLED, &itv->i_flags); itv 744 drivers/media/pci/ivtv/ivtv-fileops.c if (test_bit(IVTV_F_I_EV_VSYNC, &itv->i_flags) || itv 745 drivers/media/pci/ivtv/ivtv-fileops.c test_bit(IVTV_F_I_EV_DEC_STOPPED, &itv->i_flags)) itv 759 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 760 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 770 drivers/media/pci/ivtv/ivtv-fileops.c mutex_lock(&itv->serialize_lock); itv 772 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 798 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 799 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 807 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s_vbi = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 837 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 838 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 843 drivers/media/pci/ivtv/ivtv-fileops.c test_bit(IVTV_F_I_DECODING_YUV, &itv->i_flags)) { itv 845 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_yuv_close(itv); itv 853 drivers/media/pci/ivtv/ivtv-fileops.c itv->output_mode = OUT_NONE; itv 858 drivers/media/pci/ivtv/ivtv-fileops.c if (itv->output_mode == OUT_UDMA_YUV && id->yuv_frames) itv 859 drivers/media/pci/ivtv/ivtv-fileops.c itv->output_mode = OUT_NONE; itv 861 drivers/media/pci/ivtv/ivtv-fileops.c itv->speed = 0; itv 862 drivers/media/pci/ivtv/ivtv-fileops.c clear_bit(IVTV_F_I_DEC_PAUSED, &itv->i_flags); itv 870 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = id->itv; itv 871 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s = &itv->streams[id->type]; itv 875 drivers/media/pci/ivtv/ivtv-fileops.c mutex_lock(&itv->serialize_lock); itv 881 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_mute(itv); itv 883 drivers/media/pci/ivtv/ivtv-fileops.c clear_bit(IVTV_F_I_RADIO_USER, &itv->i_flags); itv 885 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_call_all(itv, video, s_std, itv->std); itv 887 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_audio_set_io(itv); itv 888 drivers/media/pci/ivtv/ivtv-fileops.c if (itv->hw_flags & IVTV_HW_SAA711X) { itv 889 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_call_hw(itv, IVTV_HW_SAA711X, video, s_crystal_freq, itv 892 drivers/media/pci/ivtv/ivtv-fileops.c if (atomic_read(&itv->capturing) > 0) { itv 894 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_vapi(itv, CX2341X_ENC_MUTE_VIDEO, 1, itv 895 drivers/media/pci/ivtv/ivtv-fileops.c v4l2_ctrl_g_ctrl(itv->cxhdl.video_mute) | itv 896 drivers/media/pci/ivtv/ivtv-fileops.c (v4l2_ctrl_g_ctrl(itv->cxhdl.video_mute_yuv) << 8)); itv 899 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_unmute(itv); itv 912 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv_stream *s_vout = &itv->streams[IVTV_DEC_STREAM_TYPE_VOUT]; itv 918 drivers/media/pci/ivtv/ivtv-fileops.c if (itv->output_mode == OUT_NONE && !test_bit(IVTV_F_S_APPL_IO, &s_vout->s_flags)) { itv 920 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_disable_cc(itv); itv 927 drivers/media/pci/ivtv/ivtv-fileops.c mutex_unlock(&itv->serialize_lock); itv 935 drivers/media/pci/ivtv/ivtv-fileops.c struct ivtv *itv = s->itv; itv 941 drivers/media/pci/ivtv/ivtv-fileops.c if (ivtv_init_on_first_open(itv)) { itv 957 drivers/media/pci/ivtv/ivtv-fileops.c res = ivtv_firmware_check(itv, "ivtv_serialized_open"); itv 959 drivers/media/pci/ivtv/ivtv-fileops.c res = ivtv_firmware_check(itv, "ivtv_serialized_open"); itv 965 drivers/media/pci/ivtv/ivtv-fileops.c test_bit(IVTV_F_S_CLAIMED, &itv->streams[IVTV_DEC_STREAM_TYPE_YUV].s_flags)) itv 969 drivers/media/pci/ivtv/ivtv-fileops.c test_bit(IVTV_F_S_CLAIMED, &itv->streams[IVTV_DEC_STREAM_TYPE_MPG].s_flags)) itv 977 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_udma_alloc(itv); itv 987 drivers/media/pci/ivtv/ivtv-fileops.c item->itv = itv; itv 995 drivers/media/pci/ivtv/ivtv-fileops.c if (!test_bit(IVTV_F_I_RADIO_USER, &itv->i_flags)) { itv 996 drivers/media/pci/ivtv/ivtv-fileops.c if (atomic_read(&itv->capturing) > 0) { itv 1006 drivers/media/pci/ivtv/ivtv-fileops.c set_bit(IVTV_F_I_RADIO_USER, &itv->i_flags); itv 1008 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_mute(itv); itv 1010 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_call_all(itv, tuner, s_radio); itv 1012 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_audio_set_io(itv); itv 1013 drivers/media/pci/ivtv/ivtv-fileops.c if (itv->hw_flags & IVTV_HW_SAA711X) { itv 1014 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_call_hw(itv, IVTV_HW_SAA711X, video, s_crystal_freq, itv 1018 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_unmute(itv); itv 1023 drivers/media/pci/ivtv/ivtv-fileops.c clear_bit(IVTV_F_I_DEC_YUV, &itv->i_flags); itv 1025 drivers/media/pci/ivtv/ivtv-fileops.c set_bit(IVTV_F_I_DEC_YUV, &itv->i_flags); itv 1027 drivers/media/pci/ivtv/ivtv-fileops.c itv->dma_data_req_size = itv 1028 drivers/media/pci/ivtv/ivtv-fileops.c 1080 * ((itv->yuv_info.v4l2_src_h + 31) & ~31); itv 1029 drivers/media/pci/ivtv/ivtv-fileops.c itv->yuv_info.stream_size = 0; itv 1046 drivers/media/pci/ivtv/ivtv-fileops.c void ivtv_mute(struct ivtv *itv) itv 1048 drivers/media/pci/ivtv/ivtv-fileops.c if (atomic_read(&itv->capturing)) itv 1049 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_vapi(itv, CX2341X_ENC_MUTE_AUDIO, 1, 1); itv 1053 drivers/media/pci/ivtv/ivtv-fileops.c void ivtv_unmute(struct ivtv *itv) itv 1055 drivers/media/pci/ivtv/ivtv-fileops.c if (atomic_read(&itv->capturing)) { itv 1057 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_vapi(itv, CX2341X_ENC_MISC, 1, 12); itv 1058 drivers/media/pci/ivtv/ivtv-fileops.c ivtv_vapi(itv, CX2341X_ENC_MUTE_AUDIO, 1, 0); itv 24 drivers/media/pci/ivtv/ivtv-fileops.h void ivtv_mute(struct ivtv *itv); itv 25 drivers/media/pci/ivtv/ivtv-fileops.h void ivtv_unmute(struct ivtv *itv); itv 40 drivers/media/pci/ivtv/ivtv-firmware.c static int load_fw_direct(const char *fn, volatile u8 __iomem *mem, struct ivtv *itv, long size) itv 46 drivers/media/pci/ivtv/ivtv-firmware.c if (retries && request_firmware(&fw, fn, &itv->pdev->dev) == 0) { itv 76 drivers/media/pci/ivtv/ivtv-firmware.c void ivtv_halt_firmware(struct ivtv *itv) itv 79 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->has_cx23415 && itv->dec_mbox.mbox) itv 80 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_vapi(itv, CX2341X_DEC_HALT_FW, 0); itv 81 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->enc_mbox.mbox) itv 82 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_vapi(itv, CX2341X_ENC_HALT_FW, 0); itv 85 drivers/media/pci/ivtv/ivtv-firmware.c itv->enc_mbox.mbox = itv->dec_mbox.mbox = NULL; itv 97 drivers/media/pci/ivtv/ivtv-firmware.c if (!itv->has_cx23415) itv 116 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->has_cx23415) { itv 128 drivers/media/pci/ivtv/ivtv-firmware.c void ivtv_firmware_versions(struct ivtv *itv) itv 133 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_vapi_result(itv, data, CX2341X_ENC_GET_VERSION, 0); itv 139 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->has_cx23415) { itv 141 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_vapi_result(itv, data, CX2341X_DEC_GET_VERSION, 0); itv 146 drivers/media/pci/ivtv/ivtv-firmware.c static int ivtv_firmware_copy(struct ivtv *itv) itv 150 drivers/media/pci/ivtv/ivtv-firmware.c itv->enc_mem, itv, IVTV_FW_ENC_SIZE) != IVTV_FW_ENC_SIZE) { itv 154 drivers/media/pci/ivtv/ivtv-firmware.c if (!itv->has_cx23415) itv 159 drivers/media/pci/ivtv/ivtv-firmware.c itv->dec_mem, itv, IVTV_FW_DEC_SIZE) != IVTV_FW_DEC_SIZE) { itv 183 drivers/media/pci/ivtv/ivtv-firmware.c int ivtv_firmware_init(struct ivtv *itv) itv 187 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_halt_firmware(itv); itv 190 drivers/media/pci/ivtv/ivtv-firmware.c err = ivtv_firmware_copy(itv); itv 199 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->has_cx23415) itv 206 drivers/media/pci/ivtv/ivtv-firmware.c itv->enc_mbox.mbox = ivtv_search_mailbox(itv->enc_mem, IVTV_ENCODER_SIZE); itv 207 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->enc_mbox.mbox == NULL) itv 209 drivers/media/pci/ivtv/ivtv-firmware.c else if (ivtv_vapi(itv, CX2341X_ENC_PING_FW, 0)) { itv 211 drivers/media/pci/ivtv/ivtv-firmware.c itv->enc_mbox.mbox = NULL; itv 213 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->enc_mbox.mbox == NULL) itv 216 drivers/media/pci/ivtv/ivtv-firmware.c if (!itv->has_cx23415) itv 219 drivers/media/pci/ivtv/ivtv-firmware.c itv->dec_mbox.mbox = ivtv_search_mailbox(itv->dec_mem, IVTV_DECODER_SIZE); itv 220 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->dec_mbox.mbox == NULL) { itv 222 drivers/media/pci/ivtv/ivtv-firmware.c } else if (itv->has_cx23415 && ivtv_vapi(itv, CX2341X_DEC_PING_FW, 0)) { itv 224 drivers/media/pci/ivtv/ivtv-firmware.c itv->dec_mbox.mbox = NULL; itv 227 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_yuv_filter_check(itv); itv 229 drivers/media/pci/ivtv/ivtv-firmware.c return itv->dec_mbox.mbox ? 0 : -ENODEV; itv 232 drivers/media/pci/ivtv/ivtv-firmware.c void ivtv_init_mpeg_decoder(struct ivtv *itv) itv 239 drivers/media/pci/ivtv/ivtv-firmware.c data[1] = itv->cxhdl.width; /* YUV source width */ itv 240 drivers/media/pci/ivtv/ivtv-firmware.c data[2] = itv->cxhdl.height; itv 241 drivers/media/pci/ivtv/ivtv-firmware.c data[3] = itv->cxhdl.audio_properties; /* Audio settings to use, itv 243 drivers/media/pci/ivtv/ivtv-firmware.c if (ivtv_api(itv, CX2341X_DEC_SET_DECODER_SOURCE, 4, data)) { itv 248 drivers/media/pci/ivtv/ivtv-firmware.c if (ivtv_vapi(itv, CX2341X_DEC_START_PLAYBACK, 2, 0, 1) != 0) { itv 252 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_api_get_data(&itv->dec_mbox, IVTV_MBOX_DMA, 2, data); itv 253 drivers/media/pci/ivtv/ivtv-firmware.c mem_offset = itv->dec_mem + data[1]; itv 256 drivers/media/pci/ivtv/ivtv-firmware.c mem_offset, itv, IVTV_DECODE_INIT_MPEG_SIZE)) <= 0) { itv 260 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_vapi(itv, CX2341X_DEC_SCHED_DMA_FROM_HOST, 3, 0, readbytes, 0); itv 263 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_vapi(itv, CX2341X_DEC_STOP_PLAYBACK, 4, 0, 0, 0, 1); itv 267 drivers/media/pci/ivtv/ivtv-firmware.c static int ivtv_firmware_restart(struct ivtv *itv) itv 272 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) itv 274 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_routing, itv 276 drivers/media/pci/ivtv/ivtv-firmware.c itv->card->video_outputs[itv->active_output].video_output, itv 279 drivers/media/pci/ivtv/ivtv-firmware.c mutex_lock(&itv->udma.lock); itv 281 drivers/media/pci/ivtv/ivtv-firmware.c rc = ivtv_firmware_init(itv); itv 283 drivers/media/pci/ivtv/ivtv-firmware.c mutex_unlock(&itv->udma.lock); itv 288 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_mailbox_cache_invalidate(itv); itv 291 drivers/media/pci/ivtv/ivtv-firmware.c std = itv->std; itv 292 drivers/media/pci/ivtv/ivtv-firmware.c itv->std = 0; itv 293 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_s_std_enc(itv, std); itv 295 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { itv 296 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_init_mpeg_decoder(itv); itv 299 drivers/media/pci/ivtv/ivtv-firmware.c std = itv->std_out; itv 300 drivers/media/pci/ivtv/ivtv-firmware.c itv->std_out = 0; itv 301 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_s_std_dec(itv, std); itv 304 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->ivtvfb_restore) itv 305 drivers/media/pci/ivtv/ivtv-firmware.c itv->ivtvfb_restore(itv); itv 308 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_set_osd_alpha(itv); itv 311 drivers/media/pci/ivtv/ivtv-firmware.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_routing, itv 313 drivers/media/pci/ivtv/ivtv-firmware.c itv->card->video_outputs[itv->active_output].video_output, itv 317 drivers/media/pci/ivtv/ivtv-firmware.c mutex_unlock(&itv->udma.lock); itv 323 drivers/media/pci/ivtv/ivtv-firmware.c int ivtv_firmware_check(struct ivtv *itv, char *where) itv 328 drivers/media/pci/ivtv/ivtv-firmware.c if (ivtv_vapi(itv, CX2341X_ENC_PING_FW, 0) < 0) { itv 334 drivers/media/pci/ivtv/ivtv-firmware.c if (!res && !atomic_read(&itv->capturing) && itv 335 drivers/media/pci/ivtv/ivtv-firmware.c (!atomic_read(&itv->decoding) || itv 336 drivers/media/pci/ivtv/ivtv-firmware.c (atomic_read(&itv->decoding) < 2 && test_bit(IVTV_F_I_DEC_YUV, itv 337 drivers/media/pci/ivtv/ivtv-firmware.c &itv->i_flags)))) { itv 339 drivers/media/pci/ivtv/ivtv-firmware.c if (ivtv_vapi(itv, CX2341X_ENC_MISC, 1, 12) < 0) { itv 345 drivers/media/pci/ivtv/ivtv-firmware.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { itv 358 drivers/media/pci/ivtv/ivtv-firmware.c if (ivtv_vapi(itv, CX2341X_DEC_PING_FW, 0) < 0) { itv 365 drivers/media/pci/ivtv/ivtv-firmware.c if (res && !atomic_read(&itv->capturing) && itv 366 drivers/media/pci/ivtv/ivtv-firmware.c !atomic_read(&itv->decoding)) { itv 369 drivers/media/pci/ivtv/ivtv-firmware.c res = ivtv_firmware_restart(itv); itv 13 drivers/media/pci/ivtv/ivtv-firmware.h int ivtv_firmware_init(struct ivtv *itv); itv 14 drivers/media/pci/ivtv/ivtv-firmware.h void ivtv_firmware_versions(struct ivtv *itv); itv 15 drivers/media/pci/ivtv/ivtv-firmware.h void ivtv_halt_firmware(struct ivtv *itv); itv 16 drivers/media/pci/ivtv/ivtv-firmware.h void ivtv_init_mpeg_decoder(struct ivtv *itv); itv 17 drivers/media/pci/ivtv/ivtv-firmware.h int ivtv_firmware_check(struct ivtv *itv, char *where); itv 94 drivers/media/pci/ivtv/ivtv-gpio.c void ivtv_reset_ir_gpio(struct ivtv *itv) itv 98 drivers/media/pci/ivtv/ivtv-gpio.c if (itv->card->type != IVTV_CARD_PVR_150) itv 119 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = algo->data; itv 126 drivers/media/pci/ivtv/ivtv-gpio.c curout &= ~(1 << itv->card->xceive_pin); itv 130 drivers/media/pci/ivtv/ivtv-gpio.c curout |= 1 << itv->card->xceive_pin; itv 148 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 151 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_audio_freq.mask; itv 154 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_freq.f32000; itv 157 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_freq.f44100; itv 161 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_freq.f48000; itv 171 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 174 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_audio_detect.mask; itv 185 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 188 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_audio_mode.mask; itv 191 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_mode.lang1; itv 194 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_mode.lang2; itv 197 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_mode.mono; itv 202 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_mode.stereo; itv 212 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 215 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_audio_input.mask; itv 216 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_input.radio; itv 225 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 230 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_audio_input.mask; itv 233 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_input.tuner; itv 236 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_input.linein; itv 240 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_audio_input.radio; itv 251 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 256 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_audio_mute.mask; itv 257 drivers/media/pci/ivtv/ivtv-gpio.c data = ctrl->val ? itv->card->gpio_audio_mute.mute : 0; itv 269 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 274 drivers/media/pci/ivtv/ivtv-gpio.c v4l2_ctrl_handler_log_status(&itv->hdl_gpio, sd->name); itv 281 drivers/media/pci/ivtv/ivtv-gpio.c struct ivtv *itv = sd_to_ivtv(sd); itv 286 drivers/media/pci/ivtv/ivtv-gpio.c mask = itv->card->gpio_video_input.mask; itv 288 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_video_input.tuner; itv 290 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_video_input.composite; itv 292 drivers/media/pci/ivtv/ivtv-gpio.c data = itv->card->gpio_video_input.svideo; itv 328 drivers/media/pci/ivtv/ivtv-gpio.c int ivtv_gpio_init(struct ivtv *itv) itv 332 drivers/media/pci/ivtv/ivtv-gpio.c if (itv->card->xceive_pin) itv 333 drivers/media/pci/ivtv/ivtv-gpio.c pin = 1 << itv->card->xceive_pin; itv 335 drivers/media/pci/ivtv/ivtv-gpio.c if ((itv->card->gpio_init.direction | pin) == 0) itv 342 drivers/media/pci/ivtv/ivtv-gpio.c write_reg(itv->card->gpio_init.initial_value | pin, IVTV_REG_GPIO_OUT); itv 343 drivers/media/pci/ivtv/ivtv-gpio.c write_reg(itv->card->gpio_init.direction | pin, IVTV_REG_GPIO_DIR); itv 344 drivers/media/pci/ivtv/ivtv-gpio.c v4l2_subdev_init(&itv->sd_gpio, &subdev_ops); itv 345 drivers/media/pci/ivtv/ivtv-gpio.c snprintf(itv->sd_gpio.name, sizeof(itv->sd_gpio.name), "%s-gpio", itv->v4l2_dev.name); itv 346 drivers/media/pci/ivtv/ivtv-gpio.c itv->sd_gpio.grp_id = IVTV_HW_GPIO; itv 347 drivers/media/pci/ivtv/ivtv-gpio.c v4l2_ctrl_handler_init(&itv->hdl_gpio, 1); itv 348 drivers/media/pci/ivtv/ivtv-gpio.c v4l2_ctrl_new_std(&itv->hdl_gpio, &gpio_ctrl_ops, itv 350 drivers/media/pci/ivtv/ivtv-gpio.c if (itv->hdl_gpio.error) itv 351 drivers/media/pci/ivtv/ivtv-gpio.c return itv->hdl_gpio.error; itv 352 drivers/media/pci/ivtv/ivtv-gpio.c itv->sd_gpio.ctrl_handler = &itv->hdl_gpio; itv 353 drivers/media/pci/ivtv/ivtv-gpio.c v4l2_ctrl_handler_setup(&itv->hdl_gpio); itv 354 drivers/media/pci/ivtv/ivtv-gpio.c return v4l2_device_register_subdev(&itv->v4l2_dev, &itv->sd_gpio); itv 13 drivers/media/pci/ivtv/ivtv-gpio.h int ivtv_gpio_init(struct ivtv *itv); itv 14 drivers/media/pci/ivtv/ivtv-gpio.h void ivtv_reset_ir_gpio(struct ivtv *itv); itv 163 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_i2c_new_ir(struct ivtv *itv, u32 hw, const char *type, u8 addr) itv 166 drivers/media/pci/ivtv/ivtv-i2c.c struct i2c_adapter *adap = &itv->i2c_adap; itv 167 drivers/media/pci/ivtv/ivtv-i2c.c struct IR_i2c_init_data *init_data = &itv->ir_i2c_init_data; itv 171 drivers/media/pci/ivtv/ivtv-i2c.c if (itv->hw_flags & IVTV_HW_IR_ANY) itv 188 drivers/media/pci/ivtv/ivtv-i2c.c init_data->name = itv->card_name; itv 196 drivers/media/pci/ivtv/ivtv-i2c.c init_data->name = itv->card_name; itv 200 drivers/media/pci/ivtv/ivtv-i2c.c init_data->name = itv->card_name; itv 216 drivers/media/pci/ivtv/ivtv-i2c.c struct i2c_client *ivtv_i2c_new_ir_legacy(struct ivtv *itv) itv 238 drivers/media/pci/ivtv/ivtv-i2c.c return i2c_new_probed_device(&itv->i2c_adap, &info, addr_list, NULL); itv 241 drivers/media/pci/ivtv/ivtv-i2c.c int ivtv_i2c_register(struct ivtv *itv, unsigned idx) itv 244 drivers/media/pci/ivtv/ivtv-i2c.c struct i2c_adapter *adap = &itv->i2c_adap; itv 250 drivers/media/pci/ivtv/ivtv-i2c.c sd = v4l2_i2c_new_subdev(&itv->v4l2_dev, adap, type, 0, itv 251 drivers/media/pci/ivtv/ivtv-i2c.c itv->card_i2c->radio); itv 254 drivers/media/pci/ivtv/ivtv-i2c.c sd = v4l2_i2c_new_subdev(&itv->v4l2_dev, adap, type, 0, itv 255 drivers/media/pci/ivtv/ivtv-i2c.c itv->card_i2c->demod); itv 258 drivers/media/pci/ivtv/ivtv-i2c.c sd = v4l2_i2c_new_subdev(&itv->v4l2_dev, adap, type, 0, itv 259 drivers/media/pci/ivtv/ivtv-i2c.c itv->card_i2c->tv); itv 266 drivers/media/pci/ivtv/ivtv-i2c.c return ivtv_i2c_new_ir(itv, hw, type, hw_addrs[idx]); itv 274 drivers/media/pci/ivtv/ivtv-i2c.c sd = v4l2_i2c_new_subdev(&itv->v4l2_dev, itv 285 drivers/media/pci/ivtv/ivtv-i2c.c pdata.pvr150_workaround = itv->pvr150_workaround; itv 286 drivers/media/pci/ivtv/ivtv-i2c.c sd = v4l2_i2c_new_subdev_board(&itv->v4l2_dev, adap, itv 289 drivers/media/pci/ivtv/ivtv-i2c.c sd = v4l2_i2c_new_subdev(&itv->v4l2_dev, itv 297 drivers/media/pci/ivtv/ivtv-i2c.c struct v4l2_subdev *ivtv_find_hw(struct ivtv *itv, u32 hw) itv 302 drivers/media/pci/ivtv/ivtv-i2c.c spin_lock(&itv->v4l2_dev.lock); itv 303 drivers/media/pci/ivtv/ivtv-i2c.c v4l2_device_for_each_subdev(sd, &itv->v4l2_dev) { itv 309 drivers/media/pci/ivtv/ivtv-i2c.c spin_unlock(&itv->v4l2_dev.lock); itv 314 drivers/media/pci/ivtv/ivtv-i2c.c static void ivtv_setscl(struct ivtv *itv, int state) itv 322 drivers/media/pci/ivtv/ivtv-i2c.c static void ivtv_setsda(struct ivtv *itv, int state) itv 330 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_getscl(struct ivtv *itv) itv 336 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_getsda(struct ivtv *itv) itv 342 drivers/media/pci/ivtv/ivtv-i2c.c static void ivtv_scldelay(struct ivtv *itv) itv 347 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_getscl(itv); itv 351 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_waitscl(struct ivtv *itv, int val) itv 355 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 357 drivers/media/pci/ivtv/ivtv-i2c.c if (ivtv_getscl(itv) == val) itv 364 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_waitsda(struct ivtv *itv, int val) itv 368 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 370 drivers/media/pci/ivtv/ivtv-i2c.c if (ivtv_getsda(itv) == val) itv 377 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_ack(struct ivtv *itv) itv 381 drivers/media/pci/ivtv/ivtv-i2c.c if (ivtv_getscl(itv) == 1) { itv 383 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 384 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 0)) { itv 389 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 1); itv 390 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 391 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 392 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitsda(itv, 0)) { itv 396 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 397 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 0)) { itv 405 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_sendbyte(struct ivtv *itv, unsigned char byte) itv 411 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 412 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 0)) { itv 417 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, bit); itv 418 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitsda(itv, bit)) { itv 422 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 423 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 1)) { itv 428 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 429 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 0)) { itv 433 drivers/media/pci/ivtv/ivtv-i2c.c return ivtv_ack(itv); itv 438 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_readbyte(struct ivtv *itv, unsigned char *byte, int nack) itv 444 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 1); itv 445 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 447 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 448 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 449 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 450 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 1)) { itv 454 drivers/media/pci/ivtv/ivtv-i2c.c *byte = ((*byte)<<1)|ivtv_getsda(itv); itv 456 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 457 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 458 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, nack); itv 459 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 460 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 461 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 462 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 463 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 470 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_start(struct ivtv *itv) itv 474 drivers/media/pci/ivtv/ivtv-i2c.c sda = ivtv_getsda(itv); itv 477 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 1); itv 478 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitsda(itv, 1)) { itv 483 drivers/media/pci/ivtv/ivtv-i2c.c if (ivtv_getscl(itv) != 1) { itv 484 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 485 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 1)) { itv 490 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 0); itv 491 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 496 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_stop(struct ivtv *itv) itv 500 drivers/media/pci/ivtv/ivtv-i2c.c if (ivtv_getscl(itv) != 0) { itv 502 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 503 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 0)) { itv 507 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 0); itv 508 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 509 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 510 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitscl(itv, 1)) { itv 514 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 515 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 1); itv 516 drivers/media/pci/ivtv/ivtv-i2c.c if (!ivtv_waitsda(itv, 1)) { itv 519 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 0); itv 520 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 521 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 522 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_scldelay(itv); itv 523 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 1); itv 525 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_waitsda(itv, 1); itv 533 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_write(struct ivtv *itv, unsigned char addr, unsigned char *data, u32 len, int do_stop) itv 539 drivers/media/pci/ivtv/ivtv-i2c.c ret = ivtv_start(itv); itv 542 drivers/media/pci/ivtv/ivtv-i2c.c ret = ivtv_sendbyte(itv, addr<<1); itv 544 drivers/media/pci/ivtv/ivtv-i2c.c ret = ivtv_sendbyte(itv, data[i]); itv 547 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_stop(itv); itv 556 drivers/media/pci/ivtv/ivtv-i2c.c static int ivtv_read(struct ivtv *itv, unsigned char addr, unsigned char *data, u32 len) itv 562 drivers/media/pci/ivtv/ivtv-i2c.c ret = ivtv_start(itv); itv 564 drivers/media/pci/ivtv/ivtv-i2c.c ret = ivtv_sendbyte(itv, (addr << 1) | 1); itv 566 drivers/media/pci/ivtv/ivtv-i2c.c ret = ivtv_readbyte(itv, &data[i], i == len - 1); itv 568 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_stop(itv); itv 581 drivers/media/pci/ivtv/ivtv-i2c.c struct ivtv *itv = to_ivtv(v4l2_dev); itv 585 drivers/media/pci/ivtv/ivtv-i2c.c mutex_lock(&itv->i2c_bus_lock); itv 588 drivers/media/pci/ivtv/ivtv-i2c.c retval = ivtv_read(itv, msgs[i].addr, msgs[i].buf, msgs[i].len); itv 593 drivers/media/pci/ivtv/ivtv-i2c.c retval = ivtv_write(itv, msgs[i].addr, msgs[i].buf, msgs[i].len, stop); itv 596 drivers/media/pci/ivtv/ivtv-i2c.c mutex_unlock(&itv->i2c_bus_lock); itv 621 drivers/media/pci/ivtv/ivtv-i2c.c struct ivtv *itv = (struct ivtv *)data; itv 624 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_state |= 0x01; itv 626 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_state &= ~0x01; itv 630 drivers/media/pci/ivtv/ivtv-i2c.c write_reg(~itv->i2c_state, IVTV_REG_I2C_SETSCL_OFFSET); itv 635 drivers/media/pci/ivtv/ivtv-i2c.c struct ivtv *itv = (struct ivtv *)data; itv 638 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_state |= 0x01; itv 640 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_state &= ~0x01; itv 644 drivers/media/pci/ivtv/ivtv-i2c.c write_reg(~itv->i2c_state, IVTV_REG_I2C_SETSDA_OFFSET); itv 649 drivers/media/pci/ivtv/ivtv-i2c.c struct ivtv *itv = (struct ivtv *)data; itv 656 drivers/media/pci/ivtv/ivtv-i2c.c struct ivtv *itv = (struct ivtv *)data; itv 685 drivers/media/pci/ivtv/ivtv-i2c.c int init_ivtv_i2c(struct ivtv *itv) itv 698 drivers/media/pci/ivtv/ivtv-i2c.c if (itv->options.newi2c > 0) { itv 699 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_adap = ivtv_i2c_adap_hw_template; itv 701 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_adap = ivtv_i2c_adap_template; itv 702 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_algo = ivtv_i2c_algo_template; itv 704 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_algo.udelay = itv->options.i2c_clock_period / 2; itv 705 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_algo.data = itv; itv 706 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_adap.algo_data = &itv->i2c_algo; itv 708 drivers/media/pci/ivtv/ivtv-i2c.c sprintf(itv->i2c_adap.name + strlen(itv->i2c_adap.name), " #%d", itv 709 drivers/media/pci/ivtv/ivtv-i2c.c itv->instance); itv 710 drivers/media/pci/ivtv/ivtv-i2c.c i2c_set_adapdata(&itv->i2c_adap, &itv->v4l2_dev); itv 712 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_client = ivtv_i2c_client_template; itv 713 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_client.adapter = &itv->i2c_adap; itv 714 drivers/media/pci/ivtv/ivtv-i2c.c itv->i2c_adap.dev.parent = &itv->pdev->dev; itv 717 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setscl(itv, 1); itv 718 drivers/media/pci/ivtv/ivtv-i2c.c ivtv_setsda(itv, 1); itv 720 drivers/media/pci/ivtv/ivtv-i2c.c if (itv->options.newi2c > 0) itv 721 drivers/media/pci/ivtv/ivtv-i2c.c retval = i2c_add_adapter(&itv->i2c_adap); itv 723 drivers/media/pci/ivtv/ivtv-i2c.c retval = i2c_bit_add_bus(&itv->i2c_adap); itv 728 drivers/media/pci/ivtv/ivtv-i2c.c void exit_ivtv_i2c(struct ivtv *itv) itv 732 drivers/media/pci/ivtv/ivtv-i2c.c i2c_del_adapter(&itv->i2c_adap); itv 12 drivers/media/pci/ivtv/ivtv-i2c.h struct i2c_client *ivtv_i2c_new_ir_legacy(struct ivtv *itv); itv 13 drivers/media/pci/ivtv/ivtv-i2c.h int ivtv_i2c_register(struct ivtv *itv, unsigned idx); itv 14 drivers/media/pci/ivtv/ivtv-i2c.h struct v4l2_subdev *ivtv_find_hw(struct ivtv *itv, u32 hw); itv 17 drivers/media/pci/ivtv/ivtv-i2c.h int init_ivtv_i2c(struct ivtv *itv); itv 18 drivers/media/pci/ivtv/ivtv-i2c.h void exit_ivtv_i2c(struct ivtv *itv); itv 119 drivers/media/pci/ivtv/ivtv-ioctl.c void ivtv_set_osd_alpha(struct ivtv *itv) itv 121 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_OSD_SET_GLOBAL_ALPHA, 3, itv 122 drivers/media/pci/ivtv/ivtv-ioctl.c itv->osd_global_alpha_state, itv->osd_global_alpha, !itv->osd_local_alpha_state); itv 123 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_OSD_SET_CHROMA_KEY, 2, itv->osd_chroma_key_state, itv->osd_chroma_key); itv 126 drivers/media/pci/ivtv/ivtv-ioctl.c int ivtv_set_speed(struct ivtv *itv, int speed) itv 135 drivers/media/pci/ivtv/ivtv-ioctl.c if (speed == itv->speed && !single_step) itv 138 drivers/media/pci/ivtv/ivtv-ioctl.c if (single_step && (speed < 0) == (itv->speed < 0)) { itv 140 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_DEC_STEP_VIDEO, 1, 0); itv 141 drivers/media/pci/ivtv/ivtv-ioctl.c itv->speed = speed; itv 152 drivers/media/pci/ivtv/ivtv-ioctl.c data[3] = v4l2_ctrl_g_ctrl(itv->cxhdl.video_b_frames); itv 153 drivers/media/pci/ivtv/ivtv-ioctl.c data[4] = (speed == 1500 || speed == 500) ? itv->speed_mute_audio : 0; itv 163 drivers/media/pci/ivtv/ivtv-ioctl.c if (atomic_read(&itv->decoding) > 0) { itv 167 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_DEC_PAUSE_PLAYBACK, 1, 0); itv 170 drivers/media/pci/ivtv/ivtv-ioctl.c mutex_unlock(&itv->serialize_lock); itv 171 drivers/media/pci/ivtv/ivtv-ioctl.c prepare_to_wait(&itv->dma_waitq, &wait, TASK_INTERRUPTIBLE); itv 172 drivers/media/pci/ivtv/ivtv-ioctl.c while (test_bit(IVTV_F_I_DMA, &itv->i_flags)) { itv 179 drivers/media/pci/ivtv/ivtv-ioctl.c finish_wait(&itv->dma_waitq, &wait); itv 180 drivers/media/pci/ivtv/ivtv-ioctl.c mutex_lock(&itv->serialize_lock); itv 185 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_api(itv, CX2341X_DEC_SET_PLAYBACK_SPEED, 7, data); itv 191 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_DEC_STEP_VIDEO, 1, 0); itv 193 drivers/media/pci/ivtv/ivtv-ioctl.c itv->speed = speed; itv 236 drivers/media/pci/ivtv/ivtv-ioctl.c static int ivtv_video_command(struct ivtv *itv, struct ivtv_open_id *id, itv 239 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[IVTV_DEC_STREAM_TYPE_MPG]; itv 241 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 247 drivers/media/pci/ivtv/ivtv-ioctl.c dc->start.speed = ivtv_validate_speed(itv->speed, dc->start.speed); itv 257 drivers/media/pci/ivtv/ivtv-ioctl.c itv->speed_mute_audio = dc->flags & V4L2_DEC_CMD_START_MUTE_AUDIO; itv 258 drivers/media/pci/ivtv/ivtv-ioctl.c if (ivtv_set_output_mode(itv, OUT_MPG) != OUT_MPG) itv 260 drivers/media/pci/ivtv/ivtv-ioctl.c if (test_and_clear_bit(IVTV_F_I_DEC_PAUSED, &itv->i_flags)) { itv 262 drivers/media/pci/ivtv/ivtv-ioctl.c itv->speed = 0; itv 272 drivers/media/pci/ivtv/ivtv-ioctl.c if (atomic_read(&itv->decoding) == 0) itv 274 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->output_mode != OUT_MPG) itv 277 drivers/media/pci/ivtv/ivtv-ioctl.c itv->output_mode = OUT_NONE; itv 283 drivers/media/pci/ivtv/ivtv-ioctl.c if (!atomic_read(&itv->decoding)) itv 285 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->output_mode != OUT_MPG) itv 287 drivers/media/pci/ivtv/ivtv-ioctl.c if (atomic_read(&itv->decoding) > 0) { itv 288 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_DEC_PAUSE_PLAYBACK, 1, itv 290 drivers/media/pci/ivtv/ivtv-ioctl.c set_bit(IVTV_F_I_DEC_PAUSED, &itv->i_flags); itv 297 drivers/media/pci/ivtv/ivtv-ioctl.c if (!atomic_read(&itv->decoding)) itv 299 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->output_mode != OUT_MPG) itv 301 drivers/media/pci/ivtv/ivtv-ioctl.c if (test_and_clear_bit(IVTV_F_I_DEC_PAUSED, &itv->i_flags)) { itv 302 drivers/media/pci/ivtv/ivtv-ioctl.c int speed = itv->speed; itv 303 drivers/media/pci/ivtv/ivtv-ioctl.c itv->speed = 0; itv 316 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 321 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_SLICED_VBI_OUTPUT)) itv 325 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->is_60hz) { itv 339 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 342 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->width = itv->cxhdl.width; itv 343 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->height = itv->cxhdl.height; itv 361 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 366 drivers/media/pci/ivtv/ivtv-ioctl.c vbifmt->samples_per_line = itv->vbi.raw_decoder_line_size - 4; itv 368 drivers/media/pci/ivtv/ivtv-ioctl.c vbifmt->start[0] = itv->vbi.start[0]; itv 369 drivers/media/pci/ivtv/ivtv-ioctl.c vbifmt->start[1] = itv->vbi.start[1]; itv 370 drivers/media/pci/ivtv/ivtv-ioctl.c vbifmt->count[0] = vbifmt->count[1] = itv->vbi.count; itv 381 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 388 drivers/media/pci/ivtv/ivtv-ioctl.c vbifmt->service_set = itv->is_50hz ? V4L2_SLICED_VBI_625 : itv 390 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_expand_service_set(vbifmt, itv->is_50hz); itv 395 drivers/media/pci/ivtv/ivtv-ioctl.c v4l2_subdev_call(itv->sd_video, vbi, g_sliced_fmt, vbifmt); itv 403 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 406 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 408 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->width = itv->main_rect.width; itv 409 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->height = itv->main_rect.height; itv 413 drivers/media/pci/ivtv/ivtv-ioctl.c switch (itv->yuv_info.lace_mode & IVTV_YUV_MODE_MASK) { itv 415 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->field = (itv->yuv_info.lace_mode & IVTV_YUV_SYNC_MASK) ? itv 427 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->width = itv->yuv_info.v4l2_src_w; itv 428 drivers/media/pci/ivtv/ivtv-ioctl.c pixfmt->height = itv->yuv_info.v4l2_src_h; itv 442 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 443 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 448 drivers/media/pci/ivtv/ivtv-ioctl.c if (!itv->osd_video_pbase) itv 450 drivers/media/pci/ivtv/ivtv-ioctl.c winfmt->chromakey = itv->osd_chroma_key; itv 451 drivers/media/pci/ivtv/ivtv-ioctl.c winfmt->global_alpha = itv->osd_global_alpha; itv 457 drivers/media/pci/ivtv/ivtv-ioctl.c winfmt->w.width = itv->osd_rect.width; itv 458 drivers/media/pci/ivtv/ivtv-ioctl.c winfmt->w.height = itv->osd_rect.height; itv 470 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 482 drivers/media/pci/ivtv/ivtv-ioctl.c h = min(h, itv->is_50hz ? 576 : 480); itv 499 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 510 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_expand_service_set(vbifmt, itv->is_50hz); itv 511 drivers/media/pci/ivtv/ivtv-ioctl.c check_service_set(vbifmt, itv->is_50hz); itv 552 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 553 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 559 drivers/media/pci/ivtv/ivtv-ioctl.c if (!itv->osd_video_pbase) itv 575 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 586 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->cxhdl.width == w && itv->cxhdl.height == h) itv 589 drivers/media/pci/ivtv/ivtv-ioctl.c if (atomic_read(&itv->capturing) > 0) itv 592 drivers/media/pci/ivtv/ivtv-ioctl.c itv->cxhdl.width = w; itv 593 drivers/media/pci/ivtv/ivtv-ioctl.c itv->cxhdl.height = h; itv 594 drivers/media/pci/ivtv/ivtv-ioctl.c if (v4l2_ctrl_g_ctrl(itv->cxhdl.video_encoding) == V4L2_MPEG_VIDEO_ENCODING_MPEG_1) itv 599 drivers/media/pci/ivtv/ivtv-ioctl.c v4l2_subdev_call(itv->sd_video, pad, set_fmt, NULL, &format); itv 605 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 607 drivers/media/pci/ivtv/ivtv-ioctl.c if (!ivtv_raw_vbi(itv) && atomic_read(&itv->capturing) > 0) itv 609 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.sliced_in->service_set = 0; itv 610 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.in.type = V4L2_BUF_TYPE_VBI_CAPTURE; itv 611 drivers/media/pci/ivtv/ivtv-ioctl.c v4l2_subdev_call(itv->sd_video, vbi, s_raw_fmt, &fmt->fmt.vbi); itv 619 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 625 drivers/media/pci/ivtv/ivtv-ioctl.c check_service_set(vbifmt, itv->is_50hz); itv 626 drivers/media/pci/ivtv/ivtv-ioctl.c if (ivtv_raw_vbi(itv) && atomic_read(&itv->capturing) > 0) itv 628 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.in.type = V4L2_BUF_TYPE_SLICED_VBI_CAPTURE; itv 629 drivers/media/pci/ivtv/ivtv-ioctl.c v4l2_subdev_call(itv->sd_video, vbi, s_sliced_fmt, vbifmt); itv 630 drivers/media/pci/ivtv/ivtv-ioctl.c memcpy(itv->vbi.sliced_in, vbifmt, sizeof(*itv->vbi.sliced_in)); itv 637 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 638 drivers/media/pci/ivtv/ivtv-ioctl.c struct yuv_playback_info *yi = &itv->yuv_info; itv 672 drivers/media/pci/ivtv/ivtv-ioctl.c if (test_bit(IVTV_F_I_DEC_YUV, &itv->i_flags)) itv 673 drivers/media/pci/ivtv/ivtv-ioctl.c itv->dma_data_req_size = itv 681 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 685 drivers/media/pci/ivtv/ivtv-ioctl.c itv->osd_chroma_key = fmt->fmt.win.chromakey; itv 686 drivers/media/pci/ivtv/ivtv-ioctl.c itv->osd_global_alpha = fmt->fmt.win.global_alpha; itv 687 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_set_osd_alpha(itv); itv 693 drivers/media/pci/ivtv/ivtv-ioctl.c static int ivtv_itvc(struct ivtv *itv, bool get, u64 reg, u64 *val) itv 700 drivers/media/pci/ivtv/ivtv-ioctl.c reg_start = itv->reg_mem - IVTV_REG_OFFSET; itv 701 drivers/media/pci/ivtv/ivtv-ioctl.c else if (itv->has_cx23415 && reg >= IVTV_DECODER_OFFSET && itv 703 drivers/media/pci/ivtv/ivtv-ioctl.c reg_start = itv->dec_mem - IVTV_DECODER_OFFSET; itv 705 drivers/media/pci/ivtv/ivtv-ioctl.c reg_start = itv->enc_mem; itv 718 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 721 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_itvc(itv, true, reg->reg, ®->val); itv 726 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 729 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_itvc(itv, false, reg->reg, &val); itv 736 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 739 drivers/media/pci/ivtv/ivtv-ioctl.c strscpy(vcap->card, itv->card_name, sizeof(vcap->card)); itv 740 drivers/media/pci/ivtv/ivtv-ioctl.c snprintf(vcap->bus_info, sizeof(vcap->bus_info), "PCI:%s", pci_name(itv->pdev)); itv 741 drivers/media/pci/ivtv/ivtv-ioctl.c vcap->capabilities = itv->v4l2_cap | V4L2_CAP_DEVICE_CAPS; itv 747 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 749 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_get_audio_input(itv, vin->index, vin); itv 754 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 756 drivers/media/pci/ivtv/ivtv-ioctl.c vin->index = itv->audio_input; itv 757 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_get_audio_input(itv, vin->index, vin); itv 762 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 764 drivers/media/pci/ivtv/ivtv-ioctl.c if (vout->index >= itv->nof_audio_inputs) itv 767 drivers/media/pci/ivtv/ivtv-ioctl.c itv->audio_input = vout->index; itv 768 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_audio_set_io(itv); itv 775 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 778 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_get_audio_output(itv, vin->index, vin); itv 783 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 786 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_get_audio_output(itv, vin->index, vin); itv 791 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 793 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->card->video_outputs == NULL || vout->index != 0) itv 800 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 803 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_get_input(itv, vin->index, vin); itv 808 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 810 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_get_output(itv, vout->index, vout); itv 817 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 820 drivers/media/pci/ivtv/ivtv-ioctl.c f->numerator = itv->is_50hz ? 54 : 11; itv 821 drivers/media/pci/ivtv/ivtv-ioctl.c f->denominator = itv->is_50hz ? 59 : 10; itv 823 drivers/media/pci/ivtv/ivtv-ioctl.c f->numerator = itv->is_out_50hz ? 54 : 11; itv 824 drivers/media/pci/ivtv/ivtv-ioctl.c f->denominator = itv->is_out_50hz ? 59 : 10; itv 835 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 836 drivers/media/pci/ivtv/ivtv-ioctl.c struct yuv_playback_info *yi = &itv->yuv_info; itv 841 drivers/media/pci/ivtv/ivtv-ioctl.c !(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 849 drivers/media/pci/ivtv/ivtv-ioctl.c !(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 852 drivers/media/pci/ivtv/ivtv-ioctl.c r.height = itv->is_out_50hz ? 576 : 480; itv 866 drivers/media/pci/ivtv/ivtv-ioctl.c if (!ivtv_vapi(itv, CX2341X_OSD_SET_FRAMEBUFFER_WINDOW, 4, itv 868 drivers/media/pci/ivtv/ivtv-ioctl.c itv->main_rect = sel->r; itv 878 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 879 drivers/media/pci/ivtv/ivtv-ioctl.c struct yuv_playback_info *yi = &itv->yuv_info; itv 889 drivers/media/pci/ivtv/ivtv-ioctl.c sel->r.height = itv->is_50hz ? 576 : 480; itv 897 drivers/media/pci/ivtv/ivtv-ioctl.c !(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 905 drivers/media/pci/ivtv/ivtv-ioctl.c sel->r = itv->main_rect; itv 909 drivers/media/pci/ivtv/ivtv-ioctl.c r.height = itv->is_out_50hz ? 576 : 480; itv 932 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 933 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 958 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 959 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 974 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 976 drivers/media/pci/ivtv/ivtv-ioctl.c *i = itv->active_input; itv 983 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 987 drivers/media/pci/ivtv/ivtv-ioctl.c if (inp >= itv->nof_inputs) itv 990 drivers/media/pci/ivtv/ivtv-ioctl.c if (inp == itv->active_input) { itv 995 drivers/media/pci/ivtv/ivtv-ioctl.c if (atomic_read(&itv->capturing) > 0) { itv 1000 drivers/media/pci/ivtv/ivtv-ioctl.c itv->active_input, inp); itv 1002 drivers/media/pci/ivtv/ivtv-ioctl.c itv->active_input = inp; itv 1005 drivers/media/pci/ivtv/ivtv-ioctl.c itv->audio_input = itv->card->video_inputs[inp].audio_index; itv 1007 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->card->video_inputs[inp].video_type == IVTV_CARD_INPUT_VID_TUNER) itv 1008 drivers/media/pci/ivtv/ivtv-ioctl.c std = itv->tuner_std; itv 1012 drivers/media/pci/ivtv/ivtv-ioctl.c itv->streams[i].vdev.tvnorms = std; itv 1016 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_mute(itv); itv 1017 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_video_set_io(itv); itv 1018 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_audio_set_io(itv); itv 1019 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_unmute(itv); itv 1026 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1028 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1031 drivers/media/pci/ivtv/ivtv-ioctl.c *i = itv->active_output; itv 1038 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1040 drivers/media/pci/ivtv/ivtv-ioctl.c if (outp >= itv->card->nof_outputs) itv 1043 drivers/media/pci/ivtv/ivtv-ioctl.c if (outp == itv->active_output) { itv 1048 drivers/media/pci/ivtv/ivtv-ioctl.c itv->active_output, outp); itv 1050 drivers/media/pci/ivtv/ivtv-ioctl.c itv->active_output = outp; itv 1051 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_routing, itv 1053 drivers/media/pci/ivtv/ivtv-ioctl.c itv->card->video_outputs[outp].video_output, 0); itv 1060 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1061 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 1068 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, tuner, g_frequency, vf); itv 1074 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1075 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 1082 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_mute(itv); itv 1084 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, tuner, s_frequency, vf); itv 1085 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_unmute(itv); itv 1091 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1093 drivers/media/pci/ivtv/ivtv-ioctl.c *std = itv->std; itv 1097 drivers/media/pci/ivtv/ivtv-ioctl.c void ivtv_s_std_enc(struct ivtv *itv, v4l2_std_id std) itv 1099 drivers/media/pci/ivtv/ivtv-ioctl.c itv->std = std; itv 1100 drivers/media/pci/ivtv/ivtv-ioctl.c itv->is_60hz = (std & V4L2_STD_525_60) ? 1 : 0; itv 1101 drivers/media/pci/ivtv/ivtv-ioctl.c itv->is_50hz = !itv->is_60hz; itv 1102 drivers/media/pci/ivtv/ivtv-ioctl.c cx2341x_handler_set_50hz(&itv->cxhdl, itv->is_50hz); itv 1103 drivers/media/pci/ivtv/ivtv-ioctl.c itv->cxhdl.width = 720; itv 1104 drivers/media/pci/ivtv/ivtv-ioctl.c itv->cxhdl.height = itv->is_50hz ? 576 : 480; itv 1105 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.count = itv->is_50hz ? 18 : 12; itv 1106 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.start[0] = itv->is_50hz ? 6 : 10; itv 1107 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.start[1] = itv->is_50hz ? 318 : 273; itv 1109 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->hw_flags & IVTV_HW_CX25840) itv 1110 drivers/media/pci/ivtv/ivtv-ioctl.c itv->vbi.sliced_decoder_line_size = itv->is_60hz ? 272 : 284; itv 1113 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, video, s_std, itv->std); itv 1116 drivers/media/pci/ivtv/ivtv-ioctl.c void ivtv_s_std_dec(struct ivtv *itv, v4l2_std_id std) itv 1118 drivers/media/pci/ivtv/ivtv-ioctl.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1123 drivers/media/pci/ivtv/ivtv-ioctl.c itv->std_out = std; itv 1124 drivers/media/pci/ivtv/ivtv-ioctl.c itv->is_out_60hz = (std & V4L2_STD_525_60) ? 1 : 0; itv 1125 drivers/media/pci/ivtv/ivtv-ioctl.c itv->is_out_50hz = !itv->is_out_60hz; itv 1126 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, video, s_std_output, itv->std_out); itv 1134 drivers/media/pci/ivtv/ivtv-ioctl.c mutex_unlock(&itv->serialize_lock); itv 1136 drivers/media/pci/ivtv/ivtv-ioctl.c prepare_to_wait(&itv->vsync_waitq, &wait, itv 1142 drivers/media/pci/ivtv/ivtv-ioctl.c finish_wait(&itv->vsync_waitq, &wait); itv 1143 drivers/media/pci/ivtv/ivtv-ioctl.c mutex_lock(&itv->serialize_lock); itv 1148 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_DEC_SET_STANDARD, 1, itv->is_out_50hz); itv 1149 drivers/media/pci/ivtv/ivtv-ioctl.c itv->main_rect.left = 0; itv 1150 drivers/media/pci/ivtv/ivtv-ioctl.c itv->main_rect.top = 0; itv 1151 drivers/media/pci/ivtv/ivtv-ioctl.c itv->main_rect.width = 720; itv 1152 drivers/media/pci/ivtv/ivtv-ioctl.c itv->main_rect.height = itv->is_out_50hz ? 576 : 480; itv 1153 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_OSD_SET_FRAMEBUFFER_WINDOW, 4, itv 1154 drivers/media/pci/ivtv/ivtv-ioctl.c 720, itv->main_rect.height, 0, 0); itv 1155 drivers/media/pci/ivtv/ivtv-ioctl.c yi->main_rect = itv->main_rect; itv 1156 drivers/media/pci/ivtv/ivtv-ioctl.c if (!itv->osd_info) { itv 1158 drivers/media/pci/ivtv/ivtv-ioctl.c yi->osd_full_h = itv->is_out_50hz ? 576 : 480; itv 1164 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1169 drivers/media/pci/ivtv/ivtv-ioctl.c if (std == itv->std) itv 1172 drivers/media/pci/ivtv/ivtv-ioctl.c if (test_bit(IVTV_F_I_RADIO_USER, &itv->i_flags) || itv 1173 drivers/media/pci/ivtv/ivtv-ioctl.c atomic_read(&itv->capturing) > 0 || itv 1174 drivers/media/pci/ivtv/ivtv-ioctl.c atomic_read(&itv->decoding) > 0) { itv 1181 drivers/media/pci/ivtv/ivtv-ioctl.c (unsigned long long)itv->std); itv 1183 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_s_std_enc(itv, std); itv 1184 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) itv 1185 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_s_std_dec(itv, std); itv 1193 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1198 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, tuner, s_tuner, vt); itv 1205 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1210 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, tuner, g_tuner, vt); itv 1221 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1222 drivers/media/pci/ivtv/ivtv-ioctl.c int set = itv->is_50hz ? V4L2_SLICED_VBI_625 : V4L2_SLICED_VBI_525; itv 1228 drivers/media/pci/ivtv/ivtv-ioctl.c if (valid_service_line(f, l, itv->is_50hz)) itv 1233 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_SLICED_VBI_OUTPUT)) itv 1235 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->is_60hz) { itv 1256 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1261 drivers/media/pci/ivtv/ivtv-ioctl.c entries = (itv->pgm_info_write_idx + IVTV_MAX_PGM_INDEX - itv->pgm_info_read_idx) % itv 1267 drivers/media/pci/ivtv/ivtv-ioctl.c if (!atomic_read(&itv->capturing)) itv 1270 drivers/media/pci/ivtv/ivtv-ioctl.c *e = itv->pgm_info[(itv->pgm_info_read_idx + i) % IVTV_MAX_PGM_INDEX]; itv 1276 drivers/media/pci/ivtv/ivtv-ioctl.c itv->pgm_info_read_idx = (itv->pgm_info_read_idx + idx->entries) % IVTV_MAX_PGM_INDEX; itv 1283 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1302 drivers/media/pci/ivtv/ivtv-ioctl.c if (!atomic_read(&itv->capturing)) itv 1304 drivers/media/pci/ivtv/ivtv-ioctl.c if (test_and_set_bit(IVTV_F_I_ENC_PAUSED, &itv->i_flags)) itv 1307 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_mute(itv); itv 1308 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_ENC_PAUSE_ENCODER, 1, 0); itv 1315 drivers/media/pci/ivtv/ivtv-ioctl.c if (!atomic_read(&itv->capturing)) itv 1318 drivers/media/pci/ivtv/ivtv-ioctl.c if (!test_and_clear_bit(IVTV_F_I_ENC_PAUSED, &itv->i_flags)) itv 1321 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_ENC_PAUSE_ENCODER, 1, 1); itv 1322 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_unmute(itv); itv 1334 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1364 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1365 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 1367 drivers/media/pci/ivtv/ivtv-ioctl.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1391 drivers/media/pci/ivtv/ivtv-ioctl.c if (!itv->osd_video_pbase) itv 1397 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi_result(itv, data, CX2341X_OSD_GET_STATE, 0); itv 1402 drivers/media/pci/ivtv/ivtv-ioctl.c fb->fmt.width = itv->osd_rect.width; itv 1403 drivers/media/pci/ivtv/ivtv-ioctl.c fb->fmt.height = itv->osd_rect.height; itv 1414 drivers/media/pci/ivtv/ivtv-ioctl.c fb->base = (void *)itv->osd_video_pbase; itv 1417 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->osd_chroma_key_state) itv 1420 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->osd_global_alpha_state) itv 1438 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->osd_local_alpha_state) { itv 1452 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1453 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 1454 drivers/media/pci/ivtv/ivtv-ioctl.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1458 drivers/media/pci/ivtv/ivtv-ioctl.c if (!itv->osd_video_pbase) itv 1461 drivers/media/pci/ivtv/ivtv-ioctl.c itv->osd_global_alpha_state = (fb->flags & V4L2_FBUF_FLAG_GLOBAL_ALPHA) != 0; itv 1462 drivers/media/pci/ivtv/ivtv-ioctl.c itv->osd_local_alpha_state = itv 1464 drivers/media/pci/ivtv/ivtv-ioctl.c itv->osd_chroma_key_state = (fb->flags & V4L2_FBUF_FLAG_CHROMAKEY) != 0; itv 1465 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_set_osd_alpha(itv); itv 1473 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1474 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[fh2id(fh)->type]; itv 1478 drivers/media/pci/ivtv/ivtv-ioctl.c if (!itv->osd_video_pbase) itv 1481 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, on != 0); itv 1499 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1502 drivers/media/pci/ivtv/ivtv-ioctl.c int has_output = itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT; itv 1507 drivers/media/pci/ivtv/ivtv-ioctl.c IVTV_INFO("Version: %s Card: %s\n", IVTV_VERSION, itv->card_name); itv 1508 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->hw_flags & IVTV_HW_TVEEPROM) { itv 1511 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_read_eeprom(itv, &tv); itv 1513 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, core, log_status); itv 1514 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_get_input(itv, itv->active_input, &vidin); itv 1515 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_get_audio_input(itv, itv->audio_input, &audin); itv 1518 drivers/media/pci/ivtv/ivtv-ioctl.c itv->dualwatch_stereo_mode == V4L2_MPEG_AUDIO_MODE_DUAL ? itv 1523 drivers/media/pci/ivtv/ivtv-ioctl.c int mode = itv->output_mode; itv 1556 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_get_output(itv, itv->active_output, &vidout); itv 1557 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_get_audio_output(itv, 0, &audout); itv 1562 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_vapi_result(itv, data, CX2341X_OSD_GET_STATE, 0); itv 1570 drivers/media/pci/ivtv/ivtv-ioctl.c test_bit(IVTV_F_I_RADIO_USER, &itv->i_flags) ? "Radio" : "TV"); itv 1571 drivers/media/pci/ivtv/ivtv-ioctl.c v4l2_ctrl_handler_log_status(&itv->cxhdl.hdl, itv->v4l2_dev.name); itv 1572 drivers/media/pci/ivtv/ivtv-ioctl.c IVTV_INFO("Status flags: 0x%08lx\n", itv->i_flags); itv 1574 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[i]; itv 1584 drivers/media/pci/ivtv/ivtv-ioctl.c (long long)itv->mpg_data_received, itv 1585 drivers/media/pci/ivtv/ivtv-ioctl.c (long long)itv->vbi_data_inserted); itv 1592 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1595 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, dec, false); itv 1601 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1604 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, dec, true); itv 1633 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = id->itv; itv 1634 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv_stream *s = &itv->streams[id->type]; itv 1645 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1649 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->output_mode == OUT_UDMA_YUV && args->y_source == NULL) itv 1654 drivers/media/pci/ivtv/ivtv-ioctl.c if (ivtv_set_output_mode(itv, OUT_UDMA_YUV) != OUT_UDMA_YUV) { itv 1662 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_yuv_prep_frame(itv, args); itv 1667 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1669 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_passthrough_mode(itv, *(int *)arg != 0); itv 1680 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1682 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_g_pts_frame(itv, pts, &frame); itv 1694 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1696 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_g_pts_frame(itv, &pts, frame); itv 1705 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, &dc, 0); itv 1715 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, &dc, 0); itv 1724 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, &dc, 0); itv 1733 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, &dc, 0); itv 1747 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_video_command(itv, id, dc, try); itv 1761 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1764 drivers/media/pci/ivtv/ivtv-ioctl.c set_bit(IVTV_F_I_EV_VSYNC_ENABLED, &itv->i_flags); itv 1767 drivers/media/pci/ivtv/ivtv-ioctl.c if (test_and_clear_bit(IVTV_F_I_EV_DEC_STOPPED, &itv->i_flags)) itv 1769 drivers/media/pci/ivtv/ivtv-ioctl.c else if (test_and_clear_bit(IVTV_F_I_EV_VSYNC, &itv->i_flags)) { itv 1773 drivers/media/pci/ivtv/ivtv-ioctl.c vsync_field = test_bit(IVTV_F_I_EV_VSYNC_FIELD, &itv->i_flags) ? itv 1775 drivers/media/pci/ivtv/ivtv-ioctl.c if (itv->output_mode == OUT_UDMA_YUV && itv 1776 drivers/media/pci/ivtv/ivtv-ioctl.c (itv->yuv_info.lace_mode & IVTV_YUV_MODE_MASK) == itv 1794 drivers/media/pci/ivtv/ivtv-ioctl.c mutex_unlock(&itv->serialize_lock); itv 1795 drivers/media/pci/ivtv/ivtv-ioctl.c prepare_to_wait(&itv->event_waitq, &wait, TASK_INTERRUPTIBLE); itv 1796 drivers/media/pci/ivtv/ivtv-ioctl.c if (!test_bit(IVTV_F_I_EV_DEC_STOPPED, &itv->i_flags) && itv 1797 drivers/media/pci/ivtv/ivtv-ioctl.c !test_bit(IVTV_F_I_EV_VSYNC, &itv->i_flags)) itv 1799 drivers/media/pci/ivtv/ivtv-ioctl.c finish_wait(&itv->event_waitq, &wait); itv 1800 drivers/media/pci/ivtv/ivtv-ioctl.c mutex_lock(&itv->serialize_lock); itv 1812 drivers/media/pci/ivtv/ivtv-ioctl.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 1814 drivers/media/pci/ivtv/ivtv-ioctl.c return ivtv_passthrough_mode(itv, iarg == VIDEO_SOURCE_DEMUX); itv 1818 drivers/media/pci/ivtv/ivtv-ioctl.c itv->speed_mute_audio = iarg; itv 1825 drivers/media/pci/ivtv/ivtv-ioctl.c return v4l2_ctrl_s_ctrl(itv->ctrl_audio_playback, iarg + 1); itv 1831 drivers/media/pci/ivtv/ivtv-ioctl.c return v4l2_ctrl_s_ctrl(itv->ctrl_audio_multilingual_playback, iarg + 1); itv 1842 drivers/media/pci/ivtv/ivtv-ioctl.c struct ivtv *itv = fh2id(fh)->itv; itv 1866 drivers/media/pci/ivtv/ivtv-ioctl.c if ((val == 0 && itv->options.newi2c) || (val & 0x01)) itv 1867 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_reset_ir_gpio(itv); itv 1869 drivers/media/pci/ivtv/ivtv-ioctl.c v4l2_subdev_call(itv->sd_video, core, reset, 0); itv 15 drivers/media/pci/ivtv/ivtv-ioctl.h void ivtv_set_osd_alpha(struct ivtv *itv); itv 16 drivers/media/pci/ivtv/ivtv-ioctl.h int ivtv_set_speed(struct ivtv *itv, int speed); itv 18 drivers/media/pci/ivtv/ivtv-ioctl.h void ivtv_s_std_enc(struct ivtv *itv, v4l2_std_id std); itv 19 drivers/media/pci/ivtv/ivtv-ioctl.h void ivtv_s_std_dec(struct ivtv *itv, v4l2_std_id std); itv 29 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_pcm_work_handler(struct ivtv *itv) itv 31 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = &itv->streams[IVTV_ENC_STREAM_TYPE_PCM]; itv 50 drivers/media/pci/ivtv/ivtv-irq.c itv->pcm_announce_callback(itv->alsa, itv 58 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_pio_work_handler(struct ivtv *itv) itv 60 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = &itv->streams[itv->cur_pio_stream]; itv 65 drivers/media/pci/ivtv/ivtv-irq.c if (itv->cur_pio_stream < 0 || itv->cur_pio_stream >= IVTV_MAX_STREAMS || itv 67 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_pio_stream = -1; itv 78 drivers/media/pci/ivtv/ivtv-irq.c memcpy_fromio(buf->buf, itv->dec_mem + s->sg_processing[i].src - IVTV_DECODER_OFFSET, size); itv 81 drivers/media/pci/ivtv/ivtv-irq.c memcpy_fromio(buf->buf, itv->enc_mem + s->sg_processing[i].src, size); itv 92 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = container_of(work, struct ivtv, irq_work); itv 94 drivers/media/pci/ivtv/ivtv-irq.c if (test_and_clear_bit(IVTV_F_I_WORK_HANDLER_PIO, &itv->i_flags)) itv 95 drivers/media/pci/ivtv/ivtv-irq.c ivtv_pio_work_handler(itv); itv 97 drivers/media/pci/ivtv/ivtv-irq.c if (test_and_clear_bit(IVTV_F_I_WORK_HANDLER_VBI, &itv->i_flags)) itv 98 drivers/media/pci/ivtv/ivtv-irq.c ivtv_vbi_work_handler(itv); itv 100 drivers/media/pci/ivtv/ivtv-irq.c if (test_and_clear_bit(IVTV_F_I_WORK_HANDLER_YUV, &itv->i_flags)) itv 101 drivers/media/pci/ivtv/ivtv-irq.c ivtv_yuv_work_handler(itv); itv 103 drivers/media/pci/ivtv/ivtv-irq.c if (test_and_clear_bit(IVTV_F_I_WORK_HANDLER_PCM, &itv->i_flags)) itv 104 drivers/media/pci/ivtv/ivtv-irq.c ivtv_pcm_work_handler(itv); itv 113 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 153 drivers/media/pci/ivtv/ivtv-irq.c if (itv->has_cx23415) itv 158 drivers/media/pci/ivtv/ivtv-irq.c size = itv->vbi.enc_size * itv->vbi.fpi; itv 159 drivers/media/pci/ivtv/ivtv-irq.c offset = read_enc(itv->vbi.enc_start - 4) + 12; itv 168 drivers/media/pci/ivtv/ivtv-irq.c size = read_dec(itv->vbi.dec_start + 4) + 8; itv 169 drivers/media/pci/ivtv/ivtv-irq.c offset = read_dec(itv->vbi.dec_start) + itv->vbi.dec_start; itv 180 drivers/media/pci/ivtv/ivtv-irq.c if (itv->has_cx23415 && (s->type == IVTV_ENC_STREAM_TYPE_PCM || itv 248 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 280 drivers/media/pci/ivtv/ivtv-irq.c if (itv->has_cx23415 && (s->type == IVTV_ENC_STREAM_TYPE_PCM || itv 305 drivers/media/pci/ivtv/ivtv-irq.c ivtv_process_vbi_data(itv, buf, 0, s->type); itv 317 drivers/media/pci/ivtv/ivtv-irq.c itv->pcm_announce_callback != NULL) { itv 329 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_WORK_HANDLER_PCM, &itv->i_flags); itv 330 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_HAVE_WORK, &itv->i_flags); itv 339 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 340 drivers/media/pci/ivtv/ivtv-irq.c struct yuv_playback_info *yi = &itv->yuv_info; itv 400 drivers/media/pci/ivtv/ivtv-irq.c spin_lock_irqsave(&itv->dma_reg_lock, flags); itv 401 drivers/media/pci/ivtv/ivtv-irq.c if (!test_bit(IVTV_F_I_DMA, &itv->i_flags)) itv 405 drivers/media/pci/ivtv/ivtv-irq.c spin_unlock_irqrestore(&itv->dma_reg_lock, flags); itv 407 drivers/media/pci/ivtv/ivtv-irq.c if (!test_bit(IVTV_F_I_DMA, &itv->i_flags)) itv 416 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 426 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_timer.expires = jiffies + msecs_to_jiffies(300); itv 427 drivers/media/pci/ivtv/ivtv-irq.c add_timer(&itv->dma_timer); itv 432 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 442 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_timer.expires = jiffies + msecs_to_jiffies(300); itv 443 drivers/media/pci/ivtv/ivtv-irq.c add_timer(&itv->dma_timer); itv 449 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 450 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s_vbi = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 495 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_WORK_HANDLER_PIO, &itv->i_flags); itv 496 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_HAVE_WORK, &itv->i_flags); itv 497 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_PIO, &itv->i_flags); itv 498 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_pio_stream = s->type; itv 501 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries = 0; itv 503 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_DMA, &itv->i_flags); itv 504 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream = s->type; itv 510 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = s->itv; itv 521 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries = 0; itv 523 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_DMA, &itv->i_flags); itv 524 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream = s->type; itv 527 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_dma_read(struct ivtv *itv) itv 535 drivers/media/pci/ivtv/ivtv-irq.c del_timer(&itv->dma_timer); itv 537 drivers/media/pci/ivtv/ivtv-irq.c if (!test_bit(IVTV_F_I_UDMA, &itv->i_flags) && itv->cur_dma_stream < 0) itv 540 drivers/media/pci/ivtv/ivtv-irq.c if (!test_bit(IVTV_F_I_UDMA, &itv->i_flags)) { itv 541 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[itv->cur_dma_stream]; itv 547 drivers/media/pci/ivtv/ivtv-irq.c s->sg_processed, s->sg_processing_size, itv->dma_retries); itv 549 drivers/media/pci/ivtv/ivtv-irq.c if (itv->dma_retries == 3) { itv 551 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries = 0; itv 558 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries++; itv 576 drivers/media/pci/ivtv/ivtv-irq.c ivtv_vapi(itv, CX2341X_DEC_SCHED_DMA_FROM_HOST, 3, 0, s->q_dma.bytesused, itv 586 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_UDMA, &itv->i_flags); itv 587 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_DMA, &itv->i_flags); itv 588 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream = -1; itv 589 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->dma_waitq); itv 592 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_enc_dma_complete(struct ivtv *itv) itv 597 drivers/media/pci/ivtv/ivtv-irq.c ivtv_api_get_data(&itv->enc_mbox, IVTV_MBOX_DMA_END, 2, data); itv 598 drivers/media/pci/ivtv/ivtv-irq.c IVTV_DEBUG_HI_IRQ("ENC DMA COMPLETE %x %d (%d)\n", data[0], data[1], itv->cur_dma_stream); itv 600 drivers/media/pci/ivtv/ivtv-irq.c del_timer(&itv->dma_timer); itv 602 drivers/media/pci/ivtv/ivtv-irq.c if (itv->cur_dma_stream < 0) itv 605 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[itv->cur_dma_stream]; itv 610 drivers/media/pci/ivtv/ivtv-irq.c s->dma_offset, s->sg_processed, s->sg_processing_size, itv->dma_retries); itv 612 drivers/media/pci/ivtv/ivtv-irq.c if (itv->dma_retries == 3) { itv 614 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries = 0; itv 621 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries++; itv 629 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_DMA, &itv->i_flags); itv 630 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream = -1; itv 633 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 638 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->dma_waitq); itv 641 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_enc_pio_complete(struct ivtv *itv) itv 645 drivers/media/pci/ivtv/ivtv-irq.c if (itv->cur_pio_stream < 0 || itv->cur_pio_stream >= IVTV_MAX_STREAMS) { itv 646 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_pio_stream = -1; itv 649 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[itv->cur_pio_stream]; itv 651 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_PIO, &itv->i_flags); itv 652 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_pio_stream = -1; itv 655 drivers/media/pci/ivtv/ivtv-irq.c ivtv_vapi(itv, CX2341X_ENC_SCHED_DMA_TO_HOST, 3, 0, 0, 0); itv 657 drivers/media/pci/ivtv/ivtv-irq.c ivtv_vapi(itv, CX2341X_ENC_SCHED_DMA_TO_HOST, 3, 0, 0, 1); itv 659 drivers/media/pci/ivtv/ivtv-irq.c ivtv_vapi(itv, CX2341X_ENC_SCHED_DMA_TO_HOST, 3, 0, 0, 2); itv 660 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_PIO, &itv->i_flags); itv 662 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 665 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->dma_waitq); itv 668 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_dma_err(struct ivtv *itv) itv 673 drivers/media/pci/ivtv/ivtv-irq.c del_timer(&itv->dma_timer); itv 675 drivers/media/pci/ivtv/ivtv-irq.c ivtv_api_get_data(&itv->enc_mbox, IVTV_MBOX_DMA_END, 2, data); itv 678 drivers/media/pci/ivtv/ivtv-irq.c status, itv->cur_dma_stream); itv 692 drivers/media/pci/ivtv/ivtv-irq.c if (!test_bit(IVTV_F_I_UDMA, &itv->i_flags) && itv 693 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream >= 0 && itv->cur_dma_stream < IVTV_MAX_STREAMS) { itv 694 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = &itv->streams[itv->cur_dma_stream]; itv 710 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_timer.expires = itv 712 drivers/media/pci/ivtv/ivtv-irq.c add_timer(&itv->dma_timer); itv 716 drivers/media/pci/ivtv/ivtv-irq.c if (itv->dma_retries < 3) { itv 724 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_retries++; itv 732 drivers/media/pci/ivtv/ivtv-irq.c if (test_bit(IVTV_F_I_UDMA, &itv->i_flags)) { itv 733 drivers/media/pci/ivtv/ivtv-irq.c ivtv_udma_start(itv); itv 736 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_UDMA, &itv->i_flags); itv 737 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_DMA, &itv->i_flags); itv 738 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream = -1; itv 739 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->dma_waitq); itv 742 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_enc_start_cap(struct ivtv *itv) itv 748 drivers/media/pci/ivtv/ivtv-irq.c ivtv_api_get_data(&itv->enc_mbox, IVTV_MBOX_DMA, 7, data); itv 756 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[ivtv_stream_map[data[0]]]; itv 762 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_enc_vbi_cap(struct ivtv *itv) itv 768 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[IVTV_ENC_STREAM_TYPE_VBI]; itv 774 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_dec_vbi_reinsert(struct ivtv *itv) itv 777 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = &itv->streams[IVTV_DEC_STREAM_TYPE_VBI]; itv 786 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_dec_data_req(struct ivtv *itv) itv 793 drivers/media/pci/ivtv/ivtv-irq.c if (test_bit(IVTV_F_I_DEC_YUV, &itv->i_flags)) { itv 794 drivers/media/pci/ivtv/ivtv-irq.c ivtv_api_get_data(&itv->dec_mbox, IVTV_MBOX_DMA, 2, data); itv 795 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_data_req_size = itv 796 drivers/media/pci/ivtv/ivtv-irq.c 1080 * ((itv->yuv_info.v4l2_src_h + 31) & ~31); itv 797 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_data_req_offset = data[1]; itv 798 drivers/media/pci/ivtv/ivtv-irq.c if (atomic_read(&itv->yuv_info.next_dma_frame) >= 0) itv 799 drivers/media/pci/ivtv/ivtv-irq.c ivtv_yuv_frame_complete(itv); itv 800 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[IVTV_DEC_STREAM_TYPE_YUV]; itv 803 drivers/media/pci/ivtv/ivtv-irq.c ivtv_api_get_data(&itv->dec_mbox, IVTV_MBOX_DMA, 3, data); itv 804 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_data_req_size = min_t(u32, data[2], 0x10000); itv 805 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_data_req_offset = data[1]; itv 806 drivers/media/pci/ivtv/ivtv-irq.c s = &itv->streams[IVTV_DEC_STREAM_TYPE_MPG]; itv 809 drivers/media/pci/ivtv/ivtv-irq.c itv->dma_data_req_offset, itv->dma_data_req_size); itv 810 drivers/media/pci/ivtv/ivtv-irq.c if (itv->dma_data_req_size == 0 || s->q_full.bytesused < itv->dma_data_req_size) { itv 814 drivers/media/pci/ivtv/ivtv-irq.c if (test_bit(IVTV_F_I_DEC_YUV, &itv->i_flags)) itv 815 drivers/media/pci/ivtv/ivtv-irq.c ivtv_yuv_setup_stream_frame(itv); itv 817 drivers/media/pci/ivtv/ivtv-irq.c ivtv_queue_move(s, &s->q_full, NULL, &s->q_predma, itv->dma_data_req_size); itv 818 drivers/media/pci/ivtv/ivtv-irq.c ivtv_dma_stream_dec_prepare(s, itv->dma_data_req_offset + IVTV_DECODER_OFFSET, 0); itv 822 drivers/media/pci/ivtv/ivtv-irq.c static void ivtv_irq_vsync(struct ivtv *itv) itv 832 drivers/media/pci/ivtv/ivtv-irq.c struct yuv_playback_info *yi = &itv->yuv_info; itv 839 drivers/media/pci/ivtv/ivtv-irq.c ((itv->last_vsync_field & 1) ^ f->sync_field)) || itv 840 drivers/media/pci/ivtv/ivtv-irq.c (frame != (itv->last_vsync_field & 1) && !f->interlaced)) { itv 856 drivers/media/pci/ivtv/ivtv-irq.c if (frame != (itv->last_vsync_field & 1)) { itv 865 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = ivtv_get_output_stream(itv); itv 867 drivers/media/pci/ivtv/ivtv-irq.c itv->last_vsync_field += 1; itv 869 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_VALID_DEC_TIMINGS, &itv->i_flags); itv 870 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_EV_VSYNC_FIELD, &itv->i_flags); itv 873 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_EV_VSYNC_FIELD, &itv->i_flags); itv 875 drivers/media/pci/ivtv/ivtv-irq.c if (test_bit(IVTV_F_I_EV_VSYNC_ENABLED, &itv->i_flags)) { itv 876 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_EV_VSYNC, &itv->i_flags); itv 877 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->event_waitq); itv 883 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->vsync_waitq); itv 886 drivers/media/pci/ivtv/ivtv-irq.c if (frame && (itv->output_mode == OUT_PASSTHROUGH || itv 887 drivers/media/pci/ivtv/ivtv-irq.c test_bit(IVTV_F_I_UPDATE_WSS, &itv->i_flags) || itv 888 drivers/media/pci/ivtv/ivtv-irq.c test_bit(IVTV_F_I_UPDATE_VPS, &itv->i_flags) || itv 889 drivers/media/pci/ivtv/ivtv-irq.c test_bit(IVTV_F_I_UPDATE_CC, &itv->i_flags))) { itv 890 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_WORK_HANDLER_VBI, &itv->i_flags); itv 891 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_HAVE_WORK, &itv->i_flags); itv 907 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_WORK_HANDLER_YUV, &itv->i_flags); itv 908 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_HAVE_WORK, &itv->i_flags); itv 920 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = (struct ivtv *)dev_id; itv 926 drivers/media/pci/ivtv/ivtv-irq.c spin_lock(&itv->dma_reg_lock); itv 930 drivers/media/pci/ivtv/ivtv-irq.c combo = ~itv->irqmask & stat; itv 939 drivers/media/pci/ivtv/ivtv-irq.c if (~itv->irqmask & IVTV_IRQ_DEC_VSYNC) { itv 941 drivers/media/pci/ivtv/ivtv-irq.c if ((itv->last_vsync_field & 1) != itv 952 drivers/media/pci/ivtv/ivtv-irq.c spin_unlock(&itv->dma_reg_lock); itv 967 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_dma_read(itv); itv 971 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_enc_dma_complete(itv); itv 975 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_enc_pio_complete(itv); itv 979 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_dma_err(itv); itv 983 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_enc_start_cap(itv); itv 987 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_enc_vbi_cap(itv); itv 991 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_dec_vbi_reinsert(itv); itv 996 drivers/media/pci/ivtv/ivtv-irq.c set_bit(IVTV_F_I_EOS, &itv->i_flags); itv 997 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->eos_waitq); itv 1001 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_dec_data_req(itv); itv 1005 drivers/media/pci/ivtv/ivtv-irq.c if (~itv->irqmask & IVTV_IRQ_DEC_VSYNC) { itv 1006 drivers/media/pci/ivtv/ivtv-irq.c ivtv_irq_vsync(itv); itv 1018 drivers/media/pci/ivtv/ivtv-irq.c if ((combo & IVTV_IRQ_DMA) && !test_bit(IVTV_F_I_DMA, &itv->i_flags)) { itv 1019 drivers/media/pci/ivtv/ivtv-irq.c itv->irq_rr_idx++; itv 1021 drivers/media/pci/ivtv/ivtv-irq.c int idx = (i + itv->irq_rr_idx) % IVTV_MAX_STREAMS; itv 1022 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = &itv->streams[idx]; itv 1034 drivers/media/pci/ivtv/ivtv-irq.c test_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags)) itv 1035 drivers/media/pci/ivtv/ivtv-irq.c ivtv_udma_start(itv); itv 1038 drivers/media/pci/ivtv/ivtv-irq.c if ((combo & IVTV_IRQ_DMA) && !test_bit(IVTV_F_I_PIO, &itv->i_flags)) { itv 1039 drivers/media/pci/ivtv/ivtv-irq.c itv->irq_rr_idx++; itv 1041 drivers/media/pci/ivtv/ivtv-irq.c int idx = (i + itv->irq_rr_idx) % IVTV_MAX_STREAMS; itv 1042 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv_stream *s = &itv->streams[idx]; itv 1052 drivers/media/pci/ivtv/ivtv-irq.c if (test_and_clear_bit(IVTV_F_I_HAVE_WORK, &itv->i_flags)) { itv 1053 drivers/media/pci/ivtv/ivtv-irq.c kthread_queue_work(&itv->irq_worker, &itv->irq_work); itv 1056 drivers/media/pci/ivtv/ivtv-irq.c spin_unlock(&itv->dma_reg_lock); itv 1067 drivers/media/pci/ivtv/ivtv-irq.c struct ivtv *itv = from_timer(itv, t, dma_timer); itv 1069 drivers/media/pci/ivtv/ivtv-irq.c if (!test_bit(IVTV_F_I_DMA, &itv->i_flags)) itv 1071 drivers/media/pci/ivtv/ivtv-irq.c IVTV_ERR("DMA TIMEOUT %08x %d\n", read_reg(IVTV_REG_DMASTATUS), itv->cur_dma_stream); itv 1074 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_UDMA, &itv->i_flags); itv 1075 drivers/media/pci/ivtv/ivtv-irq.c clear_bit(IVTV_F_I_DMA, &itv->i_flags); itv 1076 drivers/media/pci/ivtv/ivtv-irq.c itv->cur_dma_stream = -1; itv 1077 drivers/media/pci/ivtv/ivtv-irq.c wake_up(&itv->dma_waitq); itv 131 drivers/media/pci/ivtv/ivtv-mailbox.c static int try_mailbox(struct ivtv *itv, struct ivtv_mailbox_data *mbdata, int mb) itv 146 drivers/media/pci/ivtv/ivtv-mailbox.c static int get_mailbox(struct ivtv *itv, struct ivtv_mailbox_data *mbdata, int flags) itv 161 drivers/media/pci/ivtv/ivtv-mailbox.c if (try_mailbox(itv, mbdata, mb)) itv 188 drivers/media/pci/ivtv/ivtv-mailbox.c static void clear_all_mailboxes(struct ivtv *itv, struct ivtv_mailbox_data *mbdata) itv 200 drivers/media/pci/ivtv/ivtv-mailbox.c static int ivtv_api_call(struct ivtv *itv, int cmd, int args, u32 data[]) itv 202 drivers/media/pci/ivtv/ivtv-mailbox.c struct ivtv_mailbox_data *mbdata = (cmd >= 128) ? &itv->enc_mbox : &itv->dec_mbox; itv 233 drivers/media/pci/ivtv/ivtv-mailbox.c if (itv->api_cache[cmd].last_jiffies && itv 235 drivers/media/pci/ivtv/ivtv-mailbox.c itv->api_cache[cmd].last_jiffies + itv 237 drivers/media/pci/ivtv/ivtv-mailbox.c !memcmp(data, itv->api_cache[cmd].data, sizeof(itv->api_cache[cmd].data))) { itv 238 drivers/media/pci/ivtv/ivtv-mailbox.c itv->api_cache[cmd].last_jiffies = jiffies; itv 247 drivers/media/pci/ivtv/ivtv-mailbox.c if (try_mailbox(itv, mbdata, mb)) { itv 256 drivers/media/pci/ivtv/ivtv-mailbox.c clear_all_mailboxes(itv, mbdata); itv 263 drivers/media/pci/ivtv/ivtv-mailbox.c mb = get_mailbox(itv, mbdata, flags); itv 266 drivers/media/pci/ivtv/ivtv-mailbox.c clear_all_mailboxes(itv, mbdata); itv 272 drivers/media/pci/ivtv/ivtv-mailbox.c memcpy(itv->api_cache[cmd].data, data, sizeof(itv->api_cache[cmd].data)); itv 273 drivers/media/pci/ivtv/ivtv-mailbox.c itv->api_cache[cmd].last_jiffies = jiffies; itv 315 drivers/media/pci/ivtv/ivtv-mailbox.c int ivtv_api(struct ivtv *itv, int cmd, int args, u32 data[]) itv 317 drivers/media/pci/ivtv/ivtv-mailbox.c int res = ivtv_api_call(itv, cmd, args, data); itv 322 drivers/media/pci/ivtv/ivtv-mailbox.c return (res == -EBUSY) ? ivtv_api_call(itv, cmd, args, data) : res; itv 330 drivers/media/pci/ivtv/ivtv-mailbox.c int ivtv_vapi_result(struct ivtv *itv, u32 data[CX2341X_MBOX_MAX_DATA], int cmd, int args, ...) itv 340 drivers/media/pci/ivtv/ivtv-mailbox.c return ivtv_api(itv, cmd, args, data); itv 343 drivers/media/pci/ivtv/ivtv-mailbox.c int ivtv_vapi(struct ivtv *itv, int cmd, int args, ...) itv 354 drivers/media/pci/ivtv/ivtv-mailbox.c return ivtv_api(itv, cmd, args, data); itv 368 drivers/media/pci/ivtv/ivtv-mailbox.c void ivtv_mailbox_cache_invalidate(struct ivtv *itv) itv 372 drivers/media/pci/ivtv/ivtv-mailbox.c itv->api_cache[i].last_jiffies = 0; itv 17 drivers/media/pci/ivtv/ivtv-mailbox.h int ivtv_api(struct ivtv *itv, int cmd, int args, u32 data[]); itv 18 drivers/media/pci/ivtv/ivtv-mailbox.h int ivtv_vapi_result(struct ivtv *itv, u32 data[CX2341X_MBOX_MAX_DATA], int cmd, int args, ...); itv 19 drivers/media/pci/ivtv/ivtv-mailbox.h int ivtv_vapi(struct ivtv *itv, int cmd, int args, ...); itv 21 drivers/media/pci/ivtv/ivtv-mailbox.h void ivtv_mailbox_cache_invalidate(struct ivtv *itv); itv 183 drivers/media/pci/ivtv/ivtv-queue.c struct ivtv *itv = s->itv; itv 221 drivers/media/pci/ivtv/ivtv-queue.c s->sg_handle = pci_map_single(itv->pdev, s->sg_dma, itv 240 drivers/media/pci/ivtv/ivtv-queue.c buf->dma_handle = pci_map_single(s->itv->pdev, itv 263 drivers/media/pci/ivtv/ivtv-queue.c pci_unmap_single(s->itv->pdev, buf->dma_handle, itv 272 drivers/media/pci/ivtv/ivtv-queue.c pci_unmap_single(s->itv->pdev, s->sg_handle, itv 25 drivers/media/pci/ivtv/ivtv-queue.h struct ivtv *itv = s->itv; itv 28 drivers/media/pci/ivtv/ivtv-queue.h (SLICED_VBI_PIO && s->type == IVTV_ENC_STREAM_TYPE_VBI && itv->vbi.sliced_in->service_set); itv 44 drivers/media/pci/ivtv/ivtv-queue.h pci_dma_sync_single_for_cpu(s->itv->pdev, buf->dma_handle, itv 51 drivers/media/pci/ivtv/ivtv-queue.h pci_dma_sync_single_for_device(s->itv->pdev, buf->dma_handle, itv 73 drivers/media/pci/ivtv/ivtv-queue.h pci_dma_sync_single_for_cpu(s->itv->pdev, s->sg_handle, itv 80 drivers/media/pci/ivtv/ivtv-queue.h pci_dma_sync_single_for_device(s->itv->pdev, s->sg_handle, itv 22 drivers/media/pci/ivtv/ivtv-routing.c void ivtv_audio_set_io(struct ivtv *itv) itv 28 drivers/media/pci/ivtv/ivtv-routing.c if (test_bit(IVTV_F_I_RADIO_USER, &itv->i_flags)) itv 29 drivers/media/pci/ivtv/ivtv-routing.c in = &itv->card->radio_input; itv 31 drivers/media/pci/ivtv/ivtv-routing.c in = &itv->card->audio_inputs[itv->audio_input]; itv 35 drivers/media/pci/ivtv/ivtv-routing.c if (itv->card->hw_muxer & IVTV_HW_M52790) itv 37 drivers/media/pci/ivtv/ivtv-routing.c v4l2_subdev_call(itv->sd_muxer, audio, s_routing, itv 42 drivers/media/pci/ivtv/ivtv-routing.c if (itv->card->hw_audio & IVTV_HW_MSP34XX) itv 44 drivers/media/pci/ivtv/ivtv-routing.c ivtv_call_hw(itv, itv->card->hw_audio, audio, s_routing, itv 50 drivers/media/pci/ivtv/ivtv-routing.c void ivtv_video_set_io(struct ivtv *itv) itv 52 drivers/media/pci/ivtv/ivtv-routing.c int inp = itv->active_input; itv 56 drivers/media/pci/ivtv/ivtv-routing.c v4l2_subdev_call(itv->sd_video, video, s_routing, itv 57 drivers/media/pci/ivtv/ivtv-routing.c itv->card->video_inputs[inp].video_input, 0, 0); itv 59 drivers/media/pci/ivtv/ivtv-routing.c type = itv->card->video_inputs[inp].video_type; itv 69 drivers/media/pci/ivtv/ivtv-routing.c if (itv->card->hw_video & IVTV_HW_GPIO) itv 70 drivers/media/pci/ivtv/ivtv-routing.c ivtv_call_hw(itv, IVTV_HW_GPIO, video, s_routing, itv 73 drivers/media/pci/ivtv/ivtv-routing.c if (itv->card->hw_video & IVTV_HW_UPD64031A) { itv 82 drivers/media/pci/ivtv/ivtv-routing.c input |= itv->card->gr_config; itv 84 drivers/media/pci/ivtv/ivtv-routing.c ivtv_call_hw(itv, IVTV_HW_UPD64031A, video, s_routing, itv 88 drivers/media/pci/ivtv/ivtv-routing.c if (itv->card->hw_video & IVTV_HW_UPD6408X) { itv 96 drivers/media/pci/ivtv/ivtv-routing.c else if (itv->card->hw_video & IVTV_HW_UPD64031A) { itv 100 drivers/media/pci/ivtv/ivtv-routing.c itv->card->type == IVTV_CARD_CX23416GYC) { itv 104 drivers/media/pci/ivtv/ivtv-routing.c ivtv_call_hw(itv, IVTV_HW_UPD6408X, video, s_routing, itv 12 drivers/media/pci/ivtv/ivtv-routing.h void ivtv_audio_set_io(struct ivtv *itv); itv 13 drivers/media/pci/ivtv/ivtv-routing.h void ivtv_video_set_io(struct ivtv *itv); itv 168 drivers/media/pci/ivtv/ivtv-streams.c static void ivtv_stream_init(struct ivtv *itv, int type) itv 170 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *s = &itv->streams[type]; itv 176 drivers/media/pci/ivtv/ivtv-streams.c s->itv = itv; itv 185 drivers/media/pci/ivtv/ivtv-streams.c s->buf_size = itv->stream_buf_size[type]; itv 187 drivers/media/pci/ivtv/ivtv-streams.c s->buffers = (itv->options.kilobytes[type] * 1024 + s->buf_size - 1) / s->buf_size; itv 198 drivers/media/pci/ivtv/ivtv-streams.c static int ivtv_prep_dev(struct ivtv *itv, int type) itv 200 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *s = &itv->streams[type]; itv 202 drivers/media/pci/ivtv/ivtv-streams.c int num = itv->instance + ivtv_first_minor + num_offset; itv 208 drivers/media/pci/ivtv/ivtv-streams.c s->itv = itv; itv 213 drivers/media/pci/ivtv/ivtv-streams.c if (type == IVTV_ENC_STREAM_TYPE_RAD && !(itv->v4l2_cap & V4L2_CAP_RADIO)) itv 215 drivers/media/pci/ivtv/ivtv-streams.c if (type >= IVTV_DEC_STREAM_TYPE_MPG && !(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 221 drivers/media/pci/ivtv/ivtv-streams.c itv->options.kilobytes[type] == 0) { itv 226 drivers/media/pci/ivtv/ivtv-streams.c ivtv_stream_init(itv, type); itv 229 drivers/media/pci/ivtv/ivtv-streams.c itv->v4l2_dev.name, s->name); itv 232 drivers/media/pci/ivtv/ivtv-streams.c s->vdev.v4l2_dev = &itv->v4l2_dev; itv 237 drivers/media/pci/ivtv/ivtv-streams.c s->vdev.ctrl_handler = itv->v4l2_dev.ctrl_handler; itv 240 drivers/media/pci/ivtv/ivtv-streams.c s->vdev.lock = &itv->serialize_lock; itv 259 drivers/media/pci/ivtv/ivtv-streams.c int ivtv_streams_setup(struct ivtv *itv) itv 266 drivers/media/pci/ivtv/ivtv-streams.c if (ivtv_prep_dev(itv, type)) itv 269 drivers/media/pci/ivtv/ivtv-streams.c if (itv->streams[type].vdev.v4l2_dev == NULL) itv 273 drivers/media/pci/ivtv/ivtv-streams.c if (ivtv_stream_alloc(&itv->streams[type])) itv 280 drivers/media/pci/ivtv/ivtv-streams.c ivtv_streams_cleanup(itv); itv 284 drivers/media/pci/ivtv/ivtv-streams.c static int ivtv_reg_dev(struct ivtv *itv, int type) itv 286 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *s = &itv->streams[type]; itv 297 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *s_mpg = &itv->streams[IVTV_ENC_STREAM_TYPE_MPG]; itv 303 drivers/media/pci/ivtv/ivtv-streams.c if (itv->osd_video_pbase) { itv 304 drivers/media/pci/ivtv/ivtv-streams.c itv->streams[IVTV_DEC_STREAM_TYPE_YUV].vdev.device_caps |= itv 306 drivers/media/pci/ivtv/ivtv-streams.c itv->streams[IVTV_DEC_STREAM_TYPE_MPG].vdev.device_caps |= itv 308 drivers/media/pci/ivtv/ivtv-streams.c itv->v4l2_cap |= V4L2_CAP_VIDEO_OUTPUT_OVERLAY; itv 323 drivers/media/pci/ivtv/ivtv-streams.c name, s->name, itv->options.kilobytes[type]); itv 330 drivers/media/pci/ivtv/ivtv-streams.c if (itv->options.kilobytes[type]) itv 332 drivers/media/pci/ivtv/ivtv-streams.c name, s->name, itv->options.kilobytes[type]); itv 342 drivers/media/pci/ivtv/ivtv-streams.c int ivtv_streams_register(struct ivtv *itv) itv 349 drivers/media/pci/ivtv/ivtv-streams.c err |= ivtv_reg_dev(itv, type); itv 355 drivers/media/pci/ivtv/ivtv-streams.c ivtv_streams_cleanup(itv); itv 360 drivers/media/pci/ivtv/ivtv-streams.c void ivtv_streams_cleanup(struct ivtv *itv) itv 366 drivers/media/pci/ivtv/ivtv-streams.c struct video_device *vdev = &itv->streams[type].vdev; itv 372 drivers/media/pci/ivtv/ivtv-streams.c ivtv_stream_free(&itv->streams[type]); itv 373 drivers/media/pci/ivtv/ivtv-streams.c itv->streams[type].vdev.v4l2_dev = NULL; itv 377 drivers/media/pci/ivtv/ivtv-streams.c static void ivtv_vbi_setup(struct ivtv *itv) itv 379 drivers/media/pci/ivtv/ivtv-streams.c int raw = ivtv_raw_vbi(itv); itv 385 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_VBI_LINE, 5, 0xffff , 0, 0, 0, 0); itv 389 drivers/media/pci/ivtv/ivtv-streams.c v4l2_subdev_call(itv->sd_video, vbi, s_raw_fmt, &itv->vbi.in.fmt.vbi); itv 391 drivers/media/pci/ivtv/ivtv-streams.c v4l2_subdev_call(itv->sd_video, vbi, s_sliced_fmt, &itv->vbi.in.fmt.sliced); itv 399 drivers/media/pci/ivtv/ivtv-streams.c lines = itv->vbi.count * 2; itv 401 drivers/media/pci/ivtv/ivtv-streams.c lines = itv->is_60hz ? 24 : 38; itv 402 drivers/media/pci/ivtv/ivtv-streams.c if (itv->is_60hz && (itv->hw_flags & IVTV_HW_CX25840)) itv 406 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.enc_size = lines * (raw ? itv->vbi.raw_size : itv->vbi.sliced_size); itv 415 drivers/media/pci/ivtv/ivtv-streams.c data[2] = raw ? 4 : 4 * (itv->vbi.raw_size / itv->vbi.enc_size); itv 423 drivers/media/pci/ivtv/ivtv-streams.c if (itv->hw_flags & IVTV_HW_CX25840) { itv 435 drivers/media/pci/ivtv/ivtv-streams.c data[6] = (raw ? itv->vbi.raw_size : itv->vbi.sliced_size); itv 448 drivers/media/pci/ivtv/ivtv-streams.c data[6] = itv->vbi.enc_size / lines; itv 455 drivers/media/pci/ivtv/ivtv-streams.c ivtv_api(itv, CX2341X_ENC_SET_VBI_CONFIG, 7, data); itv 458 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.enc_start = data[2]; itv 459 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.fpi = data[0]; itv 460 drivers/media/pci/ivtv/ivtv-streams.c if (!itv->vbi.fpi) itv 461 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.fpi = 1; itv 464 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.enc_start, data[1], itv->vbi.fpi); itv 471 drivers/media/pci/ivtv/ivtv-streams.c if (itv->is_60hz) { itv 476 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_VBI_LINE, 5, i - 1, itv 478 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_VBI_LINE, 5, (i - 1) | 0x80000000, itv 493 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv *itv = s->itv; itv 508 drivers/media/pci/ivtv/ivtv-streams.c if (itv->output_mode == OUT_PASSTHROUGH) { itv 509 drivers/media/pci/ivtv/ivtv-streams.c ivtv_passthrough_mode(itv, 0); itv 512 drivers/media/pci/ivtv/ivtv-streams.c itv->mpg_data_received = itv->vbi_data_inserted = 0; itv 513 drivers/media/pci/ivtv/ivtv-streams.c itv->dualwatch_jiffies = jiffies; itv 514 drivers/media/pci/ivtv/ivtv-streams.c itv->dualwatch_stereo_mode = v4l2_ctrl_g_ctrl(itv->cxhdl.audio_mode); itv 515 drivers/media/pci/ivtv/ivtv-streams.c itv->search_pack_header = 0; itv 519 drivers/media/pci/ivtv/ivtv-streams.c if (itv->output_mode == OUT_PASSTHROUGH) { itv 535 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.frame = 0; itv 536 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.inserted_frame = 0; itv 537 drivers/media/pci/ivtv/ivtv-streams.c memset(itv->vbi.sliced_mpeg_size, itv 538 drivers/media/pci/ivtv/ivtv-streams.c 0, sizeof(itv->vbi.sliced_mpeg_size)); itv 549 drivers/media/pci/ivtv/ivtv-streams.c if (atomic_read(&itv->capturing) == 0) { itv 558 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_DMA_BLOCK_SIZE, 2, 1, 1); itv 561 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_VERT_CROP_LINE, 1, 0); itv 568 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_MISC, 2, 3, !itv->has_cx23415); itv 569 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_MISC, 2, 8, 0); itv 570 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_MISC, 2, 4, 1); itv 571 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_MISC, 1, 12); itv 574 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_PLACEHOLDER, 12, itv 577 drivers/media/pci/ivtv/ivtv-streams.c if (itv->card->hw_all & (IVTV_HW_SAA7115 | IVTV_HW_SAA717X)) itv 579 drivers/media/pci/ivtv/ivtv-streams.c else if (itv->card->hw_all & IVTV_HW_SAA7114) itv 584 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_NUM_VSYNC_LINES, 2, digitizer, digitizer); itv 587 drivers/media/pci/ivtv/ivtv-streams.c if (itv->v4l2_cap & V4L2_CAP_VBI_CAPTURE) { itv 588 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vbi_setup(itv); itv 592 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi_result(itv, data, CX2341X_ENC_SET_PGM_INDEX_INFO, 2, 7, 400); itv 593 drivers/media/pci/ivtv/ivtv-streams.c itv->pgm_info_offset = data[0]; itv 594 drivers/media/pci/ivtv/ivtv-streams.c itv->pgm_info_num = data[1]; itv 595 drivers/media/pci/ivtv/ivtv-streams.c itv->pgm_info_write_idx = 0; itv 596 drivers/media/pci/ivtv/ivtv-streams.c itv->pgm_info_read_idx = 0; itv 599 drivers/media/pci/ivtv/ivtv-streams.c itv->pgm_info_offset, itv->pgm_info_num); itv 602 drivers/media/pci/ivtv/ivtv-streams.c cx2341x_handler_setup(&itv->cxhdl); itv 605 drivers/media/pci/ivtv/ivtv-streams.c if (test_bit(IVTV_F_I_RADIO_USER, &itv->i_flags)) itv 606 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_MUTE_VIDEO, 1, itv 607 drivers/media/pci/ivtv/ivtv-streams.c 1 | (v4l2_ctrl_g_ctrl(itv->cxhdl.video_mute_yuv) << 8)); itv 611 drivers/media/pci/ivtv/ivtv-streams.c if (itv->has_cx23415 && !test_and_set_bit(IVTV_F_I_DIG_RST, &itv->i_flags)) { itv 613 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_EVENT_NOTIFICATION, 4, 0, 1, IVTV_IRQ_ENC_VIM_RST, -1); itv 614 drivers/media/pci/ivtv/ivtv-streams.c ivtv_clear_irq_mask(itv, IVTV_IRQ_ENC_VIM_RST); itv 617 drivers/media/pci/ivtv/ivtv-streams.c if (atomic_read(&itv->capturing) == 0) { itv 619 drivers/media/pci/ivtv/ivtv-streams.c ivtv_set_irq_mask(itv, IVTV_IRQ_MASK_CAPTURE); itv 621 drivers/media/pci/ivtv/ivtv-streams.c clear_bit(IVTV_F_I_EOS, &itv->i_flags); itv 623 drivers/media/pci/ivtv/ivtv-streams.c cx2341x_handler_set_busy(&itv->cxhdl, 1); itv 627 drivers/media/pci/ivtv/ivtv-streams.c v4l2_subdev_call(itv->sd_audio, audio, s_stream, 1); itv 629 drivers/media/pci/ivtv/ivtv-streams.c v4l2_subdev_call(itv->sd_video, video, s_stream, 0); itv 631 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_INITIALIZE_INPUT, 0); itv 632 drivers/media/pci/ivtv/ivtv-streams.c v4l2_subdev_call(itv->sd_video, video, s_stream, 1); itv 636 drivers/media/pci/ivtv/ivtv-streams.c if (ivtv_vapi(itv, CX2341X_ENC_START_CAPTURE, 2, captype, subtype)) itv 644 drivers/media/pci/ivtv/ivtv-streams.c ivtv_passthrough_mode(itv, 1); itv 648 drivers/media/pci/ivtv/ivtv-streams.c ivtv_clear_irq_mask(itv, IVTV_IRQ_ENC_VBI_CAP); itv 650 drivers/media/pci/ivtv/ivtv-streams.c ivtv_clear_irq_mask(itv, IVTV_IRQ_MASK_CAPTURE); itv 653 drivers/media/pci/ivtv/ivtv-streams.c atomic_inc(&itv->capturing); itv 661 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv *itv = s->itv; itv 671 drivers/media/pci/ivtv/ivtv-streams.c width = itv->cxhdl.width; itv 672 drivers/media/pci/ivtv/ivtv-streams.c height = itv->cxhdl.height; itv 675 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_SET_AUDIO_MODE, 2, itv->audio_bilingual_mode, itv->audio_stereo_mode); itv 678 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_SET_DISPLAY_BUFFERS, 1, 0); itv 681 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_SET_PREBUFFERING, 1, 1); itv 684 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi_result(itv, data, CX2341X_DEC_EXTRACT_VBI, 1, 1); itv 685 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.dec_start = data[0]; itv 688 drivers/media/pci/ivtv/ivtv-streams.c itv->vbi.dec_start, data[1]); itv 696 drivers/media/pci/ivtv/ivtv-streams.c if (itv->output_mode == OUT_PASSTHROUGH) { itv 702 drivers/media/pci/ivtv/ivtv-streams.c height = itv->is_out_50hz ? 576 : 480; itv 711 drivers/media/pci/ivtv/ivtv-streams.c if (ivtv_vapi(itv, CX2341X_DEC_SET_DECODER_SOURCE, 4, datatype, itv 712 drivers/media/pci/ivtv/ivtv-streams.c width, height, itv->cxhdl.audio_properties)) { itv 720 drivers/media/pci/ivtv/ivtv-streams.c return ivtv_firmware_check(itv, "ivtv_setup_v4l2_decode_stream"); itv 725 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv *itv = s->itv; itv 743 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_SET_DMA_BLOCK_SIZE, 1, 65536); itv 749 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA_END].data[0]); itv 750 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA_END].data[1]); itv 751 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA_END].data[2]); itv 752 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA_END].data[3]); itv 753 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA].data[0]); itv 754 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA].data[1]); itv 755 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA].data[2]); itv 756 drivers/media/pci/ivtv/ivtv-streams.c writel(0, &itv->dec_mbox.mbox[IVTV_MBOX_DMA].data[3]); itv 759 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_SET_EVENT_NOTIFICATION, 4, 0, 1, IVTV_IRQ_DEC_AUD_MODE_CHG, -1); itv 762 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_START_PLAYBACK, 2, gop_offset, 0); itv 768 drivers/media/pci/ivtv/ivtv-streams.c ivtv_clear_irq_mask(itv, IVTV_IRQ_MASK_DECODE); itv 769 drivers/media/pci/ivtv/ivtv-streams.c IVTV_DEBUG_IRQ("IRQ Mask is now: 0x%08x\n", itv->irqmask); itv 772 drivers/media/pci/ivtv/ivtv-streams.c atomic_inc(&itv->decoding); itv 776 drivers/media/pci/ivtv/ivtv-streams.c void ivtv_stop_all_captures(struct ivtv *itv) itv 781 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *s = &itv->streams[i]; itv 793 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv *itv = s->itv; itv 808 drivers/media/pci/ivtv/ivtv-streams.c if (atomic_read(&itv->capturing) == 0) itv 836 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_STOP_CAPTURE, 3, stopmode, cap_type, s->subtype); itv 844 drivers/media/pci/ivtv/ivtv-streams.c add_wait_queue(&itv->eos_waitq, &wait); itv 849 drivers/media/pci/ivtv/ivtv-streams.c while (!test_bit(IVTV_F_I_EOS, &itv->i_flags) && itv 864 drivers/media/pci/ivtv/ivtv-streams.c if (!test_bit(IVTV_F_I_EOS, &itv->i_flags)) { itv 871 drivers/media/pci/ivtv/ivtv-streams.c remove_wait_queue(&itv->eos_waitq, &wait); itv 879 drivers/media/pci/ivtv/ivtv-streams.c atomic_dec(&itv->capturing); itv 885 drivers/media/pci/ivtv/ivtv-streams.c ivtv_set_irq_mask(itv, IVTV_IRQ_ENC_VBI_CAP); itv 887 drivers/media/pci/ivtv/ivtv-streams.c if (atomic_read(&itv->capturing) > 0) { itv 891 drivers/media/pci/ivtv/ivtv-streams.c cx2341x_handler_set_busy(&itv->cxhdl, 0); itv 894 drivers/media/pci/ivtv/ivtv-streams.c ivtv_set_irq_mask(itv, IVTV_IRQ_MASK_CAPTURE); itv 895 drivers/media/pci/ivtv/ivtv-streams.c del_timer(&itv->dma_timer); itv 898 drivers/media/pci/ivtv/ivtv-streams.c if (test_and_clear_bit(IVTV_F_I_DIG_RST, &itv->i_flags)) { itv 901 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_SET_EVENT_NOTIFICATION, 4, 0, 0, IVTV_IRQ_ENC_VIM_RST, -1); itv 902 drivers/media/pci/ivtv/ivtv-streams.c ivtv_set_irq_mask(itv, IVTV_IRQ_ENC_VIM_RST); itv 907 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_STOP_CAPTURE, 3, 1, 2, 7); itv 920 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv *itv = s->itv; itv 939 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_STOP_PLAYBACK, 3, itv 944 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi_result(itv, data, CX2341X_DEC_GET_XFER_INFO, 0); itv 954 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_STOP_PLAYBACK, 3, flags & V4L2_DEC_CMD_STOP_TO_BLACK, 0, 0); itv 957 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_SET_EVENT_NOTIFICATION, 4, 0, 0, IVTV_IRQ_DEC_AUD_MODE_CHG, -1); itv 959 drivers/media/pci/ivtv/ivtv-streams.c ivtv_set_irq_mask(itv, IVTV_IRQ_MASK_DECODE); itv 960 drivers/media/pci/ivtv/ivtv-streams.c del_timer(&itv->dma_timer); itv 970 drivers/media/pci/ivtv/ivtv-streams.c atomic_dec(&itv->decoding); itv 972 drivers/media/pci/ivtv/ivtv-streams.c set_bit(IVTV_F_I_EV_DEC_STOPPED, &itv->i_flags); itv 973 drivers/media/pci/ivtv/ivtv-streams.c wake_up(&itv->event_waitq); itv 982 drivers/media/pci/ivtv/ivtv-streams.c int ivtv_passthrough_mode(struct ivtv *itv, int enable) itv 984 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *yuv_stream = &itv->streams[IVTV_ENC_STREAM_TYPE_YUV]; itv 985 drivers/media/pci/ivtv/ivtv-streams.c struct ivtv_stream *dec_stream = &itv->streams[IVTV_DEC_STREAM_TYPE_YUV]; itv 995 drivers/media/pci/ivtv/ivtv-streams.c if (itv->output_mode == OUT_PASSTHROUGH) { itv 998 drivers/media/pci/ivtv/ivtv-streams.c if (ivtv_set_output_mode(itv, OUT_PASSTHROUGH) != OUT_PASSTHROUGH) itv 1009 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_START_PLAYBACK, 2, 0, 1); itv 1010 drivers/media/pci/ivtv/ivtv-streams.c atomic_inc(&itv->decoding); itv 1013 drivers/media/pci/ivtv/ivtv-streams.c if (atomic_read(&itv->capturing) == 0) { itv 1014 drivers/media/pci/ivtv/ivtv-streams.c cx2341x_handler_setup(&itv->cxhdl); itv 1015 drivers/media/pci/ivtv/ivtv-streams.c cx2341x_handler_set_busy(&itv->cxhdl, 1); itv 1019 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_START_CAPTURE, 2, 2, 11); itv 1020 drivers/media/pci/ivtv/ivtv-streams.c atomic_inc(&itv->capturing); itv 1024 drivers/media/pci/ivtv/ivtv-streams.c if (itv->output_mode != OUT_PASSTHROUGH) itv 1028 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_ENC_STOP_CAPTURE, 3, 1, 2, 11); itv 1029 drivers/media/pci/ivtv/ivtv-streams.c ivtv_vapi(itv, CX2341X_DEC_STOP_PLAYBACK, 3, 1, 0, 0); itv 1031 drivers/media/pci/ivtv/ivtv-streams.c atomic_dec(&itv->capturing); itv 1032 drivers/media/pci/ivtv/ivtv-streams.c atomic_dec(&itv->decoding); itv 1035 drivers/media/pci/ivtv/ivtv-streams.c itv->output_mode = OUT_NONE; itv 1036 drivers/media/pci/ivtv/ivtv-streams.c if (atomic_read(&itv->capturing) == 0) itv 1037 drivers/media/pci/ivtv/ivtv-streams.c cx2341x_handler_set_busy(&itv->cxhdl, 0); itv 12 drivers/media/pci/ivtv/ivtv-streams.h int ivtv_streams_setup(struct ivtv *itv); itv 13 drivers/media/pci/ivtv/ivtv-streams.h int ivtv_streams_register(struct ivtv *itv); itv 14 drivers/media/pci/ivtv/ivtv-streams.h void ivtv_streams_cleanup(struct ivtv *itv); itv 22 drivers/media/pci/ivtv/ivtv-streams.h void ivtv_stop_all_captures(struct ivtv *itv); itv 23 drivers/media/pci/ivtv/ivtv-streams.h int ivtv_passthrough_mode(struct ivtv *itv, int enable); itv 80 drivers/media/pci/ivtv/ivtv-udma.c void ivtv_udma_alloc(struct ivtv *itv) itv 82 drivers/media/pci/ivtv/ivtv-udma.c if (itv->udma.SG_handle == 0) { itv 84 drivers/media/pci/ivtv/ivtv-udma.c itv->udma.SG_handle = pci_map_single(itv->pdev, itv->udma.SGarray, itv 85 drivers/media/pci/ivtv/ivtv-udma.c sizeof(itv->udma.SGarray), PCI_DMA_TODEVICE); itv 86 drivers/media/pci/ivtv/ivtv-udma.c ivtv_udma_sync_for_cpu(itv); itv 90 drivers/media/pci/ivtv/ivtv-udma.c int ivtv_udma_setup(struct ivtv *itv, unsigned long ivtv_dest_addr, itv 94 drivers/media/pci/ivtv/ivtv-udma.c struct ivtv_user_dma *dma = &itv->udma; itv 141 drivers/media/pci/ivtv/ivtv-udma.c dma->SG_length = pci_map_sg(itv->pdev, dma->SGlist, dma->page_count, PCI_DMA_TODEVICE); itv 149 drivers/media/pci/ivtv/ivtv-udma.c ivtv_udma_sync_for_device(itv); itv 153 drivers/media/pci/ivtv/ivtv-udma.c void ivtv_udma_unmap(struct ivtv *itv) itv 155 drivers/media/pci/ivtv/ivtv-udma.c struct ivtv_user_dma *dma = &itv->udma; itv 166 drivers/media/pci/ivtv/ivtv-udma.c pci_unmap_sg(itv->pdev, dma->SGlist, dma->page_count, PCI_DMA_TODEVICE); itv 170 drivers/media/pci/ivtv/ivtv-udma.c ivtv_udma_sync_for_cpu(itv); itv 179 drivers/media/pci/ivtv/ivtv-udma.c void ivtv_udma_free(struct ivtv *itv) itv 184 drivers/media/pci/ivtv/ivtv-udma.c if (itv->udma.SG_handle) { itv 185 drivers/media/pci/ivtv/ivtv-udma.c pci_unmap_single(itv->pdev, itv->udma.SG_handle, itv 186 drivers/media/pci/ivtv/ivtv-udma.c sizeof(itv->udma.SGarray), PCI_DMA_TODEVICE); itv 190 drivers/media/pci/ivtv/ivtv-udma.c if (itv->udma.SG_length) { itv 191 drivers/media/pci/ivtv/ivtv-udma.c pci_unmap_sg(itv->pdev, itv->udma.SGlist, itv->udma.page_count, PCI_DMA_TODEVICE); itv 195 drivers/media/pci/ivtv/ivtv-udma.c if (itv->udma.bouncemap[i]) itv 196 drivers/media/pci/ivtv/ivtv-udma.c __free_page(itv->udma.bouncemap[i]); itv 200 drivers/media/pci/ivtv/ivtv-udma.c void ivtv_udma_start(struct ivtv *itv) itv 203 drivers/media/pci/ivtv/ivtv-udma.c write_reg(itv->udma.SG_handle, IVTV_REG_DECDMAADDR); itv 205 drivers/media/pci/ivtv/ivtv-udma.c set_bit(IVTV_F_I_DMA, &itv->i_flags); itv 206 drivers/media/pci/ivtv/ivtv-udma.c set_bit(IVTV_F_I_UDMA, &itv->i_flags); itv 207 drivers/media/pci/ivtv/ivtv-udma.c clear_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags); itv 210 drivers/media/pci/ivtv/ivtv-udma.c void ivtv_udma_prepare(struct ivtv *itv) itv 214 drivers/media/pci/ivtv/ivtv-udma.c spin_lock_irqsave(&itv->dma_reg_lock, flags); itv 215 drivers/media/pci/ivtv/ivtv-udma.c if (!test_bit(IVTV_F_I_DMA, &itv->i_flags)) itv 216 drivers/media/pci/ivtv/ivtv-udma.c ivtv_udma_start(itv); itv 218 drivers/media/pci/ivtv/ivtv-udma.c set_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags); itv 219 drivers/media/pci/ivtv/ivtv-udma.c spin_unlock_irqrestore(&itv->dma_reg_lock, flags); itv 16 drivers/media/pci/ivtv/ivtv-udma.h int ivtv_udma_setup(struct ivtv *itv, unsigned long ivtv_dest_addr, itv 18 drivers/media/pci/ivtv/ivtv-udma.h void ivtv_udma_unmap(struct ivtv *itv); itv 19 drivers/media/pci/ivtv/ivtv-udma.h void ivtv_udma_free(struct ivtv *itv); itv 20 drivers/media/pci/ivtv/ivtv-udma.h void ivtv_udma_alloc(struct ivtv *itv); itv 21 drivers/media/pci/ivtv/ivtv-udma.h void ivtv_udma_prepare(struct ivtv *itv); itv 22 drivers/media/pci/ivtv/ivtv-udma.h void ivtv_udma_start(struct ivtv *itv); itv 24 drivers/media/pci/ivtv/ivtv-udma.h static inline void ivtv_udma_sync_for_device(struct ivtv *itv) itv 26 drivers/media/pci/ivtv/ivtv-udma.h pci_dma_sync_single_for_device(itv->pdev, itv->udma.SG_handle, itv 27 drivers/media/pci/ivtv/ivtv-udma.h sizeof(itv->udma.SGarray), PCI_DMA_TODEVICE); itv 30 drivers/media/pci/ivtv/ivtv-udma.h static inline void ivtv_udma_sync_for_cpu(struct ivtv *itv) itv 32 drivers/media/pci/ivtv/ivtv-udma.h pci_dma_sync_single_for_cpu(itv->pdev, itv->udma.SG_handle, itv 33 drivers/media/pci/ivtv/ivtv-udma.h sizeof(itv->udma.SGarray), PCI_DMA_TODEVICE); itv 15 drivers/media/pci/ivtv/ivtv-vbi.c static void ivtv_set_vps(struct ivtv *itv, int enabled) itv 19 drivers/media/pci/ivtv/ivtv-vbi.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 24 drivers/media/pci/ivtv/ivtv-vbi.c data.data[2] = itv->vbi.vps_payload.data[0]; itv 25 drivers/media/pci/ivtv/ivtv-vbi.c data.data[8] = itv->vbi.vps_payload.data[1]; itv 26 drivers/media/pci/ivtv/ivtv-vbi.c data.data[9] = itv->vbi.vps_payload.data[2]; itv 27 drivers/media/pci/ivtv/ivtv-vbi.c data.data[10] = itv->vbi.vps_payload.data[3]; itv 28 drivers/media/pci/ivtv/ivtv-vbi.c data.data[11] = itv->vbi.vps_payload.data[4]; itv 29 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_call_hw(itv, IVTV_HW_SAA7127, vbi, s_vbi_data, &data); itv 32 drivers/media/pci/ivtv/ivtv-vbi.c static void ivtv_set_cc(struct ivtv *itv, int mode, const struct vbi_cc *cc) itv 36 drivers/media/pci/ivtv/ivtv-vbi.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 43 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_call_hw(itv, IVTV_HW_SAA7127, vbi, s_vbi_data, &data); itv 48 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_call_hw(itv, IVTV_HW_SAA7127, vbi, s_vbi_data, &data); itv 51 drivers/media/pci/ivtv/ivtv-vbi.c static void ivtv_set_wss(struct ivtv *itv, int enabled, int mode) itv 55 drivers/media/pci/ivtv/ivtv-vbi.c if (!(itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT)) itv 62 drivers/media/pci/ivtv/ivtv-vbi.c if ((itv->std_out & V4L2_STD_625_50) && !enabled) { itv 71 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_call_hw(itv, IVTV_HW_SAA7127, vbi, s_vbi_data, &data); itv 83 drivers/media/pci/ivtv/ivtv-vbi.c static void ivtv_write_vbi_line(struct ivtv *itv, itv 87 drivers/media/pci/ivtv/ivtv-vbi.c struct vbi_info *vi = &itv->vbi; itv 108 drivers/media/pci/ivtv/ivtv-vbi.c set_bit(IVTV_F_I_UPDATE_VPS, &itv->i_flags); itv 116 drivers/media/pci/ivtv/ivtv-vbi.c set_bit(IVTV_F_I_UPDATE_WSS, &itv->i_flags); itv 121 drivers/media/pci/ivtv/ivtv-vbi.c static void ivtv_write_vbi_cc_lines(struct ivtv *itv, const struct vbi_cc *cc) itv 123 drivers/media/pci/ivtv/ivtv-vbi.c struct vbi_info *vi = &itv->vbi; itv 129 drivers/media/pci/ivtv/ivtv-vbi.c set_bit(IVTV_F_I_UPDATE_CC, &itv->i_flags); itv 133 drivers/media/pci/ivtv/ivtv-vbi.c static void ivtv_write_vbi(struct ivtv *itv, itv 142 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_write_vbi_line(itv, sliced + i, &cc, &found_cc); itv 145 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_write_vbi_cc_lines(itv, &cc); itv 149 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_write_vbi_from_user(struct ivtv *itv, itv 165 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_write_vbi_line(itv, &d, &cc, &found_cc); itv 169 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_write_vbi_cc_lines(itv, &cc); itv 174 drivers/media/pci/ivtv/ivtv-vbi.c static void copy_vbi_data(struct ivtv *itv, int lines, u32 pts_stamp) itv 187 drivers/media/pci/ivtv/ivtv-vbi.c int idx = itv->vbi.frame % IVTV_VBI_FRAMES; itv 188 drivers/media/pci/ivtv/ivtv-vbi.c u8 *dst = &itv->vbi.sliced_mpeg_data[idx][0]; itv 193 drivers/media/pci/ivtv/ivtv-vbi.c if (itv->vbi.sliced_data[i].id == 0) itv 196 drivers/media/pci/ivtv/ivtv-vbi.c l = itv->vbi.sliced_data[i].line - 6; itv 197 drivers/media/pci/ivtv/ivtv-vbi.c f = itv->vbi.sliced_data[i].field; itv 205 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_service2vbi(itv->vbi.sliced_data[i].id); itv 206 drivers/media/pci/ivtv/ivtv-vbi.c memcpy(dst + sd + 12 + line * 43 + 1, itv->vbi.sliced_data[i].data, 42); itv 231 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_mpeg_size[idx] = sd + size; itv 234 drivers/media/pci/ivtv/ivtv-vbi.c static int ivtv_convert_ivtv_vbi(struct ivtv *itv, u8 *p) itv 279 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_dec_data[line].line = l; itv 280 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_dec_data[line].field = i >= 18; itv 281 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_dec_data[line].id = id2; itv 282 drivers/media/pci/ivtv/ivtv-vbi.c memcpy(itv->vbi.sliced_dec_data[line].data, p + 1, 42); itv 288 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_dec_data[line].id = 0; itv 289 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_dec_data[line].line = 0; itv 290 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_dec_data[line].field = 0; itv 293 drivers/media/pci/ivtv/ivtv-vbi.c return line * sizeof(itv->vbi.sliced_dec_data[0]); itv 299 drivers/media/pci/ivtv/ivtv-vbi.c static u32 compress_raw_buf(struct ivtv *itv, u8 *buf, u32 size) itv 301 drivers/media/pci/ivtv/ivtv-vbi.c u32 line_size = itv->vbi.raw_decoder_line_size; itv 302 drivers/media/pci/ivtv/ivtv-vbi.c u32 lines = itv->vbi.count; itv 303 drivers/media/pci/ivtv/ivtv-vbi.c u8 sav1 = itv->vbi.raw_decoder_sav_odd_field; itv 304 drivers/media/pci/ivtv/ivtv-vbi.c u8 sav2 = itv->vbi.raw_decoder_sav_even_field; itv 325 drivers/media/pci/ivtv/ivtv-vbi.c static u32 compress_sliced_buf(struct ivtv *itv, u32 line, u8 *buf, u32 size, u8 sav) itv 327 drivers/media/pci/ivtv/ivtv-vbi.c u32 line_size = itv->vbi.sliced_decoder_line_size; itv 350 drivers/media/pci/ivtv/ivtv-vbi.c v4l2_subdev_call(itv->sd_video, vbi, decode_vbi_line, &vbi); itv 353 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_data[line].id = vbi.type; itv 354 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_data[line].field = vbi.is_second_field; itv 355 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_data[line].line = vbi.line; itv 356 drivers/media/pci/ivtv/ivtv-vbi.c memcpy(itv->vbi.sliced_data[line].data, vbi.p, 42); itv 363 drivers/media/pci/ivtv/ivtv-vbi.c void ivtv_process_vbi_data(struct ivtv *itv, struct ivtv_buffer *buf, itv 371 drivers/media/pci/ivtv/ivtv-vbi.c if (streamtype == IVTV_ENC_STREAM_TYPE_VBI && ivtv_raw_vbi(itv)) { itv 378 drivers/media/pci/ivtv/ivtv-vbi.c size = buf->bytesused = compress_raw_buf(itv, p, size); itv 381 drivers/media/pci/ivtv/ivtv-vbi.c if (type == itv->vbi.raw_decoder_sav_even_field) { itv 385 drivers/media/pci/ivtv/ivtv-vbi.c memcpy(p, &itv->vbi.frame, 4); itv 386 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.frame++; itv 398 drivers/media/pci/ivtv/ivtv-vbi.c lines = compress_sliced_buf(itv, 0, p, size / 2, itv 399 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_decoder_sav_odd_field); itv 403 drivers/media/pci/ivtv/ivtv-vbi.c lines = compress_sliced_buf(itv, lines, p + size / 2 - 32, size / 2 + 32, itv 404 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_decoder_sav_even_field); itv 407 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_data[0].id = 0; itv 408 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_data[0].line = 0; itv 409 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.sliced_data[0].field = 0; itv 412 drivers/media/pci/ivtv/ivtv-vbi.c buf->bytesused = size = lines * sizeof(itv->vbi.sliced_data[0]); itv 413 drivers/media/pci/ivtv/ivtv-vbi.c memcpy(p, &itv->vbi.sliced_data[0], size); itv 415 drivers/media/pci/ivtv/ivtv-vbi.c if (itv->vbi.insert_mpeg) { itv 416 drivers/media/pci/ivtv/ivtv-vbi.c copy_vbi_data(itv, lines, pts_stamp); itv 418 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.frame++; itv 442 drivers/media/pci/ivtv/ivtv-vbi.c cnt = ivtv_convert_ivtv_vbi(itv, p + offset); itv 443 drivers/media/pci/ivtv/ivtv-vbi.c memcpy(buf->buf, itv->vbi.sliced_dec_data, cnt); itv 446 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_write_vbi(itv, itv->vbi.sliced_dec_data, itv 447 drivers/media/pci/ivtv/ivtv-vbi.c cnt / sizeof(itv->vbi.sliced_dec_data[0])); itv 452 drivers/media/pci/ivtv/ivtv-vbi.c void ivtv_disable_cc(struct ivtv *itv) itv 456 drivers/media/pci/ivtv/ivtv-vbi.c clear_bit(IVTV_F_I_UPDATE_CC, &itv->i_flags); itv 457 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_cc(itv, 0, &cc); itv 458 drivers/media/pci/ivtv/ivtv-vbi.c itv->vbi.cc_payload_idx = 0; itv 462 drivers/media/pci/ivtv/ivtv-vbi.c void ivtv_vbi_work_handler(struct ivtv *itv) itv 464 drivers/media/pci/ivtv/ivtv-vbi.c struct vbi_info *vi = &itv->vbi; itv 469 drivers/media/pci/ivtv/ivtv-vbi.c if (itv->output_mode == OUT_PASSTHROUGH) { itv 470 drivers/media/pci/ivtv/ivtv-vbi.c if (itv->is_50hz) { itv 474 drivers/media/pci/ivtv/ivtv-vbi.c if (v4l2_subdev_call(itv->sd_video, vbi, g_vbi_data, &data) == 0) { itv 475 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_wss(itv, 1, data.data[0] & 0xf); itv 478 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_wss(itv, 1, 0x8); /* 4x3 full format */ itv 488 drivers/media/pci/ivtv/ivtv-vbi.c if (v4l2_subdev_call(itv->sd_video, vbi, g_vbi_data, &data) == 0) { itv 494 drivers/media/pci/ivtv/ivtv-vbi.c if (v4l2_subdev_call(itv->sd_video, vbi, g_vbi_data, &data) == 0) { itv 501 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_cc(itv, mode, &cc); itv 503 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_cc(itv, 0, &cc); itv 511 drivers/media/pci/ivtv/ivtv-vbi.c if (test_and_clear_bit(IVTV_F_I_UPDATE_WSS, &itv->i_flags)) { itv 512 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_wss(itv, 1, vi->wss_payload & 0xf); itv 515 drivers/media/pci/ivtv/ivtv-vbi.c if (test_bit(IVTV_F_I_UPDATE_CC, &itv->i_flags)) { itv 517 drivers/media/pci/ivtv/ivtv-vbi.c clear_bit(IVTV_F_I_UPDATE_CC, &itv->i_flags); itv 518 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_cc(itv, 3, &cc); itv 529 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_cc(itv, 3, &cc); itv 534 drivers/media/pci/ivtv/ivtv-vbi.c if (test_and_clear_bit(IVTV_F_I_UPDATE_VPS, &itv->i_flags)) { itv 535 drivers/media/pci/ivtv/ivtv-vbi.c ivtv_set_vps(itv, 1); itv 12 drivers/media/pci/ivtv/ivtv-vbi.h ivtv_write_vbi_from_user(struct ivtv *itv, itv 15 drivers/media/pci/ivtv/ivtv-vbi.h void ivtv_process_vbi_data(struct ivtv *itv, struct ivtv_buffer *buf, itv 17 drivers/media/pci/ivtv/ivtv-vbi.h int ivtv_used_line(struct ivtv *itv, int line, int field); itv 18 drivers/media/pci/ivtv/ivtv-vbi.h void ivtv_disable_cc(struct ivtv *itv); itv 20 drivers/media/pci/ivtv/ivtv-vbi.h void ivtv_vbi_work_handler(struct ivtv *itv); itv 25 drivers/media/pci/ivtv/ivtv-yuv.c static int ivtv_yuv_prep_user_dma(struct ivtv *itv, struct ivtv_user_dma *dma, itv 30 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 121 drivers/media/pci/ivtv/ivtv-yuv.c dma->SG_length = pci_map_sg(itv->pdev, dma->SGlist, dma->page_count, PCI_DMA_TODEVICE); itv 137 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_udma_sync_for_device(itv); itv 142 drivers/media/pci/ivtv/ivtv-yuv.c int ivtv_yuv_filter_check(struct ivtv *itv) itv 156 drivers/media/pci/ivtv/ivtv-yuv.c static void ivtv_yuv_filter(struct ivtv *itv, int h_filter, int v_filter_1, int v_filter_2) itv 216 drivers/media/pci/ivtv/ivtv-yuv.c static void ivtv_yuv_handle_horizontal(struct ivtv *itv, struct yuv_frame_info *f) itv 218 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 373 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_filter(itv, h_filter, -1, -1); itv 378 drivers/media/pci/ivtv/ivtv-yuv.c static void ivtv_yuv_handle_vertical(struct ivtv *itv, struct yuv_frame_info *f) itv 380 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 645 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_filter(itv, -1, v_filter_1, -1); itv 651 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_filter(itv, -1, -1, v_filter_2); itv 657 drivers/media/pci/ivtv/ivtv-yuv.c static u32 ivtv_yuv_window_setup(struct ivtv *itv, struct yuv_frame_info *f) itv 659 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_frame_info *of = &itv->yuv_info.old_frame_info; itv 736 drivers/media/pci/ivtv/ivtv-yuv.c if (itv->yuv_info.track_osd) { itv 738 drivers/media/pci/ivtv/ivtv-yuv.c f->dst_x += itv->yuv_info.osd_x_offset; itv 739 drivers/media/pci/ivtv/ivtv-yuv.c f->dst_y += itv->yuv_info.osd_y_offset; itv 802 drivers/media/pci/ivtv/ivtv-yuv.c void ivtv_yuv_work_handler(struct ivtv *itv) itv 804 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 827 drivers/media/pci/ivtv/ivtv-yuv.c if (!(yuv_update = ivtv_yuv_window_setup(itv, &f))) itv 836 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_handle_horizontal(itv, &f); itv 839 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_handle_vertical(itv, &f); itv 844 drivers/media/pci/ivtv/ivtv-yuv.c static void ivtv_yuv_init(struct ivtv *itv) itv 846 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 905 drivers/media/pci/ivtv/ivtv-yuv.c if (!itv->osd_info) { itv 928 drivers/media/pci/ivtv/ivtv-yuv.c yi->blanking_dmaptr = pci_map_single(itv->pdev, yi->blanking_ptr, 720*16, PCI_DMA_TODEVICE); itv 937 drivers/media/pci/ivtv/ivtv-yuv.c set_bit(IVTV_F_I_DECODING_YUV, &itv->i_flags); itv 942 drivers/media/pci/ivtv/ivtv-yuv.c static void ivtv_yuv_next_free(struct ivtv *itv) itv 945 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 948 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_init(itv); itv 965 drivers/media/pci/ivtv/ivtv-yuv.c static void ivtv_yuv_setup_frame(struct ivtv *itv, struct ivtv_dma_frame *args) itv 967 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1058 drivers/media/pci/ivtv/ivtv-yuv.c void ivtv_yuv_frame_complete(struct ivtv *itv) itv 1060 drivers/media/pci/ivtv/ivtv-yuv.c atomic_set(&itv->yuv_info.next_fill_frame, itv 1061 drivers/media/pci/ivtv/ivtv-yuv.c (itv->yuv_info.draw_frame + 1) % IVTV_YUV_BUFFERS); itv 1064 drivers/media/pci/ivtv/ivtv-yuv.c static int ivtv_yuv_udma_frame(struct ivtv *itv, struct ivtv_dma_frame *args) itv 1070 drivers/media/pci/ivtv/ivtv-yuv.c mutex_lock(&itv->udma.lock); itv 1072 drivers/media/pci/ivtv/ivtv-yuv.c if ((rc = ivtv_yuv_prep_user_dma(itv, &itv->udma, args)) != 0) { itv 1073 drivers/media/pci/ivtv/ivtv-yuv.c mutex_unlock(&itv->udma.lock); itv 1077 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_udma_prepare(itv); itv 1078 drivers/media/pci/ivtv/ivtv-yuv.c prepare_to_wait(&itv->dma_waitq, &wait, TASK_INTERRUPTIBLE); itv 1081 drivers/media/pci/ivtv/ivtv-yuv.c while (test_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags) || itv 1082 drivers/media/pci/ivtv/ivtv-yuv.c test_bit(IVTV_F_I_UDMA, &itv->i_flags)) { itv 1086 drivers/media/pci/ivtv/ivtv-yuv.c if (got_sig && test_and_clear_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags)) itv 1091 drivers/media/pci/ivtv/ivtv-yuv.c finish_wait(&itv->dma_waitq, &wait); itv 1094 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_udma_unmap(itv); itv 1098 drivers/media/pci/ivtv/ivtv-yuv.c mutex_unlock(&itv->udma.lock); itv 1102 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_frame_complete(itv); itv 1104 drivers/media/pci/ivtv/ivtv-yuv.c mutex_unlock(&itv->udma.lock); itv 1109 drivers/media/pci/ivtv/ivtv-yuv.c void ivtv_yuv_setup_stream_frame(struct ivtv *itv) itv 1111 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1114 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_next_free(itv); itv 1128 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_setup_frame(itv, &dma_args); itv 1130 drivers/media/pci/ivtv/ivtv-yuv.c if (!itv->dma_data_req_offset) itv 1131 drivers/media/pci/ivtv/ivtv-yuv.c itv->dma_data_req_offset = yuv_offset[yi->draw_frame]; itv 1135 drivers/media/pci/ivtv/ivtv-yuv.c int ivtv_yuv_udma_stream_frame(struct ivtv *itv, void __user *src) itv 1137 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1141 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_setup_stream_frame(itv); itv 1149 drivers/media/pci/ivtv/ivtv-yuv.c mutex_unlock(&itv->serialize_lock); itv 1150 drivers/media/pci/ivtv/ivtv-yuv.c res = ivtv_yuv_udma_frame(itv, &dma_args); itv 1151 drivers/media/pci/ivtv/ivtv-yuv.c mutex_lock(&itv->serialize_lock); itv 1156 drivers/media/pci/ivtv/ivtv-yuv.c int ivtv_yuv_prep_frame(struct ivtv *itv, struct ivtv_dma_frame *args) itv 1161 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_next_free(itv); itv 1162 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_setup_frame(itv, args); itv 1166 drivers/media/pci/ivtv/ivtv-yuv.c mutex_unlock(&itv->serialize_lock); itv 1167 drivers/media/pci/ivtv/ivtv-yuv.c res = ivtv_yuv_udma_frame(itv, args); itv 1168 drivers/media/pci/ivtv/ivtv-yuv.c mutex_lock(&itv->serialize_lock); itv 1172 drivers/media/pci/ivtv/ivtv-yuv.c void ivtv_yuv_close(struct ivtv *itv) itv 1174 drivers/media/pci/ivtv/ivtv-yuv.c struct yuv_playback_info *yi = &itv->yuv_info; itv 1178 drivers/media/pci/ivtv/ivtv-yuv.c mutex_unlock(&itv->serialize_lock); itv 1179 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_waitq(&itv->vsync_waitq); itv 1180 drivers/media/pci/ivtv/ivtv-yuv.c mutex_lock(&itv->serialize_lock); itv 1260 drivers/media/pci/ivtv/ivtv-yuv.c ivtv_yuv_filter(itv, h_filter, v_filter_1, v_filter_2); itv 1272 drivers/media/pci/ivtv/ivtv-yuv.c pci_unmap_single(itv->pdev, yi->blanking_dmaptr, 720*16, PCI_DMA_TODEVICE); itv 1282 drivers/media/pci/ivtv/ivtv-yuv.c clear_bit(IVTV_F_I_DECODING_YUV, &itv->i_flags); itv 24 drivers/media/pci/ivtv/ivtv-yuv.h int ivtv_yuv_filter_check(struct ivtv *itv); itv 25 drivers/media/pci/ivtv/ivtv-yuv.h void ivtv_yuv_setup_stream_frame(struct ivtv *itv); itv 26 drivers/media/pci/ivtv/ivtv-yuv.h int ivtv_yuv_udma_stream_frame(struct ivtv *itv, void __user *src); itv 27 drivers/media/pci/ivtv/ivtv-yuv.h void ivtv_yuv_frame_complete(struct ivtv *itv); itv 28 drivers/media/pci/ivtv/ivtv-yuv.h int ivtv_yuv_prep_frame(struct ivtv *itv, struct ivtv_dma_frame *args); itv 29 drivers/media/pci/ivtv/ivtv-yuv.h void ivtv_yuv_close(struct ivtv *itv); itv 30 drivers/media/pci/ivtv/ivtv-yuv.h void ivtv_yuv_work_handler(struct ivtv *itv); itv 117 drivers/media/pci/ivtv/ivtvfb.c printk(KERN_INFO "ivtvfb%d " type ": " fmt, itv->instance , ## args); \ itv 123 drivers/media/pci/ivtv/ivtvfb.c #define IVTVFB_ERR(fmt, args...) printk(KERN_ERR "ivtvfb%d: " fmt, itv->instance , ## args) itv 124 drivers/media/pci/ivtv/ivtvfb.c #define IVTVFB_WARN(fmt, args...) printk(KERN_WARNING "ivtvfb%d: " fmt, itv->instance , ## args) itv 125 drivers/media/pci/ivtv/ivtvfb.c #define IVTVFB_INFO(fmt, args...) printk(KERN_INFO "ivtvfb%d: " fmt, itv->instance , ## args) itv 192 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_get_framebuffer(struct ivtv *itv, u32 *fbbase, itv 198 drivers/media/pci/ivtv/ivtvfb.c ivtv_firmware_check(itv, "ivtvfb_get_framebuffer"); itv 199 drivers/media/pci/ivtv/ivtvfb.c rc = ivtv_vapi_result(itv, data, CX2341X_OSD_GET_FRAMEBUFFER, 0); itv 205 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_get_osd_coords(struct ivtv *itv, itv 208 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 211 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi_result(itv, data, CX2341X_OSD_GET_OSD_COORDS, 0); itv 222 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_set_osd_coords(struct ivtv *itv, const struct ivtv_osd_coords *osd) itv 224 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 231 drivers/media/pci/ivtv/ivtvfb.c return ivtv_vapi(itv, CX2341X_OSD_SET_OSD_COORDS, 5, itv 237 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_set_display_window(struct ivtv *itv, struct v4l2_rect *ivtv_window) itv 239 drivers/media/pci/ivtv/ivtvfb.c int osd_height_limit = itv->is_out_50hz ? 576 : 480; itv 265 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_vis_w = ivtv_window->width; itv 266 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_vis_h = ivtv_window->height; itv 267 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_x_offset = ivtv_window->left; itv 268 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_y_offset = ivtv_window->top; itv 273 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_prep_dec_dma_to_device(struct ivtv *itv, itv 280 drivers/media/pci/ivtv/ivtvfb.c mutex_lock(&itv->udma.lock); itv 282 drivers/media/pci/ivtv/ivtvfb.c if (ivtv_udma_setup(itv, ivtv_dest_addr, userbuf, size_in_bytes) <= 0) { itv 283 drivers/media/pci/ivtv/ivtvfb.c mutex_unlock(&itv->udma.lock); itv 285 drivers/media/pci/ivtv/ivtvfb.c size_in_bytes, itv->udma.page_count); itv 292 drivers/media/pci/ivtv/ivtvfb.c size_in_bytes, itv->udma.page_count); itv 294 drivers/media/pci/ivtv/ivtvfb.c ivtv_udma_prepare(itv); itv 295 drivers/media/pci/ivtv/ivtvfb.c prepare_to_wait(&itv->dma_waitq, &wait, TASK_INTERRUPTIBLE); itv 298 drivers/media/pci/ivtv/ivtvfb.c while (test_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags) || itv 299 drivers/media/pci/ivtv/ivtvfb.c test_bit(IVTV_F_I_UDMA, &itv->i_flags)) { itv 303 drivers/media/pci/ivtv/ivtvfb.c if (got_sig && test_and_clear_bit(IVTV_F_I_UDMA_PENDING, &itv->i_flags)) itv 308 drivers/media/pci/ivtv/ivtvfb.c finish_wait(&itv->dma_waitq, &wait); itv 311 drivers/media/pci/ivtv/ivtvfb.c ivtv_udma_unmap(itv); itv 312 drivers/media/pci/ivtv/ivtvfb.c mutex_unlock(&itv->udma.lock); itv 321 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_prep_frame(struct ivtv *itv, int cmd, void __user *source, itv 325 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 364 drivers/media/pci/ivtv/ivtvfb.c return ivtvfb_prep_dec_dma_to_device(itv, dest_offset, source, count); itv 375 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *) info->par; itv 377 drivers/media/pci/ivtv/ivtvfb.c IVTV_DECODER_OFFSET + itv->osd_info->video_rbase; itv 425 drivers/media/pci/ivtv/ivtvfb.c dma_err = ivtvfb_prep_dec_dma_to_device(itv, itv 447 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *)info->par; itv 460 drivers/media/pci/ivtv/ivtvfb.c if (itv->is_out_50hz && trace > 312) itv 462 drivers/media/pci/ivtv/ivtvfb.c else if (itv->is_out_60hz && trace > 262) itv 466 drivers/media/pci/ivtv/ivtvfb.c vblank.count = itv->last_vsync_field; itv 475 drivers/media/pci/ivtv/ivtvfb.c prepare_to_wait(&itv->vsync_waitq, &wait, TASK_INTERRUPTIBLE); itv 478 drivers/media/pci/ivtv/ivtvfb.c finish_wait(&itv->vsync_waitq, &wait); itv 488 drivers/media/pci/ivtv/ivtvfb.c return ivtvfb_prep_frame(itv, cmd, args.source, args.dest_offset, args.count); itv 500 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_set_var(struct ivtv *itv, struct fb_var_screeninfo *var) itv 502 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 545 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_PIXEL_FORMAT, 1, 0); itv 546 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_PIXEL_FORMAT, 1, osd_mode); itv 555 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_FLICKER_STATE, 1, 1); itv 558 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_FLICKER_STATE, 1, 0); itv 565 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_get_osd_coords(itv, &ivtv_osd); itv 572 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_set_osd_coords(itv, &ivtv_osd); itv 587 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_set_display_window(itv, &ivtv_window); itv 590 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_full_w = ivtv_osd.pixel_stride; itv 591 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_full_h = ivtv_osd.lines; itv 594 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.yuv_forced_update = 1; itv 614 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_get_fix(struct ivtv *itv, struct fb_fix_screeninfo *fix) itv 616 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 636 drivers/media/pci/ivtv/ivtvfb.c static int _ivtvfb_check_var(struct fb_var_screeninfo *var, struct ivtv *itv) itv 638 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 645 drivers/media/pci/ivtv/ivtvfb.c if (itv->is_out_50hz) { itv 776 drivers/media/pci/ivtv/ivtvfb.c if (var->upper_margin + var->yres > (itv->is_out_50hz ? 577 : 481)) itv 777 drivers/media/pci/ivtv/ivtvfb.c var->upper_margin = 1 + (((itv->is_out_50hz ? 576 : 480) - itv 796 drivers/media/pci/ivtv/ivtvfb.c itv->osd_rect.width = var->xres; itv 797 drivers/media/pci/ivtv/ivtvfb.c itv->osd_rect.height = var->yres; itv 815 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *) info->par; itv 817 drivers/media/pci/ivtv/ivtvfb.c return _ivtvfb_check_var(var, itv); itv 823 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *) info->par; itv 834 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_x_pan = var->xoffset; itv 835 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.osd_y_pan = var->yoffset; itv 837 drivers/media/pci/ivtv/ivtvfb.c itv->yuv_info.yuv_forced_update = 1; itv 839 drivers/media/pci/ivtv/ivtvfb.c itv->osd_info->pan_cur = osd_pan_index; itv 846 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *) info->par; itv 850 drivers/media/pci/ivtv/ivtvfb.c rc = ivtvfb_set_var(itv, &info->var); itv 852 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_get_fix(itv, &info->fix); itv 853 drivers/media/pci/ivtv/ivtvfb.c ivtv_firmware_check(itv, "ivtvfb_set_par"); itv 862 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *)info->par; itv 871 drivers/media/pci/ivtv/ivtvfb.c itv->osd_info->palette_cur[regno] = color; itv 905 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = (struct ivtv *)info->par; itv 910 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, 1); itv 911 drivers/media/pci/ivtv/ivtvfb.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_stream, 1); itv 916 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, 0); itv 917 drivers/media/pci/ivtv/ivtvfb.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_stream, 1); itv 920 drivers/media/pci/ivtv/ivtvfb.c ivtv_call_hw(itv, IVTV_HW_SAA7127, video, s_stream, 0); itv 921 drivers/media/pci/ivtv/ivtvfb.c ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, 0); itv 924 drivers/media/pci/ivtv/ivtvfb.c itv->osd_info->blank_cur = blank_mode; itv 944 drivers/media/pci/ivtv/ivtvfb.c static void ivtvfb_restore(struct ivtv *itv) itv 946 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 949 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_set_var(itv, &oi->fbvar_cur); itv 962 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_init_vidmode(struct ivtv *itv) itv 964 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 1005 drivers/media/pci/ivtv/ivtvfb.c max_height = itv->is_out_50hz ? 576 : 480; itv 1011 drivers/media/pci/ivtv/ivtvfb.c osd_yres : itv->is_out_50hz ? 480 : 400; itv 1042 drivers/media/pci/ivtv/ivtvfb.c _ivtvfb_check_var(&oi->ivtvfb_defined, itv); itv 1046 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_get_fix(itv, &oi->ivtvfb_fix); itv 1053 drivers/media/pci/ivtv/ivtvfb.c oi->ivtvfb_info.par = itv; itv 1085 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_init_io(struct ivtv *itv) itv 1087 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 1091 drivers/media/pci/ivtv/ivtvfb.c mutex_lock(&itv->serialize_lock); itv 1092 drivers/media/pci/ivtv/ivtvfb.c if (ivtv_init_on_first_open(itv)) { itv 1093 drivers/media/pci/ivtv/ivtvfb.c mutex_unlock(&itv->serialize_lock); itv 1097 drivers/media/pci/ivtv/ivtvfb.c mutex_unlock(&itv->serialize_lock); itv 1099 drivers/media/pci/ivtv/ivtvfb.c if (ivtvfb_get_framebuffer(itv, &oi->video_rbase, itv 1110 drivers/media/pci/ivtv/ivtvfb.c oi->video_pbase = itv->base_addr + IVTV_DECODER_OFFSET + oi->video_rbase; itv 1111 drivers/media/pci/ivtv/ivtvfb.c oi->video_vbase = itv->dec_mem + oi->video_rbase; itv 1140 drivers/media/pci/ivtv/ivtvfb.c static void ivtvfb_release_buffers (struct ivtv *itv) itv 1142 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 1152 drivers/media/pci/ivtv/ivtvfb.c itv->osd_info = NULL; itv 1157 drivers/media/pci/ivtv/ivtvfb.c static int ivtvfb_init_card(struct ivtv *itv) itv 1175 drivers/media/pci/ivtv/ivtvfb.c if (itv->osd_info) { itv 1180 drivers/media/pci/ivtv/ivtvfb.c itv->osd_info = kzalloc(sizeof(struct osd_info), itv 1182 drivers/media/pci/ivtv/ivtvfb.c if (itv->osd_info == NULL) { itv 1188 drivers/media/pci/ivtv/ivtvfb.c rc = ivtvfb_init_io(itv); itv 1190 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_release_buffers(itv); itv 1195 drivers/media/pci/ivtv/ivtvfb.c if ((rc = ivtvfb_init_vidmode(itv))) { itv 1196 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_release_buffers(itv); itv 1201 drivers/media/pci/ivtv/ivtvfb.c if (register_framebuffer(&itv->osd_info->ivtvfb_info) < 0) { itv 1202 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_release_buffers(itv); itv 1206 drivers/media/pci/ivtv/ivtvfb.c itv->osd_video_pbase = itv->osd_info->video_pbase; itv 1209 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_set_par(&itv->osd_info->ivtvfb_info); itv 1216 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_blank(FB_BLANK_UNBLANK, &itv->osd_info->ivtvfb_info); itv 1219 drivers/media/pci/ivtv/ivtvfb.c itv->ivtvfb_restore = ivtvfb_restore; itv 1222 drivers/media/pci/ivtv/ivtvfb.c ivtv_udma_alloc(itv); itv 1223 drivers/media/pci/ivtv/ivtvfb.c itv->streams[IVTV_DEC_STREAM_TYPE_YUV].vdev.device_caps |= itv 1225 drivers/media/pci/ivtv/ivtvfb.c itv->streams[IVTV_DEC_STREAM_TYPE_MPG].vdev.device_caps |= itv 1227 drivers/media/pci/ivtv/ivtvfb.c itv->v4l2_cap |= V4L2_CAP_VIDEO_OUTPUT_OVERLAY; itv 1235 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = container_of(v4l2_dev, struct ivtv, v4l2_dev); itv 1237 drivers/media/pci/ivtv/ivtvfb.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { itv 1238 drivers/media/pci/ivtv/ivtvfb.c if (ivtvfb_init_card(itv) == 0) { itv 1240 drivers/media/pci/ivtv/ivtvfb.c itv->v4l2_dev.name); itv 1250 drivers/media/pci/ivtv/ivtvfb.c struct ivtv *itv = container_of(v4l2_dev, struct ivtv, v4l2_dev); itv 1251 drivers/media/pci/ivtv/ivtvfb.c struct osd_info *oi = itv->osd_info; itv 1253 drivers/media/pci/ivtv/ivtvfb.c if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { itv 1254 drivers/media/pci/ivtv/ivtvfb.c itv->streams[IVTV_DEC_STREAM_TYPE_YUV].vdev.device_caps &= itv 1256 drivers/media/pci/ivtv/ivtvfb.c itv->streams[IVTV_DEC_STREAM_TYPE_MPG].vdev.device_caps &= itv 1258 drivers/media/pci/ivtv/ivtvfb.c itv->v4l2_cap &= ~V4L2_CAP_VIDEO_OUTPUT_OVERLAY; itv 1259 drivers/media/pci/ivtv/ivtvfb.c unregister_framebuffer(&itv->osd_info->ivtvfb_info); itv 1260 drivers/media/pci/ivtv/ivtvfb.c IVTVFB_INFO("Unregister framebuffer %d\n", itv->instance); itv 1261 drivers/media/pci/ivtv/ivtvfb.c itv->ivtvfb_restore = NULL; itv 1263 drivers/media/pci/ivtv/ivtvfb.c ivtvfb_release_buffers(itv); itv 1264 drivers/media/pci/ivtv/ivtvfb.c itv->osd_video_pbase = 0;