Lines Matching refs:f
665 static int enum_fmt(struct v4l2_fmtdesc *f, u32 type) in enum_fmt() argument
675 if (num == f->index) in enum_fmt()
688 f->pixelformat = fmt->fourcc; in enum_fmt()
697 struct v4l2_fmtdesc *f) in vidioc_enum_fmt_vid_cap() argument
699 return enum_fmt(f, MEM2MEM_CAPTURE); in vidioc_enum_fmt_vid_cap()
703 struct v4l2_fmtdesc *f) in vidioc_enum_fmt_vid_out() argument
705 return enum_fmt(f, MEM2MEM_OUTPUT); in vidioc_enum_fmt_vid_out()
729 static int vidioc_g_fmt(struct vim2m_ctx *ctx, struct v4l2_format *f) in vidioc_g_fmt() argument
734 vq = v4l2_m2m_get_vq(ctx->fh.m2m_ctx, f->type); in vidioc_g_fmt()
738 q_data = get_q_data(ctx, f->type); in vidioc_g_fmt()
742 f->fmt.pix.width = q_data->width; in vidioc_g_fmt()
743 f->fmt.pix.height = q_data->height; in vidioc_g_fmt()
744 f->fmt.pix.field = V4L2_FIELD_NONE; in vidioc_g_fmt()
745 f->fmt.pix.pixelformat = q_data->fmt->fourcc; in vidioc_g_fmt()
746 f->fmt.pix.bytesperline = (q_data->width * q_data->fmt->depth) >> 3; in vidioc_g_fmt()
747 f->fmt.pix.sizeimage = q_data->sizeimage; in vidioc_g_fmt()
748 f->fmt.pix.colorspace = ctx->colorspace; in vidioc_g_fmt()
749 f->fmt.pix.xfer_func = ctx->xfer_func; in vidioc_g_fmt()
750 f->fmt.pix.ycbcr_enc = ctx->ycbcr_enc; in vidioc_g_fmt()
751 f->fmt.pix.quantization = ctx->quant; in vidioc_g_fmt()
757 struct v4l2_format *f) in vidioc_g_fmt_vid_out() argument
759 return vidioc_g_fmt(file2ctx(file), f); in vidioc_g_fmt_vid_out()
763 struct v4l2_format *f) in vidioc_g_fmt_vid_cap() argument
765 return vidioc_g_fmt(file2ctx(file), f); in vidioc_g_fmt_vid_cap()
768 static int vidioc_try_fmt(struct v4l2_format *f, struct vim2m_fmt *fmt) in vidioc_try_fmt() argument
775 if (f->fmt.pix.height < MIN_H) in vidioc_try_fmt()
776 f->fmt.pix.height = MIN_H; in vidioc_try_fmt()
777 else if (f->fmt.pix.height > MAX_H) in vidioc_try_fmt()
778 f->fmt.pix.height = MAX_H; in vidioc_try_fmt()
780 if (f->fmt.pix.width < MIN_W) in vidioc_try_fmt()
781 f->fmt.pix.width = MIN_W; in vidioc_try_fmt()
782 else if (f->fmt.pix.width > MAX_W) in vidioc_try_fmt()
783 f->fmt.pix.width = MAX_W; in vidioc_try_fmt()
785 get_alignment(f->fmt.pix.pixelformat, &walign, &halign); in vidioc_try_fmt()
786 f->fmt.pix.width &= ~(walign - 1); in vidioc_try_fmt()
787 f->fmt.pix.height &= ~(halign - 1); in vidioc_try_fmt()
788 f->fmt.pix.bytesperline = (f->fmt.pix.width * fmt->depth) >> 3; in vidioc_try_fmt()
789 f->fmt.pix.sizeimage = f->fmt.pix.height * f->fmt.pix.bytesperline; in vidioc_try_fmt()
790 f->fmt.pix.field = V4L2_FIELD_NONE; in vidioc_try_fmt()
796 struct v4l2_format *f) in vidioc_try_fmt_vid_cap() argument
801 fmt = find_format(f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_cap()
803 f->fmt.pix.pixelformat = formats[0].fourcc; in vidioc_try_fmt_vid_cap()
804 fmt = find_format(f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_cap()
809 f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_cap()
812 f->fmt.pix.colorspace = ctx->colorspace; in vidioc_try_fmt_vid_cap()
813 f->fmt.pix.xfer_func = ctx->xfer_func; in vidioc_try_fmt_vid_cap()
814 f->fmt.pix.ycbcr_enc = ctx->ycbcr_enc; in vidioc_try_fmt_vid_cap()
815 f->fmt.pix.quantization = ctx->quant; in vidioc_try_fmt_vid_cap()
817 return vidioc_try_fmt(f, fmt); in vidioc_try_fmt_vid_cap()
821 struct v4l2_format *f) in vidioc_try_fmt_vid_out() argument
826 fmt = find_format(f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_out()
828 f->fmt.pix.pixelformat = formats[0].fourcc; in vidioc_try_fmt_vid_out()
829 fmt = find_format(f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_out()
834 f->fmt.pix.pixelformat); in vidioc_try_fmt_vid_out()
837 if (!f->fmt.pix.colorspace) in vidioc_try_fmt_vid_out()
838 f->fmt.pix.colorspace = V4L2_COLORSPACE_REC709; in vidioc_try_fmt_vid_out()
840 return vidioc_try_fmt(f, fmt); in vidioc_try_fmt_vid_out()
843 static int vidioc_s_fmt(struct vim2m_ctx *ctx, struct v4l2_format *f) in vidioc_s_fmt() argument
848 vq = v4l2_m2m_get_vq(ctx->fh.m2m_ctx, f->type); in vidioc_s_fmt()
852 q_data = get_q_data(ctx, f->type); in vidioc_s_fmt()
861 q_data->fmt = find_format(f->fmt.pix.pixelformat); in vidioc_s_fmt()
862 q_data->width = f->fmt.pix.width; in vidioc_s_fmt()
863 q_data->height = f->fmt.pix.height; in vidioc_s_fmt()
869 type_name(f->type), q_data->width, q_data->height, in vidioc_s_fmt()
880 struct v4l2_format *f) in vidioc_s_fmt_vid_cap() argument
884 ret = vidioc_try_fmt_vid_cap(file, priv, f); in vidioc_s_fmt_vid_cap()
888 return vidioc_s_fmt(file2ctx(file), f); in vidioc_s_fmt_vid_cap()
892 struct v4l2_format *f) in vidioc_s_fmt_vid_out() argument
897 ret = vidioc_try_fmt_vid_out(file, priv, f); in vidioc_s_fmt_vid_out()
901 ret = vidioc_s_fmt(file2ctx(file), f); in vidioc_s_fmt_vid_out()
903 ctx->colorspace = f->fmt.pix.colorspace; in vidioc_s_fmt_vid_out()
904 ctx->xfer_func = f->fmt.pix.xfer_func; in vidioc_s_fmt_vid_out()
905 ctx->ycbcr_enc = f->fmt.pix.ycbcr_enc; in vidioc_s_fmt_vid_out()
906 ctx->quant = f->fmt.pix.quantization; in vidioc_s_fmt_vid_out()