summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2018-04-21 00:06:29 -0700
committerKenneth Graunke <[email protected]>2018-12-07 16:35:51 -0800
commitf0d51e81c924064385c69ee46242183ef99411ab (patch)
treeb4a0e1c70eb57734453d70e5b7d20af48a6a2369
parentd014af98b7afc69f4f733c8b8b6f2e3438e68407 (diff)
intel/blorp: Expand blorp_address::offset to be 64 bits.
In the softpin world, surface state base address may be a fixed 64-bit address (with no associated BO). It makes sense to store this in the offset field. But it needs to be the full size. We also update the clear color address to be consistently uint64_t everywhere so we can continue passing intel_miptree_get_clear_color a pointer to the blorp_address's offset field without type mismatches. Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
-rw-r--r--src/intel/blorp/blorp.h2
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm_surface_state.c2
-rw-r--r--src/mesa/drivers/dri/i965/intel_mipmap_tree.c2
-rw-r--r--src/mesa/drivers/dri/i965/intel_mipmap_tree.h2
4 files changed, 4 insertions, 4 deletions
diff --git a/src/intel/blorp/blorp.h b/src/intel/blorp/blorp.h
index ee343a4a6bb..1e22712602d 100644
--- a/src/intel/blorp/blorp.h
+++ b/src/intel/blorp/blorp.h
@@ -91,8 +91,8 @@ void blorp_batch_finish(struct blorp_batch *batch);
struct blorp_address {
void *buffer;
+ uint64_t offset;
unsigned reloc_flags;
- uint32_t offset;
uint32_t mocs;
};
diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
index 4daa0e2add1..b067a174056 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
@@ -156,7 +156,7 @@ brw_emit_surface_state(struct brw_context *brw,
struct isl_surf *aux_surf = NULL;
uint64_t aux_offset = 0;
struct brw_bo *clear_bo = NULL;
- uint32_t clear_offset = 0;
+ uint64_t clear_offset = 0;
if (aux_usage != ISL_AUX_USAGE_NONE) {
aux_surf = &mt->aux_buf->surf;
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
index 8e50aabb3b4..a679ddf3e48 100644
--- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
@@ -3865,7 +3865,7 @@ intel_miptree_get_clear_color(const struct gen_device_info *devinfo,
const struct intel_mipmap_tree *mt,
enum isl_format view_format, bool sampling,
struct brw_bo **clear_color_bo,
- uint32_t *clear_color_offset)
+ uint64_t *clear_color_offset)
{
assert(mt->aux_buf);
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
index b0333655ad5..21beeded92a 100644
--- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
+++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
@@ -714,7 +714,7 @@ intel_miptree_get_clear_color(const struct gen_device_info *devinfo,
const struct intel_mipmap_tree *mt,
enum isl_format view_format, bool sampling,
struct brw_bo **clear_color_bo,
- uint32_t *clear_color_offset);
+ uint64_t *clear_color_offset);
static inline int