+
+ struct etna_resource *rsc = etna_resource(pview->texture);
+ struct etna_resource_level *lev = &rsc->levels[0];
+
+ if (lev->clear_value != sts->TS_SAMPLER_CLEAR_VALUE)
+ dirty = true;
+
+ assert(rsc->ts_bo && lev->ts_valid);
+
+ sts->mode = lev->ts_mode;
+ sts->TS_SAMPLER_CONFIG =
+ VIVS_TS_SAMPLER_CONFIG_ENABLE |
+ COND(lev->ts_compress_fmt >= 0, VIVS_TS_SAMPLER_CONFIG_COMPRESSION) |
+ VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT(lev->ts_compress_fmt);
+ sts->TS_SAMPLER_CLEAR_VALUE = lev->clear_value;
+ sts->TS_SAMPLER_CLEAR_VALUE2 = lev->clear_value >> 32;
+ sts->TS_SAMPLER_STATUS_BASE.bo = rsc->ts_bo;
+ sts->TS_SAMPLER_STATUS_BASE.offset = lev->ts_offset;
+ sts->TS_SAMPLER_STATUS_BASE.flags = ETNA_RELOC_READ;
+
+ return dirty;