diff options
author | Eric Anholt <[email protected]> | 2018-11-02 11:31:42 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2018-12-07 16:48:23 -0800 |
commit | 2ebca177dc188a10db93a087ce18c2f3042d9b1c (patch) | |
tree | c9599b24f5ef572f326c8434f23c5258071f0969 /src/gallium/drivers/v3d/v3d_context.h | |
parent | ee0549ff9ab31b52301f693735f6987f72312fc7 (diff) |
v3d: Use the TFU to do generatemipmap.
This is a separate, dedicated hardware unit for texture layout conversions
and mipmap generation.
Diffstat (limited to 'src/gallium/drivers/v3d/v3d_context.h')
-rw-r--r-- | src/gallium/drivers/v3d/v3d_context.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/gallium/drivers/v3d/v3d_context.h b/src/gallium/drivers/v3d/v3d_context.h index 4c3779a4990..8c55eadfa15 100644 --- a/src/gallium/drivers/v3d/v3d_context.h +++ b/src/gallium/drivers/v3d/v3d_context.h @@ -365,7 +365,7 @@ struct v3d_context { /** Maximum index buffer valid for the current shader_rec. */ uint32_t max_index; - /** Sync object that our RCL will update as its out_sync. */ + /** Sync object that our RCL or TFU job will update as its out_sync. */ uint32_t out_sync; struct u_upload_mgr *uploader; @@ -526,10 +526,19 @@ void v3d_get_internal_type_bpp_for_output_format(const struct v3d_device_info *d uint32_t format, uint32_t *type, uint32_t *bpp); +bool v3d_tfu_supports_tex_format(const struct v3d_device_info *devinfo, + uint32_t tex_format); void v3d_init_query_functions(struct v3d_context *v3d); void v3d_blit(struct pipe_context *pctx, const struct pipe_blit_info *blit_info); void v3d_blitter_save(struct v3d_context *v3d); +boolean v3d_generate_mipmap(struct pipe_context *pctx, + struct pipe_resource *prsc, + enum pipe_format format, + unsigned int base_level, + unsigned int last_level, + unsigned int first_layer, + unsigned int last_layer); struct v3d_fence *v3d_fence_create(struct v3d_context *v3d); |