[Mesa-dev] [PATCH 2/2] st/mesa: Invalidate external textures when (re-)binding

Philipp Zabel p.zabel at pengutronix.de
Thu May 26 15:05:26 UTC 2016


Am Donnerstag, den 26.05.2016, 10:36 -0400 schrieb Ilia Mirkin:
> On Thu, May 26, 2016 at 10:31 AM, Marek Olšák <maraeo at gmail.com> wrote:
> > On Wed, May 25, 2016 at 3:34 PM, Philipp Zabel <p.zabel at pengutronix.de> wrote:
> >> Am Mittwoch, den 25.05.2016, 09:23 -0400 schrieb Ilia Mirkin:
> >>> Iirc invalidate_resource is to allow backend to discard the contents...
> >>
> >> Thanks, I didn't know that. So this would need a new callback then?
> >> Specifically I want to discard a copy in tiled layout that was derived
> >> from a linear external texture previously.
> >
> > FWIW, radeon drivers don't change the tile mode after a texture has
> > been exported. When the texture is exported, the tile mode is set in
> > stone, be it linear or tiled. There is no second copy.
> 
> I think what he's saying is that they have a shadow copy of the
> texture, and need to know when to update the shadow.

Yes, exactly. I'd like to import a linear dma-buf using
EGL_EXT_image_dma_buf_import and GL_OES_EGL_image_external with the
etnaviv gallium driver.

The linear source buffer needs to be transferred into a shadow copy in
tiled layout. The texture samplers can only read from the tiled copy.

After the linear source buffer has been modified, binding the texture
again must trigger a refresh of the tiled copy somehow.

regards
Philipp



More information about the mesa-dev mailing list