From: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
To: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>,
David Airlie <airlied@linux.ie>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Sean Paul <seanpaul@chromium.org>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Sakari Ailus <sakari.ailus@linux.intel.com>,
Hans Verkuil <hans.verkuil@cisco.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org,
linux-media@vger.kernel.org
Subject: Re: [PATCH 06/20] lib: Add video format information library
Date: Wed, 17 Apr 2019 16:03:08 +0200 [thread overview]
Message-ID: <6b4d5c3bd1a6f58ce21bc79518e72ec00a1eed97.camel@bootlin.com> (raw)
In-Reply-To: <20190417124833.psdri6laune5y2ti@flea>
Hi,
On Wed, 2019-04-17 at 14:48 +0200, Maxime Ripard wrote:
> Hi,
>
> On Wed, Apr 17, 2019 at 02:34:54PM +0200, Paul Kocialkowski wrote:
> > > +struct image_format_info {
> > > + union {
> > > + /**
> > > + * @drm_fmt:
> > > + *
> > > + * DRM 4CC format identifier (DRM_FORMAT_*)
> > > + */
> > > + u32 drm_fmt;
> >
> > Could we call this one format_drm for consistency with the one below?
>
> The deprecated "format" field will go away at some point, so I'm not
> sure the consistency is an argument there.
Fair enough then. My point was mostly about format vs fmt, so one
option could be to use "compat_fmt" or such, but do whatever you feel
is right, I don't care too much about it.
> > > +/**
> > > + * image_format_info_min_pitch - computes the minimum required pitch in bytes
> > > + * @info: pixel format info
> > > + * @plane: plane index
> > > + * @buffer_width: buffer width in pixels
> > > + *
> > > + * Returns:
> > > + * The minimum required pitch in bytes for a buffer by taking into consideration
> > > + * the pixel format information and the buffer width.
> > > + */
> > > +static inline
> > > +uint64_t image_format_info_min_pitch(const struct image_format_info *info,
> > > + int plane, unsigned int buffer_width)
> > > +{
> > > + if (!info || plane < 0 || plane >= info->num_planes)
> > > + return 0;
> > > +
> > > + return DIV_ROUND_UP_ULL((u64)buffer_width * info->char_per_block[plane],
> > > + image_format_info_block_width(info, plane) *
> > > + image_format_info_block_height(info, plane));
> >
> > I'm not sure I understand how this works: char_per_block is 0 for
> > almost all formats and this doesn't take in account the cpp. Am I
> > missing something here?
>
> I guess it doesn't. That's the DRM function here, without any
> modification, but from a quick look at the current users of that
> function, there's nobody that uses the value directly.
>
> So you might be right there.
>
> > Also, this might be a good occasion to discuss what meaning we want to
> > give "stride" and "pitch": should one be in bytes and the other in bit,
> > etc? I keep forgetting what each API expects.
>
> pitch is documented as bytes, and the function computing the stride I
> added did too. I'll remove the stride one.
Okay, it seems that I was just confused for no particular reason and
stride, pitch, bytesperline and linesize are all just synonyms. So feel
free to pick whichever you see fit :)
Cheers,
Paul
--
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
next prev parent reply other threads:[~2019-04-17 14:03 UTC|newest]
Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-17 7:54 [PATCH 00/20] drm: Split out the formats API and move it to a common place Maxime Ripard
2019-04-17 7:54 ` [PATCH 01/20] drm: Remove users of drm_format_num_planes Maxime Ripard
2019-04-17 7:54 ` [PATCH 02/20] drm: Remove users of drm_format_(horz|vert)_chroma_subsampling Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 13:32 ` Philipp Zabel
2019-04-17 7:54 ` [PATCH 03/20] drm/fourcc: Pass the format_info pointer to drm_format_plane_cpp Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 04/20] drm/fourcc: Pass the format_info pointer to drm_format_plane_width/height Maxime Ripard
2019-04-17 10:47 ` Maarten Lankhorst
2019-04-17 11:01 ` Maxime Ripard
2019-04-17 11:10 ` Maarten Lankhorst
2019-04-17 13:12 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 05/20] drm: Replace instances of drm_format_info by drm_get_format_info Maxime Ripard
2019-04-17 7:54 ` [PATCH 06/20] lib: Add video format information library Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 12:34 ` Paul Kocialkowski
2019-04-17 12:48 ` Maxime Ripard
2019-04-17 14:03 ` Paul Kocialkowski [this message]
2019-04-23 11:22 ` Thomas Zimmermann
2019-04-23 16:56 ` Paul Kocialkowski
2019-04-23 16:56 ` Paul Kocialkowski
2019-04-17 7:54 ` [PATCH 07/20] drm/fb: Move from drm_format_info to image_format_info Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 08/20] drm/malidp: Convert to generic image format library Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 09/20] drm/client: " Maxime Ripard
2019-04-17 7:54 ` [PATCH 10/20] drm/exynos: " Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 11/20] drm/i915: " Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 12/20] drm/ipuv3: " Maxime Ripard
2019-04-17 7:54 ` [PATCH 13/20] drm/msm: " Maxime Ripard
2019-04-17 7:54 ` [PATCH 14/20] drm/omap: " Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 15/20] drm/rockchip: " Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 16/20] drm/tegra: " Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 17/20] drm/fourcc: Remove old DRM format API Maxime Ripard
2019-04-17 7:54 ` [PATCH 18/20] lib: image-formats: Add v4l2 formats support Maxime Ripard
2019-04-17 7:54 ` Maxime Ripard
2019-05-02 8:24 ` Hans Verkuil
2019-05-06 13:22 ` Maxime Ripard
2019-04-17 7:54 ` [PATCH 19/20] lib: image-formats: Add more functions Maxime Ripard
2019-04-17 12:39 ` Paul Kocialkowski
2019-04-17 12:39 ` Paul Kocialkowski
2019-04-17 12:41 ` Sakari Ailus
2019-04-17 7:54 ` [PATCH 20/20] media: sun6i: Convert to the image format API Maxime Ripard
2019-04-17 12:23 ` [PATCH 00/20] drm: Split out the formats API and move it to a common place Paul Kocialkowski
2019-04-17 12:38 ` Paul Kocialkowski
2019-04-17 15:41 ` Daniel Vetter
2019-04-17 15:41 ` Daniel Vetter
2019-04-18 6:22 ` Maxime Ripard
2019-04-18 7:52 ` Daniel Vetter
2019-04-18 9:02 ` Maxime Ripard
2019-04-18 9:02 ` Maxime Ripard
2019-04-18 10:07 ` Daniel Vetter
2019-04-18 12:01 ` Maxime Ripard
2019-04-18 12:01 ` Maxime Ripard
2019-04-18 12:32 ` Daniel Vetter
2019-04-18 12:32 ` Daniel Vetter
2019-04-18 20:56 ` Maxime Ripard
2019-04-20 23:05 ` Laurent Pinchart
2019-04-20 23:05 ` Laurent Pinchart
2019-05-02 8:25 ` Hans Verkuil
2019-05-02 8:25 ` Hans Verkuil
2019-04-20 22:59 ` Laurent Pinchart
2019-04-20 22:59 ` Laurent Pinchart
2019-04-23 7:25 ` Daniel Vetter
2019-04-23 8:59 ` Daniel Stone
2019-04-23 15:54 ` Laurent Pinchart
2019-04-23 16:02 ` Daniel Stone
2019-04-23 16:38 ` Paul Kocialkowski
2019-04-23 16:38 ` Paul Kocialkowski
2019-04-23 15:45 ` Laurent Pinchart
2019-04-23 15:45 ` Laurent Pinchart
2019-04-23 16:46 ` Paul Kocialkowski
2019-04-23 16:46 ` Paul Kocialkowski
2019-04-23 19:18 ` Daniel Vetter
2019-05-11 19:26 ` Laurent Pinchart
2019-05-11 19:26 ` Laurent Pinchart
2019-05-13 14:57 ` Daniel Vetter
2019-05-13 14:57 ` Daniel Vetter
2019-05-13 15:23 ` Mauro Carvalho Chehab
2019-04-18 11:49 ` Paul Kocialkowski
2019-04-20 22:40 ` Laurent Pinchart
2019-04-20 22:40 ` Laurent Pinchart
2019-04-23 7:30 ` Daniel Vetter
2019-04-23 7:30 ` Daniel Vetter
2019-04-23 12:33 ` Paul Kocialkowski
2019-04-23 12:33 ` Paul Kocialkowski
2019-04-23 14:28 ` Nicolas Dufresne
2019-04-23 14:55 ` Paul Kocialkowski
2019-04-23 14:55 ` Paul Kocialkowski
2019-04-23 15:09 ` Daniel Vetter
2019-04-23 17:16 ` Nicolas Dufresne
2019-04-23 19:06 ` Daniel Vetter
2019-04-23 16:54 ` Paul Kocialkowski
2019-05-11 19:19 ` Laurent Pinchart
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=6b4d5c3bd1a6f58ce21bc79518e72ec00a1eed97.camel@bootlin.com \
--to=paul.kocialkowski@bootlin.com \
--cc=airlied@linux.ie \
--cc=daniel.vetter@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=hans.verkuil@cisco.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=maxime.ripard@bootlin.com \
--cc=mchehab@kernel.org \
--cc=sakari.ailus@linux.intel.com \
--cc=seanpaul@chromium.org \
--cc=thomas.petazzoni@bootlin.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.