Lines Matching refs:skel

132 	struct skeleton *skel = dev_id;  in skeleton_irq()  local
139 spin_lock(&skel->qlock); in skeleton_irq()
141 spin_unlock(&skel->qlock); in skeleton_irq()
143 new_buf->vb.v4l2_buf.sequence = skel->sequence++; in skeleton_irq()
144 new_buf->vb.v4l2_buf.field = skel->field; in skeleton_irq()
145 if (skel->format.field == V4L2_FIELD_ALTERNATE) { in skeleton_irq()
146 if (skel->field == V4L2_FIELD_BOTTOM) in skeleton_irq()
147 skel->field = V4L2_FIELD_TOP; in skeleton_irq()
148 else if (skel->field == V4L2_FIELD_TOP) in skeleton_irq()
149 skel->field = V4L2_FIELD_BOTTOM; in skeleton_irq()
168 struct skeleton *skel = vb2_get_drv_priv(vq); in queue_setup() local
170 skel->field = skel->format.field; in queue_setup()
171 if (skel->field == V4L2_FIELD_ALTERNATE) { in queue_setup()
178 skel->field = V4L2_FIELD_TOP; in queue_setup()
185 return sizes[0] < skel->format.sizeimage ? -EINVAL : 0; in queue_setup()
187 sizes[0] = skel->format.sizeimage; in queue_setup()
197 struct skeleton *skel = vb2_get_drv_priv(vb->vb2_queue); in buffer_prepare() local
198 unsigned long size = skel->format.sizeimage; in buffer_prepare()
201 dev_err(&skel->pdev->dev, "buffer too small (%lu < %lu)\n", in buffer_prepare()
215 struct skeleton *skel = vb2_get_drv_priv(vb->vb2_queue); in buffer_queue() local
219 spin_lock_irqsave(&skel->qlock, flags); in buffer_queue()
220 list_add_tail(&buf->list, &skel->buf_list); in buffer_queue()
224 spin_unlock_irqrestore(&skel->qlock, flags); in buffer_queue()
227 static void return_all_buffers(struct skeleton *skel, in return_all_buffers() argument
233 spin_lock_irqsave(&skel->qlock, flags); in return_all_buffers()
234 list_for_each_entry_safe(buf, node, &skel->buf_list, list) { in return_all_buffers()
238 spin_unlock_irqrestore(&skel->qlock, flags); in return_all_buffers()
249 struct skeleton *skel = vb2_get_drv_priv(vq); in start_streaming() local
252 skel->sequence = 0; in start_streaming()
261 return_all_buffers(skel, VB2_BUF_STATE_QUEUED); in start_streaming()
272 struct skeleton *skel = vb2_get_drv_priv(vq); in stop_streaming() local
277 return_all_buffers(skel, VB2_BUF_STATE_ERROR); in stop_streaming()
302 struct skeleton *skel = video_drvdata(file); in skeleton_querycap() local
307 pci_name(skel->pdev)); in skeleton_querycap()
317 static void skeleton_fill_pix_format(struct skeleton *skel, in skeleton_fill_pix_format() argument
321 if (skel->input == 0) { in skeleton_fill_pix_format()
324 pix->height = (skel->std & V4L2_STD_525_60) ? 480 : 576; in skeleton_fill_pix_format()
329 pix->width = skel->timings.bt.width; in skeleton_fill_pix_format()
330 pix->height = skel->timings.bt.height; in skeleton_fill_pix_format()
331 if (skel->timings.bt.interlaced) { in skeleton_fill_pix_format()
352 struct skeleton *skel = video_drvdata(file); in skeleton_try_fmt_vid_cap() local
363 skeleton_fill_pix_format(skel, pix); in skeleton_try_fmt_vid_cap()
370 struct skeleton *skel = video_drvdata(file); in skeleton_s_fmt_vid_cap() local
381 if (vb2_is_busy(&skel->queue)) in skeleton_s_fmt_vid_cap()
385 skel->format = f->fmt.pix; in skeleton_s_fmt_vid_cap()
392 struct skeleton *skel = video_drvdata(file); in skeleton_g_fmt_vid_cap() local
394 f->fmt.pix = skel->format; in skeleton_g_fmt_vid_cap()
410 struct skeleton *skel = video_drvdata(file); in skeleton_s_std() local
413 if (skel->input) in skeleton_s_std()
421 if (std == skel->std) in skeleton_s_std()
428 if (vb2_is_busy(&skel->queue)) in skeleton_s_std()
433 skel->std = std; in skeleton_s_std()
436 skeleton_fill_pix_format(skel, &skel->format); in skeleton_s_std()
442 struct skeleton *skel = video_drvdata(file); in skeleton_g_std() local
445 if (skel->input) in skeleton_g_std()
448 *std = skel->std; in skeleton_g_std()
461 struct skeleton *skel = video_drvdata(file); in skeleton_querystd() local
464 if (skel->input) in skeleton_querystd()
489 struct skeleton *skel = video_drvdata(file); in skeleton_s_dv_timings() local
492 if (skel->input == 0) in skeleton_s_dv_timings()
505 if (v4l2_match_dv_timings(timings, &skel->timings, 0, false)) in skeleton_s_dv_timings()
512 if (vb2_is_busy(&skel->queue)) in skeleton_s_dv_timings()
518 skel->timings = *timings; in skeleton_s_dv_timings()
521 skeleton_fill_pix_format(skel, &skel->format); in skeleton_s_dv_timings()
528 struct skeleton *skel = video_drvdata(file); in skeleton_g_dv_timings() local
531 if (skel->input == 0) in skeleton_g_dv_timings()
534 *timings = skel->timings; in skeleton_g_dv_timings()
541 struct skeleton *skel = video_drvdata(file); in skeleton_enum_dv_timings() local
544 if (skel->input == 0) in skeleton_enum_dv_timings()
563 struct skeleton *skel = video_drvdata(file); in skeleton_query_dv_timings() local
566 if (skel->input == 0) in skeleton_query_dv_timings()
583 v4l2_print_dv_timings(skel->v4l2_dev.name, "query_dv_timings:", in skeleton_query_dv_timings()
592 struct skeleton *skel = video_drvdata(file); in skeleton_dv_timings_cap() local
595 if (skel->input == 0) in skeleton_dv_timings_cap()
622 struct skeleton *skel = video_drvdata(file); in skeleton_s_input() local
631 if (vb2_is_busy(&skel->queue)) in skeleton_s_input()
634 skel->input = i; in skeleton_s_input()
640 skel->vdev.tvnorms = i ? 0 : SKEL_TVNORMS; in skeleton_s_input()
643 skeleton_fill_pix_format(skel, &skel->format); in skeleton_s_input()
649 struct skeleton *skel = video_drvdata(file); in skeleton_g_input() local
651 *i = skel->input; in skeleton_g_input()
757 struct skeleton *skel; in skeleton_probe() local
774 skel = devm_kzalloc(&pdev->dev, sizeof(struct skeleton), GFP_KERNEL); in skeleton_probe()
775 if (!skel) { in skeleton_probe()
782 skeleton_irq, 0, KBUILD_MODNAME, skel); in skeleton_probe()
787 skel->pdev = pdev; in skeleton_probe()
790 skel->timings = timings_def; in skeleton_probe()
791 skel->std = V4L2_STD_625_50; in skeleton_probe()
792 skeleton_fill_pix_format(skel, &skel->format); in skeleton_probe()
795 ret = v4l2_device_register(&pdev->dev, &skel->v4l2_dev); in skeleton_probe()
799 mutex_init(&skel->lock); in skeleton_probe()
802 hdl = &skel->ctrl_handler; in skeleton_probe()
816 skel->v4l2_dev.ctrl_handler = hdl; in skeleton_probe()
819 q = &skel->queue; in skeleton_probe()
823 q->drv_priv = skel; in skeleton_probe()
843 q->lock = &skel->lock; in skeleton_probe()
853 INIT_LIST_HEAD(&skel->buf_list); in skeleton_probe()
854 spin_lock_init(&skel->qlock); in skeleton_probe()
857 vdev = &skel->vdev; in skeleton_probe()
873 vdev->lock = &skel->lock; in skeleton_probe()
875 vdev->v4l2_dev = &skel->v4l2_dev; in skeleton_probe()
878 video_set_drvdata(vdev, skel); in skeleton_probe()
888 v4l2_ctrl_handler_free(&skel->ctrl_handler); in skeleton_probe()
889 v4l2_device_unregister(&skel->v4l2_dev); in skeleton_probe()
898 struct skeleton *skel = container_of(v4l2_dev, struct skeleton, v4l2_dev); in skeleton_remove() local
900 video_unregister_device(&skel->vdev); in skeleton_remove()
901 v4l2_ctrl_handler_free(&skel->ctrl_handler); in skeleton_remove()
902 v4l2_device_unregister(&skel->v4l2_dev); in skeleton_remove()
903 pci_disable_device(skel->pdev); in skeleton_remove()