[igt-dev] [PATCH i-g-t v2 05/13] igt: fb: Move size computation to the common path
Maxime Ripard
maxime.ripard at bootlin.com
Mon Jan 21 13:02:49 UTC 2019
Hi,
On Thu, Jan 10, 2019 at 11:43:41AM +0100, Paul Kocialkowski wrote:
> On Tue, 2019-01-08 at 16:19 +0100, Maxime Ripard wrote:
> > In order to properly support the YUV buffer on non-i915 platforms, we need
> > to run calc_fb_size for the dumb buffers allocation path too. Move it out
> > of the special case and in the common code path.
>
> Actually, I have one minor comment below.
>
> > Signed-off-by: Maxime Ripard <maxime.ripard at bootlin.com>
> > ---
> > lib/igt_fb.c | 12 +++++-------
> > 1 file changed, 5 insertions(+), 7 deletions(-)
> >
> > diff --git a/lib/igt_fb.c b/lib/igt_fb.c
> > index d69c3fb2d38d..31e44d6188d9 100644
> > --- a/lib/igt_fb.c
> > +++ b/lib/igt_fb.c
> > @@ -528,16 +528,14 @@ static void clear_yuv_buffer(struct igt_fb *fb)
> > /* helpers to create nice-looking framebuffers */
> > static int create_bo_for_fb(struct igt_fb *fb)
> > {
> > + uint64_t size = calc_fb_size(fb);
> > int fd = fb->fd;
> >
> > + /* respect the size requested by the caller */
> > + if (fb->size == 0)
> > + fb->size = size;
> > +
> > if (fb->tiling || fb->size || fb->strides[0] || igt_format_is_yuv(fb->drm_format)) {
>
> Calling calc_fb_size when the function begins will automatically set
> the strides if it was previously 0, so we can drop the "|| fb-
> >strides[0]" here (will never happen).
Good call, thanks!
> Generally speaking, I think it would be much more simple to always go
> with i915 gem create instead of dumb alloc as soon as i915 is detected
> and drop all these conditions.
>
> I can't see why dumb buffer would be preferable, but I might be missing
> something here (i915 developers, feel free to point it out if that's
> the case)!
I don't have a lot of insights on the i915 hardware, but usually those
kind of pattern come from having two different pools, with one being
more constrained than the other.
Maxime
--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/igt-dev/attachments/20190121/94f70721/attachment.sig>
More information about the igt-dev
mailing list