Lines Matching full:timings
8 * which is handled by the "timings" callbacks and an IRQ based watcher, that
21 #include <linux/v4l2-dv-timings.h>
25 #include <media/v4l2-dv-timings.h>
80 /* Dummy timings when no signal present */
139 struct v4l2_dv_timings *timings) in get_timings() argument
155 memset(timings, 0, sizeof(*timings)); in get_timings()
156 timings->type = V4L2_DV_BT_656_1120; in get_timings()
157 timings->bt.width = resolution >> 16; in get_timings()
158 timings->bt.height = resolution & 0xFFFF; in get_timings()
160 timings->bt.polarities |= V4L2_DV_HSYNC_POS_POL; in get_timings()
162 timings->bt.polarities |= V4L2_DV_VSYNC_POS_POL; in get_timings()
163 timings->bt.pixelclock = pclk * 1000; in get_timings()
164 timings->bt.hsync = (hsync & 0x00FF0000) >> 16; in get_timings()
165 timings->bt.vsync = (vsync & 0x00FF0000) >> 16; in get_timings()
166 timings->bt.hbackporch = (hsync & 0x0000FF00) >> 8; in get_timings()
167 timings->bt.hfrontporch = hsync & 0x000000FF; in get_timings()
168 timings->bt.vbackporch = (vsync & 0x0000FF00) >> 8; in get_timings()
169 timings->bt.vfrontporch = vsync & 0x000000FF; in get_timings()
196 unsigned int size = (vindev->timings.bt.width + vindev->padding) in queue_setup()
197 * vindev->timings.bt.height * pixelsize; in queue_setup()
234 unsigned int size = (vindev->timings.bt.width + vindev->padding) in buffer_prepare()
235 * vindev->timings.bt.height * pixelsize; in buffer_prepare()
331 if (get_timings(vindev, &vindev->timings) < 0) in fh_open()
332 vindev->timings = cea1080p60; in fh_open()
386 if (ival->width != vindev->timings.bt.width || in vidioc_enum_frameintervals()
387 ival->height != vindev->timings.bt.height) in vidioc_enum_frameintervals()
393 ival->stepwise.min.denominator = vindev->timings.bt.pixelclock; in vidioc_enum_frameintervals()
394 ival->stepwise.min.numerator = pixel_size(&vindev->timings); in vidioc_enum_frameintervals()
407 f->fmt.pix.width = vindev->timings.bt.width; in vidioc_g_fmt()
408 f->fmt.pix.height = vindev->timings.bt.height; in vidioc_g_fmt()
438 f->fmt.pix.width = vindev->timings.bt.width; in vidioc_try_fmt()
439 f->fmt.pix.height = vindev->timings.bt.height; in vidioc_try_fmt()
535 fsize->discrete.width = vindev->timings.bt.width; in vidioc_enum_framesizes()
536 fsize->discrete.height = vindev->timings.bt.height; in vidioc_enum_framesizes()
566 tpf->numerator = pixel_size(&vindev->timings); in vidioc_g_parm()
567 tpf->denominator = vindev->timings.bt.pixelclock; in vidioc_g_parm()
591 period = MGB4_PERIOD(pixel_size(&vindev->timings), in vidioc_s_parm()
592 vindev->timings.bt.pixelclock); in vidioc_s_parm()
604 struct v4l2_dv_timings *timings) in vidioc_s_dv_timings() argument
608 if (timings->bt.width < video_timings_cap.bt.min_width || in vidioc_s_dv_timings()
609 timings->bt.width > video_timings_cap.bt.max_width || in vidioc_s_dv_timings()
610 timings->bt.height < video_timings_cap.bt.min_height || in vidioc_s_dv_timings()
611 timings->bt.height > video_timings_cap.bt.max_height) in vidioc_s_dv_timings()
613 if (timings->bt.width == vindev->timings.bt.width && in vidioc_s_dv_timings()
614 timings->bt.height == vindev->timings.bt.height) in vidioc_s_dv_timings()
619 vindev->timings = *timings; in vidioc_s_dv_timings()
625 struct v4l2_dv_timings *timings) in vidioc_g_dv_timings() argument
628 *timings = vindev->timings; in vidioc_g_dv_timings()
634 struct v4l2_dv_timings *timings) in vidioc_query_dv_timings() argument
638 return get_timings(vindev, timings); in vidioc_query_dv_timings()
642 struct v4l2_enum_dv_timings *timings) in vidioc_enum_dv_timings() argument
644 return v4l2_enum_dv_timings_cap(timings, &video_timings_cap, NULL, NULL); in vidioc_enum_dv_timings()
745 struct v4l2_bt_timings *timings = &vindev->timings.bt; in signal_change() local
752 if (timings->width != width || timings->height != height) { in signal_change()