summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/drivers/cell/ppu/cell_texture.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gallium/drivers/cell/ppu/cell_texture.h b/src/gallium/drivers/cell/ppu/cell_texture.h
index 7018b0c9bf7..fc6486adbe6 100644
--- a/src/gallium/drivers/cell/ppu/cell_texture.h
+++ b/src/gallium/drivers/cell/ppu/cell_texture.h
@@ -52,10 +52,22 @@ struct cell_texture
struct pipe_buffer *tiled_buffer[CELL_MAX_TEXTURE_LEVELS];
/** Mapped, tiled texture data */
void *tiled_mapped[CELL_MAX_TEXTURE_LEVELS];
+
+ struct pipe_transfer *transfer;
+
+ /** The original, linear texture data */
void *untiled_data[CELL_MAX_TEXTURE_LEVELS];
};
+struct cell_transfer
+{
+ struct pipe_transfer base;
+
+ unsigned long offset;
+};
+
+
/** cast wrapper */
static INLINE struct cell_texture *
cell_texture(struct pipe_texture *pt)
@@ -64,6 +76,13 @@ cell_texture(struct pipe_texture *pt)
}
+/** cast wrapper */
+static INLINE struct cell_transfer *
+cell_transfer(struct pipe_transfer *pt)
+{
+ return (struct cell_transfer *) pt;
+}
+
extern void
cell_init_screen_texture_funcs(struct pipe_screen *screen);