linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Michael Jones <michael.jones@matrix-vision.de>
Cc: linux-media@vger.kernel.org,
	Sakari Ailus <sakari.ailus@maxwell.research.nokia.com>
Subject: Re: [RFC] omap3-isp G_FMT & ENUM_FMT
Date: Thu, 26 Jul 2012 16:05:23 +0200	[thread overview]
Message-ID: <4048543.KhXI4ynbrF@avalon> (raw)
In-Reply-To: <1343303996-16025-1-git-send-email-michael.jones@matrix-vision.de>

Hi Michael,

On Thursday 26 July 2012 13:59:54 Michael Jones wrote:
> Hello,
> 
> I would like to (re)submit a couple of patches to support V4L2 behavior at
> the V4L2 device nodes of the omap3-isp driver, but I'm guessing they require
> some discussion first.

Indeed.

The main reason why the OMAP3 ISP driver implements G_FMT/S_FMT as it does 
today is to hack around a restriction in the V4L2 API. We needed a way to 
preallocate and possibly prequeue buffers for snapshot, which wasn't possible 
in a standard-compliant way back then.

The situation has since changed, and we now have the VIDIOC_CREATE_BUFS and 
VIDIOC_PREPARE_BUF ioctls. My plan is to

- port the OMAP3 ISP driver to videobuf2
- implement support for CREATE_BUFS and PREPARE_BUF
- fix the G_FMT/S_FMT/ENUM_FMT behaviour

The real problem will be to find time to implement this.

> I've previously submitted one of them here [1] to support ENUM_FMT for the
> omap3-isp. This sparked some discussion, the result of which was that my
> patch probably made sense. Later [2], Laurent mentioned that there was some
> discussion/decision about adding "profiles" to the V4L2 specification, and
> the OMAP3 ISP would probably implement the "streaming" profile. That was 7
> months ago and I haven't seen any discussion of such profiles. Can somebody
> bring me up to speed on this?
> 
> The purpose of these two patches is for the V4L2 device nodes to support
> mandatory V4L2 ioctls G_FMT and ENUM_FMT, such that a pure V4L2 application,
> ignorant of the media controller, can still stream the images from the video
> nodes. This presumes that the media controller would have been
> pre-configured. This approach is often seen on the mailing list using
> 'media-ctl' to configure the ISP, then 'yavta' to retrieve images. Currently
> this works because yavta doesn't require ENUM_FMT (unlike Gstreamer), and
> only as long as one sets the same format with yavta as had already been set
> with media-ctl. I think yavta should be able to just do G_FMT to see what is
> configured.
> 
> To be clear (as discussed in [1]), ENUM_FMT does not behave according to its
> original intent, because it cannot enumerate possible formats the ISP can
> deliver. It will enumerate only one format: the one configured with the
> media controller. In a sense this complies with the specification, because
> S_FMT wouldn't be able to change the format to anything else.
> 
> I have tested these patches on v3.4, but I have rebased them to v3.5 here.
> I would remove the pr_debug() calls before submitting upstream, but they're
> useful for testing.
> 
> [1] http://www.mail-archive.com/linux-media@vger.kernel.org/msg29640.html
> [2] http://www.mail-archive.com/linux-media@vger.kernel.org/msg40618.html
> 
> Michael Jones (2):
>   [media] omap3isp: implement ENUM_FMT
>   [media] omap3isp: support G_FMT
> 
>  drivers/media/video/omap3isp/ispvideo.c |   50 ++++++++++++++++++++++++++++
>  1 files changed, 50 insertions(+), 0 deletions(-)

-- 
Regards,

Laurent Pinchart


  parent reply	other threads:[~2012-07-26 14:05 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-26 11:59 [RFC] omap3-isp G_FMT & ENUM_FMT Michael Jones
2012-07-26 11:59 ` [PATCH 1/2] [media] omap3isp: implement ENUM_FMT Michael Jones
2012-07-26 11:59 ` [PATCH 2/2] [media] omap3isp: support G_FMT Michael Jones
2012-07-26 12:10 ` [RFC] omap3-isp G_FMT & ENUM_FMT Hans Verkuil
2012-07-26 14:05 ` Laurent Pinchart [this message]
2012-07-26 14:22   ` Michael Jones
2012-07-26 23:32     ` Laurent Pinchart
2012-07-27  9:07       ` Michael Jones
2012-07-27  9:35         ` Laurent Pinchart
2012-07-27 11:31           ` Michael Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4048543.KhXI4ynbrF@avalon \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=michael.jones@matrix-vision.de \
    --cc=sakari.ailus@maxwell.research.nokia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).