[Mesa-dev] [PATCH 08/15] r600g: rework cache flushing

Alex Deucher alexdeucher at gmail.com
Mon Jan 30 12:53:05 PST 2012


On Mon, Jan 30, 2012 at 3:23 PM, Marek Olšák <maraeo at gmail.com> wrote:
> This also significantly improves the RV670 flush by using the CB1 flush
> *always* and also DEST_BASE_0_ENA, which appears to magically fix some tests.
> I am not entirely sure, but it's possible that RV670 flushing is fixed
> completely.
> ---
<snip>
> +
> +void r600_inval_vertex_cache(struct r600_context *ctx)
> +{
> +       if (ctx->family == CHIP_RV610 ||
> +           ctx->family == CHIP_RV620 ||
> +           ctx->family == CHIP_RS780 ||
> +           ctx->family == CHIP_RS880 ||
> +           ctx->family == CHIP_RV710 ||
> +           ctx->family == CHIP_CEDAR ||
> +           ctx->family == CHIP_PALM ||
> +           ctx->family == CHIP_SUMO ||
> +           ctx->family == CHIP_SUMO2 ||
> +           ctx->family == CHIP_CAICOS) {

CAYMAN should also be in this group.  It doesn't have a VC either.

Alex

> +               /* The low-end GPUs don't have the vertex cache and use the texture cache instead. */
> +               ctx->atom_surface_sync.flush_flags |= S_0085F0_TC_ACTION_ENA(1);
> +       } else {
> +               ctx->atom_surface_sync.flush_flags |= S_0085F0_VC_ACTION_ENA(1);
> +       }
> +       r600_atom_dirty(ctx, &ctx->atom_surface_sync.atom);
> +}
> +


More information about the mesa-dev mailing list