To offload mipmap generation as well. Signed-off-by: Axel Davy <axel.d...@ens.fr> --- src/gallium/state_trackers/nine/nine_state.c | 15 +++++++++++++++ src/gallium/state_trackers/nine/nine_state.h | 7 +++++++ 2 files changed, 22 insertions(+)
diff --git a/src/gallium/state_trackers/nine/nine_state.c b/src/gallium/state_trackers/nine/nine_state.c index 53ff1d5..1f9365b 100644 --- a/src/gallium/state_trackers/nine/nine_state.c +++ b/src/gallium/state_trackers/nine/nine_state.c @@ -44,6 +44,7 @@ #include "util/u_math.h" #include "util/u_box.h" #include "util/u_simple_shaders.h" +#include "util/u_gen_mipmap.h" /* CSMT headers */ #include "nine_queue.h" @@ -2696,6 +2697,20 @@ CSMT_ITEM_NO_WAIT(nine_context_clear_render_target, context->pipe->clear_render_target(context->pipe, surf, &rgba, x, y, width, height, false); } +CSMT_ITEM_NO_WAIT(nine_context_gen_mipmap, + ARG_BIND_RES(struct pipe_resource, res), + ARG_VAL(UINT, base_level), + ARG_VAL(UINT, last_level), + ARG_VAL(UINT, first_layer), + ARG_VAL(UINT, last_layer), + ARG_VAL(UINT, filter)) +{ + struct nine_context *context = &device->context; + + util_gen_mipmap(context->pipe, res, res->format, base_level, + last_level, first_layer, last_layer, filter); +} + CSMT_ITEM_NO_WAIT_WITH_COUNTER(nine_context_range_upload, ARG_BIND_RES(struct pipe_resource, res), ARG_VAL(unsigned, offset), diff --git a/src/gallium/state_trackers/nine/nine_state.h b/src/gallium/state_trackers/nine/nine_state.h index c0afbe0..0fa19a2 100644 --- a/src/gallium/state_trackers/nine/nine_state.h +++ b/src/gallium/state_trackers/nine/nine_state.h @@ -540,6 +540,13 @@ nine_context_clear_render_target(struct NineDevice9 *device, UINT height); void +nine_context_gen_mipmap(struct NineDevice9 *device, + struct pipe_resource *res, + UINT base_level, UINT last_level, + UINT first_layer, UINT last_layer, + UINT filter); + +void nine_context_range_upload(struct NineDevice9 *device, unsigned *counter, struct pipe_resource *res, -- 2.10.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev