From: Todor Tomov <todor.tomov@linaro.org>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Hans Verkuil <hverkuil@xs4all.nl>
Cc: mchehab@kernel.org, laurent.pinchart+renesas@ideasonboard.com,
hans.verkuil@cisco.com, javier@osg.samsung.com,
s.nawrocki@samsung.com, linux-media@vger.kernel.org,
linux-kernel@vger.kernel.org, bjorn.andersson@linaro.org,
srinivas.kandagatla@linaro.org
Subject: Re: [PATCH 08/10] media: camss: Add files which handle the video device nodes
Date: Tue, 10 Jan 2017 13:32:21 +0200 [thread overview]
Message-ID: <5874C645.8000102@linaro.org> (raw)
In-Reply-To: <1774027.HEDcIz8E3N@avalon>
Hi Laurent, Hans,
On 12/05/2016 05:25 PM, Laurent Pinchart wrote:
> Hi Hans,
>
> On Monday 05 Dec 2016 16:02:55 Hans Verkuil wrote:
>> On 12/05/2016 03:45 PM, Laurent Pinchart wrote:
>>> On Monday 05 Dec 2016 14:44:55 Hans Verkuil wrote:
>>>> On 11/25/2016 03:57 PM, Todor Tomov wrote:
>>>>> These files handle the video device nodes of the camss driver.
>>>>>
>>>>> Signed-off-by: Todor Tomov <todor.tomov@linaro.org>
>>>>> ---
>>>>>
>>>>> drivers/media/platform/qcom/camss-8x16/video.c | 597 +++++++++++++++++
>>>>> drivers/media/platform/qcom/camss-8x16/video.h | 67 +++
>>>>> 2 files changed, 664 insertions(+)
>>>>> create mode 100644 drivers/media/platform/qcom/camss-8x16/video.c
>>>>> create mode 100644 drivers/media/platform/qcom/camss-8x16/video.h
>>>
>>> [snip]
>>>
>>>>> +int msm_video_register(struct camss_video *video, struct v4l2_device
>>>>> *v4l2_dev,
>>>>> + const char *name)
>>>>> +{
>>>>> + struct media_pad *pad = &video->pad;
>>>>> + struct video_device *vdev;
>>>>> + struct vb2_queue *q;
>>>>> + int ret;
>>>>> +
>>>>> + vdev = video_device_alloc();
>>>>> + if (vdev == NULL) {
>>>>> + dev_err(v4l2_dev->dev, "Failed to allocate video
>>>>> device\n");
>>>>> + return -ENOMEM;
>>>>> + }
>>>>> +
>>>>> + video->vdev = vdev;
>>>>> +
>>>>> + q = &video->vb2_q;
>>>>> + q->drv_priv = video;
>>>>> + q->mem_ops = &vb2_dma_contig_memops;
>>>>> + q->ops = &msm_video_vb2_q_ops;
>>>>> + q->type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
>>>>> + q->io_modes = VB2_MMAP;
>>>>
>>>> Add modes VB2_DMABUF and VB2_READ. These are for free, so why not?
>>>> Especially DMABUF is of course very desirable to have.
>>>
>>> I certainly agree with VB2_DMABUF, but I wouldn't expose VB2_READ. read()
>>> for this kind of device is inefficient and we should encourage userspace
>>> application to move away from it (and certainly make it very clear that
>>> new applications should not use read() with this device).
>>
>> VB2_READ is very nice when debugging (no need to program a stream I/O
>> application first)
>
> There's at least v4l2-ctl and yavta that can (and should) be used for
> debugging ;-)
>
>> and useful when you want to pipe the video.
>
> Except that you lose frame boundaries. It's really a poor man's solution that
> should never be used in any "real" application. I'd rather add an option to
> v4l2-ctl to output the video stream to stdout (and/or stderr).
>
>> Nobody uses read() in 'regular' applications since it is obviously
>> inefficient, but I don't see that as a reason not to offer VB2_READ.
>>
>> I don't think this is something anyone will ever abuse,
>
> Famous last words ;-)
>
>> and it is a nice feature to have (and for free as well).
>
Thank you for the discussion over this. Both of you have reasonable arguments
about the read i/o.
I'd say that you cannot always save a person from himself. I'll add VB2_READ.
--
Best regards,
Todor Tomov
next prev parent reply other threads:[~2017-01-10 11:32 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-25 14:57 [PATCH 02/10] MAINTAINERS: Add Qualcomm Camera subsystem driver Todor Tomov
2016-11-25 14:57 ` [PATCH 03/10] doc: media/v4l-drivers: Add Qualcomm Camera Subsystem driver document Todor Tomov
2016-11-25 14:57 ` [PATCH 04/10] media: camss: Add CSIPHY files Todor Tomov
2016-11-25 14:57 ` [PATCH 05/10] media: camss: Add CSID files Todor Tomov
2016-11-25 14:57 ` [PATCH 06/10] media: camss: Add ISPIF files Todor Tomov
2016-11-25 14:57 ` [PATCH 07/10] media: camss: Add VFE files Todor Tomov
2016-11-25 14:57 ` [PATCH 08/10] media: camss: Add files which handle the video device nodes Todor Tomov
2016-12-05 13:44 ` Hans Verkuil
2016-12-05 14:42 ` Laurent Pinchart
2016-12-05 14:45 ` Laurent Pinchart
2016-12-05 15:02 ` Hans Verkuil
2016-12-05 15:25 ` Laurent Pinchart
2017-01-10 11:32 ` Todor Tomov [this message]
2017-01-10 11:24 ` Todor Tomov
2016-12-05 15:22 ` Laurent Pinchart
2017-01-19 10:43 ` Todor Tomov
2017-05-18 10:39 ` Todor Tomov
2016-11-25 14:57 ` [PATCH 09/10] media: camms: Add core files Todor Tomov
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=5874C645.8000102@linaro.org \
--to=todor.tomov@linaro.org \
--cc=bjorn.andersson@linaro.org \
--cc=hans.verkuil@cisco.com \
--cc=hverkuil@xs4all.nl \
--cc=javier@osg.samsung.com \
--cc=laurent.pinchart+renesas@ideasonboard.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=s.nawrocki@samsung.com \
--cc=srinivas.kandagatla@linaro.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.