X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Ffreedreno%2Ffreedreno_util.h;h=bfeec4c17dd93af006e9c7af013eb62f3e38da33;hb=d4a5e14fae17c7ea7bb8d1d0d6467fd4e0706dd1;hp=c699f7badff6aa9bba2ecfc833ec279f03ac8a38;hpb=bea8602e5b576eb98d8e4657f2b1287fb9f148a1;p=mesa.git diff --git a/src/gallium/drivers/freedreno/freedreno_util.h b/src/gallium/drivers/freedreno/freedreno_util.h index c699f7badff..bfeec4c17dd 100644 --- a/src/gallium/drivers/freedreno/freedreno_util.h +++ b/src/gallium/drivers/freedreno/freedreno_util.h @@ -76,9 +76,14 @@ enum adreno_stencil_op fd_stencil_op(unsigned op); #define FD_DBG_SHADERDB 0x0800 #define FD_DBG_FLUSH 0x1000 #define FD_DBG_DEQP 0x2000 -#define FD_DBG_NIR 0x4000 -#define FD_DBG_REORDER 0x8000 -#define FD_DBG_BSTAT 0x10000 +#define FD_DBG_INORDER 0x4000 +#define FD_DBG_BSTAT 0x8000 +#define FD_DBG_NOGROW 0x10000 +#define FD_DBG_LRZ 0x20000 +#define FD_DBG_NOINDR 0x40000 +#define FD_DBG_NOBLIT 0x80000 +#define FD_DBG_HIPRIO 0x100000 +#define FD_DBG_TTILE 0x200000 extern int fd_mesa_debug; extern bool fd_binning_enabled; @@ -410,13 +415,8 @@ emit_marker5(struct fd_ringbuffer *ring, int scratch_idx) extern unsigned marker_cnt; //XXX unsigned reg = REG_A5XX_CP_SCRATCH_REG(scratch_idx); unsigned reg = 0x00000b78 + scratch_idx; - assert(reg != HW_QUERY_BASE_REG); - if (reg == HW_QUERY_BASE_REG) - return; - OUT_WFI5(ring); OUT_PKT4(ring, reg, 1); OUT_RING(ring, ++marker_cnt); - OUT_WFI5(ring); } /* helper to get numeric value from environment variable.. mostly @@ -448,4 +448,27 @@ pack_rgba(enum pipe_format format, const float *rgba) #define foreach_bit(b, mask) \ for (uint32_t _m = (mask); _m && ({(b) = u_bit_scan(&_m); 1;});) + +#define BIT(bit) (1u << bit) + +/* + * a4xx+ helpers: + */ + +static inline enum a4xx_state_block +fd4_stage2shadersb(enum shader_t type) +{ + switch (type) { + case SHADER_VERTEX: + return SB4_VS_SHADER; + case SHADER_FRAGMENT: + return SB4_FS_SHADER; + case SHADER_COMPUTE: + return SB4_CS_SHADER; + default: + unreachable("bad shader type"); + return ~0; + } +} + #endif /* FREEDRENO_UTIL_H_ */