summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2017-02-06 21:56:35 -0800
committerJason Ekstrand <[email protected]>2017-02-12 17:56:32 -0800
commit9df3778016e9153bc8759f84075db2d62a62a596 (patch)
tree0eaf9bdabab63b8e7be31e453e8ae882b458c94b
parent3970257cef5e0c7b5b31c023450f1ea55b784e88 (diff)
i965/sampler_state: Clamp min/max LOD to 14 on gen7+
Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Cc: "17.0" <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/brw_sampler_state.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_sampler_state.c b/src/mesa/drivers/dri/i965/brw_sampler_state.c
index 412efb9a618..e677a75386d 100644
--- a/src/mesa/drivers/dri/i965/brw_sampler_state.c
+++ b/src/mesa/drivers/dri/i965/brw_sampler_state.c
@@ -503,8 +503,11 @@ brw_update_sampler_state(struct brw_context *brw,
}
const int lod_bits = brw->gen >= 7 ? 8 : 6;
- const unsigned min_lod = U_FIXED(CLAMP(sampler->MinLod, 0, 13), lod_bits);
- const unsigned max_lod = U_FIXED(CLAMP(sampler->MaxLod, 0, 13), lod_bits);
+ const float hw_max_lod = brw->gen >= 7 ? 14 : 13;
+ const unsigned min_lod =
+ U_FIXED(CLAMP(sampler->MinLod, 0, hw_max_lod), lod_bits);
+ const unsigned max_lod =
+ U_FIXED(CLAMP(sampler->MaxLod, 0, hw_max_lod), lod_bits);
const int lod_bias =
S_FIXED(CLAMP(tex_unit_lod_bias + sampler->LodBias, -16, 15), lod_bits);