diff options
Diffstat (limited to 'src/gallium/drivers/radeonsi')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_pipe.h | 39 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state.c | 30 |
2 files changed, 30 insertions, 39 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index 69f49d1fdb1..38eb12821af 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -189,45 +189,6 @@ struct pipe_video_buffer *si_video_buffer_create(struct pipe_context *pipe, /* * common helpers */ -static INLINE uint32_t S_FIXED(float value, uint32_t frac_bits) -{ - return value * (1 << frac_bits); -} -#define ALIGN_DIVUP(x, y) (((x) + (y) - 1) / (y)) - -static INLINE unsigned si_map_swizzle(unsigned swizzle) -{ - switch (swizzle) { - case UTIL_FORMAT_SWIZZLE_Y: - return V_008F0C_SQ_SEL_Y; - case UTIL_FORMAT_SWIZZLE_Z: - return V_008F0C_SQ_SEL_Z; - case UTIL_FORMAT_SWIZZLE_W: - return V_008F0C_SQ_SEL_W; - case UTIL_FORMAT_SWIZZLE_0: - return V_008F0C_SQ_SEL_0; - case UTIL_FORMAT_SWIZZLE_1: - return V_008F0C_SQ_SEL_1; - default: /* UTIL_FORMAT_SWIZZLE_X */ - return V_008F0C_SQ_SEL_X; - } -} - -static inline unsigned si_tex_aniso_filter(unsigned filter) -{ - if (filter <= 1) return 0; - if (filter <= 2) return 1; - if (filter <= 4) return 2; - if (filter <= 8) return 3; - /* else */ return 4; -} - -/* 12.4 fixed-point */ -static INLINE unsigned si_pack_float_12p4(float x) -{ - return x <= 0 ? 0 : - x >= 4096 ? 0xffff : x * 16; -} static INLINE struct r600_resource * si_resource_create_custom(struct pipe_screen *screen, diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 8396ef51210..ebca4a87fea 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -166,6 +166,36 @@ static unsigned cik_db_pipe_config(struct si_screen *sscreen, unsigned tile_mode } } +static unsigned si_map_swizzle(unsigned swizzle) +{ + switch (swizzle) { + case UTIL_FORMAT_SWIZZLE_Y: + return V_008F0C_SQ_SEL_Y; + case UTIL_FORMAT_SWIZZLE_Z: + return V_008F0C_SQ_SEL_Z; + case UTIL_FORMAT_SWIZZLE_W: + return V_008F0C_SQ_SEL_W; + case UTIL_FORMAT_SWIZZLE_0: + return V_008F0C_SQ_SEL_0; + case UTIL_FORMAT_SWIZZLE_1: + return V_008F0C_SQ_SEL_1; + default: /* UTIL_FORMAT_SWIZZLE_X */ + return V_008F0C_SQ_SEL_X; + } +} + +static uint32_t S_FIXED(float value, uint32_t frac_bits) +{ + return value * (1 << frac_bits); +} + +/* 12.4 fixed-point */ +static unsigned si_pack_float_12p4(float x) +{ + return x <= 0 ? 0 : + x >= 4096 ? 0xffff : x * 16; +} + /* * inferred framebuffer and blender state */ |