summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/freedreno/freedreno_gmem.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_gmem.h')
-rw-r--r--src/gallium/drivers/freedreno/freedreno_gmem.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_gmem.h b/src/gallium/drivers/freedreno/freedreno_gmem.h
index 0c978a4d0a0..1082d542a91 100644
--- a/src/gallium/drivers/freedreno/freedreno_gmem.h
+++ b/src/gallium/drivers/freedreno/freedreno_gmem.h
@@ -31,6 +31,28 @@
#include "pipe/p_context.h"
+/* per-pipe configuration for hw binning: */
+struct fd_vsc_pipe {
+ struct fd_bo *bo;
+ uint8_t x, y, w, h; /* VSC_PIPE[p].CONFIG */
+};
+
+/* per-tile configuration for hw binning: */
+struct fd_tile {
+ uint8_t p; /* index into vsc_pipe[]s */
+ uint8_t n; /* slot within pipe */
+ uint16_t bin_w, bin_h;
+ uint16_t xoff, yoff;
+};
+
+struct fd_gmem_stateobj {
+ struct pipe_scissor_state scissor;
+ uint cpp;
+ uint16_t bin_h, nbins_y;
+ uint16_t bin_w, nbins_x;
+ uint16_t width, height;
+};
+
void fd_gmem_render_tiles(struct pipe_context *pctx);
#endif /* FREEDRENO_GMEM_H_ */