Lines Matching refs:f

126 static struct vim2m_fmt *find_format(struct v4l2_format *f)  in find_format()  argument
133 if (fmt->fourcc == f->fmt.pix.pixelformat) in find_format()
440 static int enum_fmt(struct v4l2_fmtdesc *f, u32 type) in enum_fmt() argument
450 if (num == f->index) in enum_fmt()
461 strncpy(f->description, fmt->name, sizeof(f->description) - 1); in enum_fmt()
462 f->pixelformat = fmt->fourcc; in enum_fmt()
471 struct v4l2_fmtdesc *f) in vidioc_enum_fmt_vid_cap() argument
473 return enum_fmt(f, MEM2MEM_CAPTURE); in vidioc_enum_fmt_vid_cap()
477 struct v4l2_fmtdesc *f) in vidioc_enum_fmt_vid_out() argument
479 return enum_fmt(f, MEM2MEM_OUTPUT); in vidioc_enum_fmt_vid_out()
482 static int vidioc_g_fmt(struct vim2m_ctx *ctx, struct v4l2_format *f) in vidioc_g_fmt() argument
487 vq = v4l2_m2m_get_vq(ctx->fh.m2m_ctx, f->type); in vidioc_g_fmt()
491 q_data = get_q_data(ctx, f->type); in vidioc_g_fmt()
493 f->fmt.pix.width = q_data->width; in vidioc_g_fmt()
494 f->fmt.pix.height = q_data->height; in vidioc_g_fmt()
495 f->fmt.pix.field = V4L2_FIELD_NONE; in vidioc_g_fmt()
496 f->fmt.pix.pixelformat = q_data->fmt->fourcc; in vidioc_g_fmt()
497 f->fmt.pix.bytesperline = (q_data->width * q_data->fmt->depth) >> 3; in vidioc_g_fmt()
498 f->fmt.pix.sizeimage = q_data->sizeimage; in vidioc_g_fmt()
499 f->fmt.pix.colorspace = ctx->colorspace; in vidioc_g_fmt()
505 struct v4l2_format *f) in vidioc_g_fmt_vid_out() argument
507 return vidioc_g_fmt(file2ctx(file), f); in vidioc_g_fmt_vid_out()
511 struct v4l2_format *f) in vidioc_g_fmt_vid_cap() argument
513 return vidioc_g_fmt(file2ctx(file), f); in vidioc_g_fmt_vid_cap()
516 static int vidioc_try_fmt(struct v4l2_format *f, struct vim2m_fmt *fmt) in vidioc_try_fmt() argument
520 if (f->fmt.pix.height < MIN_H) in vidioc_try_fmt()
521 f->fmt.pix.height = MIN_H; in vidioc_try_fmt()
522 else if (f->fmt.pix.height > MAX_H) in vidioc_try_fmt()
523 f->fmt.pix.height = MAX_H; in vidioc_try_fmt()
525 if (f->fmt.pix.width < MIN_W) in vidioc_try_fmt()
526 f->fmt.pix.width = MIN_W; in vidioc_try_fmt()
527 else if (f->fmt.pix.width > MAX_W) in vidioc_try_fmt()
528 f->fmt.pix.width = MAX_W; in vidioc_try_fmt()
530 f->fmt.pix.width &= ~DIM_ALIGN_MASK; in vidioc_try_fmt()
531 f->fmt.pix.bytesperline = (f->fmt.pix.width * fmt->depth) >> 3; in vidioc_try_fmt()
532 f->fmt.pix.sizeimage = f->fmt.pix.height * f->fmt.pix.bytesperline; in vidioc_try_fmt()
533 f->fmt.pix.field = V4L2_FIELD_NONE; in vidioc_try_fmt()
539 struct v4l2_format *f) in vidioc_try_fmt_vid_cap() argument
544 fmt = find_format(f); in vidioc_try_fmt_vid_cap()
546 f->fmt.pix.pixelformat = formats[0].fourcc; in vidioc_try_fmt_vid_cap()
547 fmt = find_format(f); in vidioc_try_fmt_vid_cap()
552 f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_cap()
555 f->fmt.pix.colorspace = ctx->colorspace; in vidioc_try_fmt_vid_cap()
557 return vidioc_try_fmt(f, fmt); in vidioc_try_fmt_vid_cap()
561 struct v4l2_format *f) in vidioc_try_fmt_vid_out() argument
566 fmt = find_format(f); in vidioc_try_fmt_vid_out()
568 f->fmt.pix.pixelformat = formats[0].fourcc; in vidioc_try_fmt_vid_out()
569 fmt = find_format(f); in vidioc_try_fmt_vid_out()
574 f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_out()
577 if (!f->fmt.pix.colorspace) in vidioc_try_fmt_vid_out()
578 f->fmt.pix.colorspace = V4L2_COLORSPACE_REC709; in vidioc_try_fmt_vid_out()
580 return vidioc_try_fmt(f, fmt); in vidioc_try_fmt_vid_out()
583 static int vidioc_s_fmt(struct vim2m_ctx *ctx, struct v4l2_format *f) in vidioc_s_fmt() argument
588 vq = v4l2_m2m_get_vq(ctx->fh.m2m_ctx, f->type); in vidioc_s_fmt()
592 q_data = get_q_data(ctx, f->type); in vidioc_s_fmt()
601 q_data->fmt = find_format(f); in vidioc_s_fmt()
602 q_data->width = f->fmt.pix.width; in vidioc_s_fmt()
603 q_data->height = f->fmt.pix.height; in vidioc_s_fmt()
609 f->type, q_data->width, q_data->height, q_data->fmt->fourcc); in vidioc_s_fmt()
615 struct v4l2_format *f) in vidioc_s_fmt_vid_cap() argument
619 ret = vidioc_try_fmt_vid_cap(file, priv, f); in vidioc_s_fmt_vid_cap()
623 return vidioc_s_fmt(file2ctx(file), f); in vidioc_s_fmt_vid_cap()
627 struct v4l2_format *f) in vidioc_s_fmt_vid_out() argument
632 ret = vidioc_try_fmt_vid_out(file, priv, f); in vidioc_s_fmt_vid_out()
636 ret = vidioc_s_fmt(file2ctx(file), f); in vidioc_s_fmt_vid_out()
638 ctx->colorspace = f->fmt.pix.colorspace; in vidioc_s_fmt_vid_out()