[igt-dev] [PATCH i-g-t 1/2] lib/igt_fb: Use cairo conversion in igt_fb_convert_with_stride, v3.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Fri Apr 5 15:38:32 UTC 2019


Op 05-04-2019 om 15:54 schreef Paul Kocialkowski:
> Hi,
>
> Le vendredi 05 avril 2019 à 14:52 +0200, Maarten Lankhorst a écrit :
>> Ever since commit 3fa65f4b532bd9a5b ("fb: Add support for conversions
>> through pixman") we can generate a valid cairo surface for any plane,
>> use this to avoid having to implement our own conversion routine.
>>
>> Instead of duplicating this functionality in igt_fb_convert_with_stride,
>> we can simply convert this to a few cairo calls, because we now support
>> cairo calls to any of the supported framebuffer formats.
> I don't think this is the case: cairo *only* takes linear buffers, so
> we need the explicit tiling conversion step after having converted to a
> new format with fb_convert. I don't see how it could work otherwise.
>
> Note that in igt, we're only interested in converting from linear to
> tiled, not the other way round (for now, at least), so that's the
> pipeline that the helper asssumes.

Hey,

We have code to handle this exact conversion in i-g-t already, both ways, see igt_get_cairo_surface(). :)

You should be able to extend create_cairo_surface__convert() to handle broadcom tiling as well,

I didn't see a function to convert from tiled to untiled, else I would have plugged it in for you.

~Maarten



More information about the igt-dev mailing list