diff options
author | Rob Clark <[email protected]> | 2015-08-11 16:47:16 -0400 |
---|---|---|
committer | Rob Clark <[email protected]> | 2015-08-12 18:37:43 -0400 |
commit | 500025a23784877c8a61d8b3c7a8eab6fddf242a (patch) | |
tree | 06d610c3c384587632687c8a7e1ffc1683394a5a /src/gallium/drivers/freedreno/freedreno_util.h | |
parent | fb07c49f4883b12cef37748271d99e2fcf217a72 (diff) |
freedreno/a3xx+a4xx: add texture buffer object support
Basic texture buffer support. Should be straightforward to add first/
last_element support. And with a bit of work in ir3 emulate larger
texture buffer sizes. But this seems to be enough for stk gl31 render
paths.
Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_util.h')
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_util.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_util.h b/src/gallium/drivers/freedreno/freedreno_util.h index d6a08b5fa13..7129a1bddd1 100644 --- a/src/gallium/drivers/freedreno/freedreno_util.h +++ b/src/gallium/drivers/freedreno/freedreno_util.h @@ -140,6 +140,22 @@ fd_surface_half_precision(const struct pipe_surface *psurf) return true; } +static inline unsigned +fd_sampler_first_level(const struct pipe_sampler_view *view) +{ + if (view->target == PIPE_BUFFER) + return 0; + return view->u.tex.first_level; +} + +static inline unsigned +fd_sampler_last_level(const struct pipe_sampler_view *view) +{ + if (view->target == PIPE_BUFFER) + return 0; + return view->u.tex.last_level; +} + static inline bool fd_half_precision(struct pipe_framebuffer_state *pfb) { |