[Mesa-dev] [PATCH v4 13/34] i965/blorp: Add a generic ISL-based surface state emit path
Chad Versace
chad.versace at intel.com
Fri Jul 15 19:03:53 UTC 2016
On Thu 14 Jul 2016, Jason Ekstrand wrote:
> On Thu, Jul 14, 2016 at 2:26 PM, Chad Versace <chad.versace at intel.com>
> wrote:
>
> > On Wed 13 Jul 2016, Jason Ekstrand wrote:
> > > Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
> > > ---
> > > src/mesa/drivers/dri/i965/brw_blorp.c | 157
> > ++++++++++++++++++++++++++++++++++
> > > src/mesa/drivers/dri/i965/brw_blorp.h | 6 ++
> > > 2 files changed, 163 insertions(+)
> > > + struct isl_view view = {
> > > + .format = surface->brw_surfaceformat,
> > > + .base_level = 0,
> > > + .levels = 1,
> > > + .base_array_layer = 0,
> > > + .array_len = 1,
> > > + .channel_select = {
> > > + ISL_CHANNEL_SELECT_RED,
> > > + ISL_CHANNEL_SELECT_GREEN,
> > > + ISL_CHANNEL_SELECT_BLUE,
> > > + ISL_CHANNEL_SELECT_ALPHA,
> > > + },
> > > + .usage = is_render_target ? ISL_SURF_USAGE_RENDER_TARGET_BIT :
> > > + ISL_SURF_USAGE_TEXTURE_BIT,
> > > + };
> >
> > Are you confident that blorp never requires ISL_SURF_USAGE_CUBE_MAP_BIT?
> >
>
> Yes, very confident. That's only required if you're going to use a cube
> sampler. Blorp has no need for cube samplers.
Ok. That's what I thought too. Just wanted to confirm.
>
>
> >
> > > +
> > > + uint32_t offset, tile_x, tile_y;
> > > + offset = brw_blorp_compute_tile_offsets(surface, &tile_x, &tile_y);
> > > +
> > > + uint32_t surf_offset;
> > > + uint32_t *dw = brw_state_batch(brw, AUB_TRACE_SURFACE_STATE,
> > > + ss_info.num_dwords * 4,
> > ss_info.ss_align,
> > > + &surf_offset);
> > > +
> > > + const uint32_t mocs = is_render_target ? ss_info.rb_mocs :
> > ss_info.tex_mocs;
> > > +
> > > + isl_surf_fill_state(&brw->isl_dev, dw, .surf = &surf, .view = &view,
> > > + .address = surface->mt->bo->offset64 + offset,
> > > + .aux_surf = aux_surf, .aux_usage = aux_usage,
> > > + .aux_address = aux_offset,
> > > + .mocs = mocs, .clear_color = clear_color,
> > > + .x_offset_sa = tile_x, .y_offset_sa = tile_y);
> >
> > Whoa! Where did x_offset_sa and y_offset_sa come from? It's not on
> > master, and I didn't see it in any earlier patches.
> >
Yep, I see it now.
This patch is
Reviewed-by: Chad Versace <chad.versace at intel.com>
More information about the mesa-dev
mailing list