diff options
author | Daniel Stone <daniels@collabora.com> | 2016-05-02 15:34:40 +0100 |
---|---|---|
committer | Daniel Stone <daniels@collabora.com> | 2016-05-09 10:35:55 +0100 |
commit | e54b2e902aba22f697c0ba8622cd0a905f1edfff (patch) | |
tree | 7a49e670de554dc46c23fc754fdcf48201f68f18 /src/mesa/drivers/dri/i965/intel_mipmap_tree.c | |
parent | 920d78a32c25eae051599896fe186aa8507cd007 (diff) | |
download | external_mesa3d-e54b2e902aba22f697c0ba8622cd0a905f1edfff.zip external_mesa3d-e54b2e902aba22f697c0ba8622cd0a905f1edfff.tar.gz external_mesa3d-e54b2e902aba22f697c0ba8622cd0a905f1edfff.tar.bz2 |
Revert "i965: Always use Y-tiled buffers on SKL+"
This commit broke Weston, Mutter, and xf86-video-modesetting, on KMS.
In order to use Y-tiled buffers, the kernel requires the tiling mode to
be explicitly named through the I915_FORMAT_MOD_Y_TILED AddFB2 modifier;
it disallows any attempt to infer the buffer's tiling mode.
As the GBM API does not have a way to extract modifiers for a buffer,
this commit broke all users of GBM on SKL+. Revert it for now, until we
get a way to extract modifier information from GBM, and also let GBM
users inform the implementation that it intends to use the modifiers.
This reverts commit 6a0d036483caf87d43ebe2edd1905873446c9589.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Acked-by: Ben Widawsky <ben@bwidawsk.net>
Tested-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/intel_mipmap_tree.c')
-rw-r--r-- | src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c index 3d8f48e..94f6333 100644 --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c @@ -144,8 +144,7 @@ compute_msaa_layout(struct brw_context *brw, mesa_format format, * by half the block width, and Y coordinates by half the block height. */ void -intel_get_non_msrt_mcs_alignment(const struct brw_context *brw, - const struct intel_mipmap_tree *mt, +intel_get_non_msrt_mcs_alignment(const struct intel_mipmap_tree *mt, unsigned *width_px, unsigned *height) { switch (mt->tiling) { @@ -157,11 +156,6 @@ intel_get_non_msrt_mcs_alignment(const struct brw_context *brw, *height = 4; break; case I915_TILING_X: - /* The docs are somewhat confusing with the way the tables are displayed. - * However, it does clearly state: "MCS and Lossless compression is - * supported for TiledY/TileYs/TileYf non-MSRTs only." - */ - assert(brw->gen < 9); *width_px = 64 / mt->cpp; *height = 2; } @@ -1558,7 +1552,7 @@ intel_miptree_alloc_non_msrt_mcs(struct brw_context *brw, const mesa_format format = MESA_FORMAT_R_UINT32; unsigned block_width_px; unsigned block_height; - intel_get_non_msrt_mcs_alignment(brw, mt, &block_width_px, &block_height); + intel_get_non_msrt_mcs_alignment(mt, &block_width_px, &block_height); unsigned width_divisor = block_width_px * 4; unsigned height_divisor = block_height * 8; |