summaryrefslogtreecommitdiffstats
path: root/src/intel
diff options
context:
space:
mode:
authorNanley Chery <[email protected]>2016-03-03 15:40:13 -0800
committerNanley Chery <[email protected]>2016-03-04 13:20:03 -0800
commitb80c8ebc4587a15c823b5223419eadb0ca51cdd1 (patch)
treed3268b396896a4486c03b432f930039389088fea /src/intel
parentd154a5ebd68b3d1f465d6bb77e34b3ff04bc8a9f (diff)
isl: Get rid of isl_surf_fill_state_info::level0_extent_px
This field is no longer needed. Signed-off-by: Nanley Chery <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/intel')
-rw-r--r--src/intel/isl/isl.h9
-rw-r--r--src/intel/isl/isl_surface_state.c8
-rw-r--r--src/intel/vulkan/anv_image.c33
3 files changed, 7 insertions, 43 deletions
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index 5a48bce6c64..248a94d64eb 100644
--- a/src/intel/isl/isl.h
+++ b/src/intel/isl/isl.h
@@ -773,15 +773,6 @@ struct isl_surf_fill_state_info {
uint32_t mocs;
/**
- * This allows the caller to over-ride the dimensions of the surface.
- * This is used at the moment for compressed surfaces to let us hack
- * around the fact that we can't actually render to them.
- *
- * FIXME: We really need to get rid of this. It's a lie.
- */
- struct isl_extent4d level0_extent_px;
-
- /**
* The clear color for this surface
*
* Valid values depend on hardware generation.
diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c
index 1607aa6233d..fe8f07cfe30 100644
--- a/src/intel/isl/isl_surface_state.c
+++ b/src/intel/isl/isl_surface_state.c
@@ -257,8 +257,8 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
.SurfaceQPitch = get_qpitch(info->surf) >> 2,
#endif
- .Width = info->level0_extent_px.width - 1,
- .Height = info->level0_extent_px.height - 1,
+ .Width = info->surf->logical_level0_px.width - 1,
+ .Height = info->surf->logical_level0_px.height - 1,
.Depth = 0, /* TEMPLATE */
.SurfacePitch = info->surf->row_pitch - 1,
@@ -338,7 +338,7 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
* If the volume texture is MIP-mapped, this field specifies the
* depth of the base MIP level.
*/
- s.Depth = info->level0_extent_px.depth - 1;
+ s.Depth = info->surf->logical_level0_px.depth - 1;
/* From the Broadwell PRM >> RENDER_SURFACE_STATE::RenderTargetViewExtent:
*
@@ -346,7 +346,7 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
* indicates the extent of the accessible 'R' coordinates minus 1 on
* the LOD currently being rendered to.
*/
- s.RenderTargetViewExtent = info->level0_extent_px.depth - 1;
+ s.RenderTargetViewExtent = info->surf->logical_level0_px.depth - 1;
break;
default:
unreachable(!"bad SurfaceType");
diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c
index dc1ea9c80cc..c76a5f6dba9 100644
--- a/src/intel/vulkan/anv_image.c
+++ b/src/intel/vulkan/anv_image.c
@@ -540,30 +540,6 @@ anv_image_view_init(struct anv_image_view *iview,
},
};
- struct isl_extent4d level0_extent_px;
-
- if (!isl_format_is_compressed(format) &&
- isl_format_is_compressed(image->format->isl_format)) {
- /* Scale the ImageView extent by the backing Image. This is used
- * internally when an uncompressed ImageView is created on a
- * compressed Image. The ImageView can therefore be used for copying
- * data from a source Image to a destination Image.
- */
- const struct isl_format_layout * isl_layout = image->format->isl_layout;
-
- level0_extent_px.depth = anv_minify(image->extent.depth, range->baseMipLevel);
- level0_extent_px.depth = DIV_ROUND_UP(level0_extent_px.depth, isl_layout->bd);
-
- level0_extent_px.height = isl_surf_get_array_pitch_el_rows(&surface->isl) * image->array_size;
- level0_extent_px.width = isl_surf_get_row_pitch_el(&surface->isl);
- isl_view.base_level = 0;
- isl_view.base_array_layer = 0;
- } else {
- level0_extent_px.width = image->extent.width;
- level0_extent_px.height = image->extent.height;
- level0_extent_px.depth = image->extent.depth;
- }
-
iview->extent = (VkExtent3D) {
.width = anv_minify(image->extent.width , range->baseMipLevel),
.height = anv_minify(image->extent.height, range->baseMipLevel),
@@ -586,8 +562,7 @@ anv_image_view_init(struct anv_image_view *iview,
iview->sampler_surface_state.map,
.surf = &surface->isl,
.view = &isl_view,
- .mocs = device->default_mocs,
- .level0_extent_px = level0_extent_px);
+ .mocs = device->default_mocs);
if (!device->info.has_llc)
anv_state_clflush(iview->sampler_surface_state);
@@ -603,8 +578,7 @@ anv_image_view_init(struct anv_image_view *iview,
iview->color_rt_surface_state.map,
.surf = &surface->isl,
.view = &isl_view,
- .mocs = device->default_mocs,
- .level0_extent_px = level0_extent_px);
+ .mocs = device->default_mocs);
if (!device->info.has_llc)
anv_state_clflush(iview->color_rt_surface_state);
@@ -621,8 +595,7 @@ anv_image_view_init(struct anv_image_view *iview,
iview->storage_surface_state.map,
.surf = &surface->isl,
.view = &isl_view,
- .mocs = device->default_mocs,
- .level0_extent_px = level0_extent_px);
+ .mocs = device->default_mocs);
} else {
anv_fill_buffer_surface_state(device, iview->storage_surface_state,
ISL_FORMAT_RAW,