st/nine: Bind destination for surface/volume uploads

Will enable to use the bind count as an information for
whether the surface/volume is used in the worker thread.

Signed-off-by: Axel Davy <axel.davy@ens.fr>
This commit is contained in:
Axel Davy 2016-12-04 01:10:34 +01:00
parent d4a9b21feb
commit 7089d88199
4 changed files with 9 additions and 0 deletions

View file

@ -2719,6 +2719,7 @@ CSMT_ITEM_NO_WAIT_WITH_COUNTER(nine_context_range_upload,
}
CSMT_ITEM_NO_WAIT_WITH_COUNTER(nine_context_box_upload,
ARG_BIND_REF(struct NineUnknown, dst),
ARG_BIND_RES(struct pipe_resource, res),
ARG_VAL(unsigned, level),
ARG_COPY_REF(struct pipe_box, dst_box),
@ -2733,6 +2734,9 @@ CSMT_ITEM_NO_WAIT_WITH_COUNTER(nine_context_box_upload,
struct pipe_transfer *transfer = NULL;
uint8_t *map;
/* We just bind dst for the bind count */
(void)dst;
map = pipe->transfer_map(pipe,
res,
level,

View file

@ -557,6 +557,7 @@ nine_context_range_upload(struct NineDevice9 *device,
void
nine_context_box_upload(struct NineDevice9 *device,
unsigned *counter,
struct NineUnknown *dst,
struct pipe_resource *res,
unsigned level,
const struct pipe_box *dst_box,

View file

@ -628,6 +628,7 @@ NineSurface9_CopyMemToDefault( struct NineSurface9 *This,
nine_context_box_upload(This->base.base.device,
&From->pending_uploads_counter,
(struct NineUnknown *)This,
r_dst,
This->level,
&dst_box,
@ -719,6 +720,7 @@ NineSurface9_UploadSelf( struct NineSurface9 *This,
nine_context_box_upload(This->base.base.device,
&This->pending_uploads_counter,
(struct NineUnknown *)This,
res,
This->level,
&box,

View file

@ -435,6 +435,7 @@ NineVolume9_CopyMemToDefault( struct NineVolume9 *This,
nine_context_box_upload(This->base.device,
&From->pending_uploads_counter,
(struct NineUnknown *)This,
r_dst,
This->level,
&dst_box,
@ -489,6 +490,7 @@ NineVolume9_UploadSelf( struct NineVolume9 *This,
nine_context_box_upload(This->base.device,
&This->pending_uploads_counter,
(struct NineUnknown *)This,
res,
This->level,
&box,