From: Boris Brezillon <boris.brezillon@collabora.com>
To: Ezequiel Garcia <ezequiel@collabora.com>
Cc: linux-media@vger.kernel.org,
Hans Verkuil <hans.verkuil@cisco.com>,
kernel@collabora.com, Kyungmin Park <kyungmin.park@samsung.com>,
Marek Szyprowski <m.szyprowski@samsung.com>,
Pawel Osciak <pawel@osciak.com>
Subject: Re: [PATCH 1/5] media: vb2: Introduce a vb2_get_buffer accessor
Date: Thu, 6 Jun 2019 19:39:06 +0200 [thread overview]
Message-ID: <20190606193906.02d95aa7@collabora.com> (raw)
In-Reply-To: <20190606154426.6899-2-ezequiel@collabora.com>
On Thu, 6 Jun 2019 12:44:22 -0300
Ezequiel Garcia <ezequiel@collabora.com> wrote:
> Some drivers need to access a vb2 buffer from its
> queue index. Introduce an accessor to abstract this,
> and avoid drivers from accessing private members.
>
> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
> ---
> include/media/videobuf2-core.h | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/include/media/videobuf2-core.h b/include/media/videobuf2-core.h
> index c03ef7cc5071..7b1729320b16 100644
> --- a/include/media/videobuf2-core.h
> +++ b/include/media/videobuf2-core.h
> @@ -1163,6 +1163,24 @@ static inline void vb2_clear_last_buffer_dequeued(struct vb2_queue *q)
> q->last_buffer_dequeued = false;
> }
>
> +/**
> + * vb2_get_buffer() - get a buffer from a queue
> + * @q: pointer to &struct vb2_queue with videobuf2 queue.
> + * @index: buffer index
> + *
> + * This function obtains a buffer from a queue, by its index.
> + * Keep in mind that there is no refcounting involved in this
> + * operation, so the buffer lifetime should be taken into
> + * consideration.
> + */
> +static inline struct vb2_buffer *vb2_get_buffer(struct vb2_queue *q,
> + unsigned int index)
> +{
> + if (q->num_buffers > 0 && index < q->num_buffers)
No need to check q->num_buffers > 0 because in that case
index < q->num_buffers is always false.
Looks good otherwise
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
> + return q->bufs[index];
> + return NULL;
> +}
> +
> /*
> * The following functions are not part of the vb2 core API, but are useful
> * functions for videobuf2-*.
next prev parent reply other threads:[~2019-06-06 17:39 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-06 15:44 [PATCH 0/5] media: Access videobuf2 buffers via an accessor Ezequiel Garcia
2019-06-06 15:44 ` [PATCH 1/5] media: vb2: Introduce a vb2_get_buffer accessor Ezequiel Garcia
2019-06-06 17:39 ` Boris Brezillon [this message]
2019-06-06 15:44 ` [PATCH 2/5] media: mtk-jpeg: Use vb2_get_buffer Ezequiel Garcia
2019-06-06 15:44 ` [PATCH 3/5] media: mtk-vcodec: " Ezequiel Garcia
2019-06-06 15:44 ` [PATCH 4/5] media: sti: " Ezequiel Garcia
2019-06-06 15:44 ` [PATCH 5/5] media: rockchip: " Ezequiel Garcia
2019-06-06 17:43 ` [PATCH 0/5] media: Access videobuf2 buffers via an accessor Boris Brezillon
2019-06-06 18:13 ` Ezequiel Garcia
2019-06-06 19:08 ` Boris Brezillon
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=20190606193906.02d95aa7@collabora.com \
--to=boris.brezillon@collabora.com \
--cc=ezequiel@collabora.com \
--cc=hans.verkuil@cisco.com \
--cc=kernel@collabora.com \
--cc=kyungmin.park@samsung.com \
--cc=linux-media@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=pawel@osciak.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 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.