• Home
  • Raw
  • Download

Lines Matching refs:fh

78 	struct timblogiw_fh	*fh;  member
121 struct timblogiw_fh *fh = buf->fh; in timblogiw_dma_cb() local
124 spin_lock(&fh->queue_lock); in timblogiw_dma_cb()
129 fh->frame_count++; in timblogiw_dma_cb()
134 vb->field_count = fh->frame_count * 2; in timblogiw_dma_cb()
140 if (!list_empty(&fh->capture)) { in timblogiw_dma_cb()
141 vb = list_entry(fh->capture.next, struct videobuf_buffer, in timblogiw_dma_cb()
146 spin_unlock(&fh->queue_lock); in timblogiw_dma_cb()
161 struct timblogiw_fh *fh = priv; in timblogiw_g_fmt() local
170 format->fmt.pix.width = fh->cur_norm->width; in timblogiw_g_fmt()
171 format->fmt.pix.height = fh->cur_norm->height; in timblogiw_g_fmt()
173 format->fmt.pix.bytesperline = timblogiw_bytes_per_line(fh->cur_norm); in timblogiw_g_fmt()
174 format->fmt.pix.sizeimage = timblogiw_frame_size(fh->cur_norm); in timblogiw_g_fmt()
212 struct timblogiw_fh *fh = priv; in timblogiw_s_fmt() local
222 if (videobuf_queue_is_busy(&fh->vb_vidq)) { in timblogiw_s_fmt()
228 pix->width = fh->cur_norm->width; in timblogiw_s_fmt()
229 pix->height = fh->cur_norm->height; in timblogiw_s_fmt()
274 struct timblogiw_fh *fh = priv; in timblogiw_g_parm() local
279 cp->timeperframe.denominator = fh->cur_norm->fps; in timblogiw_g_parm()
288 struct timblogiw_fh *fh = priv; in timblogiw_reqbufs() local
292 return videobuf_reqbufs(&fh->vb_vidq, rb); in timblogiw_reqbufs()
299 struct timblogiw_fh *fh = priv; in timblogiw_querybuf() local
303 return videobuf_querybuf(&fh->vb_vidq, b); in timblogiw_querybuf()
309 struct timblogiw_fh *fh = priv; in timblogiw_qbuf() local
313 return videobuf_qbuf(&fh->vb_vidq, b); in timblogiw_qbuf()
320 struct timblogiw_fh *fh = priv; in timblogiw_dqbuf() local
324 return videobuf_dqbuf(&fh->vb_vidq, b, file->f_flags & O_NONBLOCK); in timblogiw_dqbuf()
330 struct timblogiw_fh *fh = priv; in timblogiw_g_std() local
334 *std = fh->cur_norm->std; in timblogiw_g_std()
342 struct timblogiw_fh *fh = priv; in timblogiw_s_std() local
353 fh->cur_norm = timblogiw_get_norm(std); in timblogiw_s_std()
409 struct timblogiw_fh *fh = priv; in timblogiw_streamon() local
418 fh->frame_count = 0; in timblogiw_streamon()
419 return videobuf_streamon(&fh->vb_vidq); in timblogiw_streamon()
426 struct timblogiw_fh *fh = priv; in timblogiw_streamoff() local
433 return videobuf_streamoff(&fh->vb_vidq); in timblogiw_streamoff()
440 struct timblogiw_fh *fh = priv; in timblogiw_querystd() local
447 *std = fh->cur_norm->std; in timblogiw_querystd()
456 struct timblogiw_fh *fh = priv; in timblogiw_enum_framesizes() local
466 fsize->discrete.width = fh->cur_norm->width; in timblogiw_enum_framesizes()
467 fsize->discrete.height = fh->cur_norm->height; in timblogiw_enum_framesizes()
477 struct timblogiw_fh *fh = vq->priv_data; in buffer_setup() local
479 *size = timblogiw_frame_size(fh->cur_norm); in buffer_setup()
493 struct timblogiw_fh *fh = vq->priv_data; in buffer_prepare() local
496 unsigned int data_size = timblogiw_frame_size(fh->cur_norm); in buffer_prepare()
504 vb->width = fh->cur_norm->width; in buffer_prepare()
505 vb->height = fh->cur_norm->height; in buffer_prepare()
512 timblogiw_bytes_per_line(fh->cur_norm); in buffer_prepare()
532 buf->fh = fh; in buffer_prepare()
545 struct timblogiw_fh *fh = vq->priv_data; in buffer_queue() local
551 timblogiw_bytes_per_line(fh->cur_norm); in buffer_queue()
553 sg_elems = timblogiw_frame_size(fh->cur_norm) / bytes_per_desc; in buffer_queue()
555 (timblogiw_frame_size(fh->cur_norm) % bytes_per_desc) ? 1 : 0; in buffer_queue()
557 if (list_empty(&fh->capture)) in buffer_queue()
562 list_add_tail(&vb->queue, &fh->capture); in buffer_queue()
564 spin_unlock_irq(&fh->queue_lock); in buffer_queue()
566 desc = dmaengine_prep_slave_sg(fh->chan, in buffer_queue()
570 spin_lock_irq(&fh->queue_lock); in buffer_queue()
581 spin_lock_irq(&fh->queue_lock); in buffer_queue()
587 struct timblogiw_fh *fh = vq->priv_data; in buffer_release() local
593 dma_sync_wait(fh->chan, buf->cookie); in buffer_release()
612 struct timblogiw_fh *fh; in timblogiw_open() local
651 fh = kzalloc(sizeof(*fh), GFP_KERNEL); in timblogiw_open()
652 if (!fh) { in timblogiw_open()
657 fh->cur_norm = timblogiw_tvnorms; in timblogiw_open()
658 timblogiw_querystd(file, fh, &std); in timblogiw_open()
659 fh->cur_norm = timblogiw_get_norm(std); in timblogiw_open()
661 INIT_LIST_HEAD(&fh->capture); in timblogiw_open()
662 spin_lock_init(&fh->queue_lock); in timblogiw_open()
669 fh->chan = dma_request_channel(mask, timblogiw_dma_filter_fn, in timblogiw_open()
671 if (!fh->chan) { in timblogiw_open()
673 kfree(fh); in timblogiw_open()
678 file->private_data = fh; in timblogiw_open()
679 videobuf_queue_dma_contig_init(&fh->vb_vidq, in timblogiw_open()
680 &timblogiw_video_qops, lw->dev, &fh->queue_lock, in timblogiw_open()
682 sizeof(struct timblogiw_buffer), fh, NULL); in timblogiw_open()
695 struct timblogiw_fh *fh = file->private_data; in timblogiw_close() local
699 videobuf_stop(&fh->vb_vidq); in timblogiw_close()
700 videobuf_mmap_free(&fh->vb_vidq); in timblogiw_close()
702 dma_release_channel(fh->chan); in timblogiw_close()
704 kfree(fh); in timblogiw_close()
716 struct timblogiw_fh *fh = file->private_data; in timblogiw_read() local
720 return videobuf_read_stream(&fh->vb_vidq, data, count, ppos, 0, in timblogiw_read()
728 struct timblogiw_fh *fh = file->private_data; in timblogiw_poll() local
732 return videobuf_poll_stream(file, &fh->vb_vidq, wait); in timblogiw_poll()
738 struct timblogiw_fh *fh = file->private_data; in timblogiw_mmap() local
742 return videobuf_mmap_mapper(&fh->vb_vidq, vma); in timblogiw_mmap()