From: Jason Ekstrand Date: Tue, 13 Jun 2017 20:35:15 +0000 (-0700) Subject: intel/isl: Add a row_pitch parameter to surf_get_ccs_surf X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=828c437078365d0a23a0203fa38b5e7ef6e17a07;p=mesa.git intel/isl: Add a row_pitch parameter to surf_get_ccs_surf Reviewed-by: Topi Pohjolainen Reviewed-by: Chad Versace --- diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c index 1026fe94952..12ffe3bb510 100644 --- a/src/intel/isl/isl.c +++ b/src/intel/isl/isl.c @@ -1688,7 +1688,8 @@ isl_surf_get_mcs_surf(const struct isl_device *dev, bool isl_surf_get_ccs_surf(const struct isl_device *dev, const struct isl_surf *surf, - struct isl_surf *ccs_surf) + struct isl_surf *ccs_surf, + uint32_t row_pitch) { assert(surf->samples == 1 && surf->msaa_layout == ISL_MSAA_LAYOUT_NONE); assert(ISL_DEV_GEN(dev) >= 7); @@ -1750,6 +1751,7 @@ isl_surf_get_ccs_surf(const struct isl_device *dev, .levels = levels, .array_len = array_len, .samples = 1, + .row_pitch = row_pitch, .usage = ISL_SURF_USAGE_CCS_BIT, .tiling_flags = ISL_TILING_CCS_BIT); } diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h index dd550c349a7..d81df31a372 100644 --- a/src/intel/isl/isl.h +++ b/src/intel/isl/isl.h @@ -1630,7 +1630,8 @@ isl_surf_get_mcs_surf(const struct isl_device *dev, bool isl_surf_get_ccs_surf(const struct isl_device *dev, const struct isl_surf *surf, - struct isl_surf *ccs_surf); + struct isl_surf *ccs_surf, + uint32_t row_pitch /**< Ignored if 0 */); #define isl_surf_fill_state(dev, state, ...) \ isl_surf_fill_state_s((dev), (state), \ diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c index f555db807b6..149e1f20334 100644 --- a/src/intel/vulkan/anv_image.c +++ b/src/intel/vulkan/anv_image.c @@ -211,7 +211,7 @@ make_surface(const struct anv_device *dev, if (!unlikely(INTEL_DEBUG & DEBUG_NO_RBC)) { assert(image->aux_surface.isl.size == 0); ok = isl_surf_get_ccs_surf(&dev->isl_dev, &anv_surf->isl, - &image->aux_surface.isl); + &image->aux_surface.isl, 0); if (ok) { add_surface(image, &image->aux_surface); diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c index f08c3e343a8..47475689f9c 100644 --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c @@ -1836,7 +1836,8 @@ intel_miptree_alloc_ccs(struct brw_context *brw, * calculate equivalent CCS surface against it. */ intel_miptree_get_isl_surf(brw, mt, &temp_main_surf); - if (!isl_surf_get_ccs_surf(&brw->isl_dev, &temp_main_surf, &temp_ccs_surf)) + if (!isl_surf_get_ccs_surf(&brw->isl_dev, &temp_main_surf, + &temp_ccs_surf, 0)) return false; assert(temp_ccs_surf.size &&