iris: fall back to u_generate_mipmap
It just does blits between layers, which is all we'd do anyway, and it already should use BLORP because of iris_blit(). Plus it handles 3D, which our code in i965 doesn't.
This commit is contained in:
@@ -112,21 +112,8 @@ iris_blit(struct pipe_context *ctx, const struct pipe_blit_info *info)
|
|||||||
blorp_batch_finish(&blorp_batch);
|
blorp_batch_finish(&blorp_batch);
|
||||||
}
|
}
|
||||||
|
|
||||||
static boolean
|
|
||||||
iris_generate_mipmap(struct pipe_context *ctx,
|
|
||||||
struct pipe_resource *resource,
|
|
||||||
enum pipe_format format,
|
|
||||||
unsigned base_level,
|
|
||||||
unsigned last_level,
|
|
||||||
unsigned first_layer,
|
|
||||||
unsigned last_layer)
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
iris_init_blit_functions(struct pipe_context *ctx)
|
iris_init_blit_functions(struct pipe_context *ctx)
|
||||||
{
|
{
|
||||||
ctx->blit = iris_blit;
|
ctx->blit = iris_blit;
|
||||||
ctx->generate_mipmap = iris_generate_mipmap;
|
|
||||||
}
|
}
|
||||||
|
@@ -164,6 +164,7 @@ iris_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_PROGRAMMABLE_SAMPLE_LOCATIONS:
|
case PIPE_CAP_PROGRAMMABLE_SAMPLE_LOCATIONS:
|
||||||
case PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT:
|
case PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT:
|
||||||
case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER:
|
case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER:
|
||||||
|
case PIPE_CAP_GENERATE_MIPMAP:
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
case PIPE_CAP_TEXTURE_MIRROR_CLAMP:
|
case PIPE_CAP_TEXTURE_MIRROR_CLAMP:
|
||||||
@@ -254,7 +255,6 @@ iris_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
|
|||||||
case PIPE_CAP_TGSI_FS_FACE_IS_INTEGER_SYSVAL:
|
case PIPE_CAP_TGSI_FS_FACE_IS_INTEGER_SYSVAL:
|
||||||
case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
|
case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
|
||||||
case PIPE_CAP_INVALIDATE_BUFFER:
|
case PIPE_CAP_INVALIDATE_BUFFER:
|
||||||
case PIPE_CAP_GENERATE_MIPMAP:
|
|
||||||
case PIPE_CAP_STRING_MARKER:
|
case PIPE_CAP_STRING_MARKER:
|
||||||
case PIPE_CAP_SURFACE_REINTERPRET_BLOCKS:
|
case PIPE_CAP_SURFACE_REINTERPRET_BLOCKS:
|
||||||
case PIPE_CAP_QUERY_BUFFER_OBJECT:
|
case PIPE_CAP_QUERY_BUFFER_OBJECT:
|
||||||
|
Reference in New Issue
Block a user