On Jun 8, 2016 9:25 PM, "Kristian Høgsberg" <k...@bitplanet.net> wrote: > > On Wed, Jun 8, 2016 at 9:07 PM, Jason Ekstrand <ja...@jlekstrand.net> wrote: > > When Kristian implemented GL_TEXTURE_EXTERNAL_OES, he hooked it up for gen8 > > but not for gen7 or earlier. It all works, we just need to emit the states > > for the extra planes. > > Ah yes, thanks. > > Reviewed-by: Kristian Høgsberg <k...@bitplanet.net>
Thanks! > > Cc: "12.0" <mesa-sta...@list.freedesktop.org> > > Cc: Kristian Høgsberg <k...@bitplanet.net> > > --- > > src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 9 +++++++++ > > src/mesa/drivers/dri/i965/gen7_wm_surface_state.c | 9 +++++++++ > > 2 files changed, 18 insertions(+) > > > > diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > > index b73d5d5..133a944 100644 > > --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > > +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > > @@ -338,6 +338,15 @@ brw_update_texture_surface(struct gl_context *ctx, > > uint32_t tex_format = translate_tex_format(brw, mt->format, > > sampler->sRGBDecode); > > > > + if (tObj->Target == GL_TEXTURE_EXTERNAL_OES) { > > + if (plane > 0) > > + mt = mt->plane[plane - 1]; > > + if (mt == NULL) > > + return; > > + > > + tex_format = translate_tex_format(brw, mt->format, sampler->sRGBDecode); > > + } > > + > > if (for_gather) { > > /* Sandybridge's gather4 message is broken for integer formats. > > * To work around this, we pretend the surface is UNORM for > > diff --git a/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c b/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c > > index 329164d..60589bc 100644 > > --- a/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c > > +++ b/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c > > @@ -386,6 +386,15 @@ gen7_update_texture_surface(struct gl_context *ctx, > > unsigned format = translate_tex_format( > > brw, intel_obj->_Format, sampler->sRGBDecode); > > > > + if (obj->Target == GL_TEXTURE_EXTERNAL_OES) { > > + if (plane > 0) > > + mt = mt->plane[plane - 1]; > > + if (mt == NULL) > > + return; > > + > > + format = translate_tex_format(brw, mt->format, sampler->sRGBDecode); > > + } > > + > > if (for_gather && format == BRW_SURFACEFORMAT_R32G32_FLOAT) > > format = BRW_SURFACEFORMAT_R32G32_FLOAT_LD; > > > > -- > > 2.5.0.400.gff86faf > >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev