URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=20f7a73a2c0686c0f8ab541bb8492a2c054ad6d1 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 14:40:31 2020 +0100
panfrost: Allow 3D AFBC on Bifrost v7 This feature doesn't seem to work properly on Midgard, and is flagged as unsupported on Bifrost v6. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4ffe73547d074496fcefe943da2439e43a115922 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 14:48:57 2020 +0100 panfrost: Fix calculation of body/header pointers for 3D AFBC When using 3D AFBC, all headers are placed at the beginning instead of being interleaved with each surface body, which forces us to adjust the calculation in that case. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a6b269a39d82dc652c41f385561da480c7cd5873 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 10:50:02 2020 +0100 panfrost: Allow AFBC on 2D arrays Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f901de6b06d3630da56c98aa38d86485d2b00450 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 21:38:44 2020 +0100 panfrost: Fix panfrost_should_linear_convert() Take 3D/array textures into accound when checking for entire overwrite. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=72444d4d280106c6f0e5f3338d08d01885fc9b12 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Mon Jan 4 09:53:45 2021 +0100 panfrost: Initialize AFBC headers to zero This way we can load uninitialized AFBC surfaces without causing GPU faults. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3c92abe359379066a166f86fe7bfbb4da8029478 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 14:25:51 2020 +0100 panfrost: Use panfrost_get_layer_stride() instead of open-coding it If we don't do that we don't account for CRC buffers. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8a9b2ef82d65132a9c3321d138f2838da8cdf34d Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Mon Dec 14 11:43:22 2020 +0100 panfrost: Enable AFBC support on Bifrost Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8a677cea0a486ced04d6ff81424d578596962240 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 10:31:11 2020 +0100 panfrost: Fix AFBC support on Bifrost Bifrost and Midgard render target and ZS extension descriptors are a bit different, adjust the code to take those differences into account. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dc664d5fb80f24fa0d1787b7b3110154bf5c50dd Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 08:24:39 2020 +0100 panfrost: Use proper format for Z16_UNORM R16_UNORM isn't compatible with AFBC, we need to use the native Z16 format if we want to allow AFBC on those resources. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ebeb3613507e78f2352557afcd9d2aa20e34618a Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 10:57:05 2020 +0100 panfrost: Fix ZS block format v7 definition This field takes 4 bits, not 2. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=44217be92134b03e7426860b42918b1d4602e08e Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 10:42:07 2020 +0100 panfrost: Adjust the format for AFBC textures on Bifrost v7 On Bifrost v7, AFBC textures can't be used with a non-identity component order. Let's patch the format so the component order is always RGB[A]. That means we're lying about the internal format, but that shouldn't be a problem as long as we don't share the resource. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=256d4a3eee448df82b62b6cef539746847007e2c Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 10:37:11 2020 +0100 panfrost: Pass a pipe-like swizzle to panfrost_new_texture() And let the function translate it to a mali swizzle. This way we will be able to adjust the swizzle if needed. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e91cb99ec61154f527879160693ea98b2bdd1aa7 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 11:56:25 2020 +0100 panfrost: Add R5G6B5_UNORM entries to the format tables Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5d4a1bc709cf1021ef8c8689dc6f93b211a65bc6 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 10:27:02 2020 +0100 panfrost: Adjust surface stride calculation to take AFBC into account AFBC strides are different from tiled/linear stride and we need to use the value defined in slice.afbc. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e8b997e175827d8ee907b3813d1e5a05388c606a Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 10:22:20 2020 +0100 panfrost: Add AFBC slice.body_size and slice.{row,surface}_stride fields Those are needed for render target and texture descriptors and can't be easily extracted from the other fields present in panfrost_slice Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7e37a31741218f325b2f02dc308a23fe5d40858c Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 10:06:44 2020 +0100 panfrost: Fix AFBC header_size and slice size calculation 3D AFBC textures have their AFBC headers grouped together at the beginning of the buffer which means the header_size should be multiplied by the depth. 2D arrays have their AFBC headers placed at the beginning of each slice, meaning that the slice size should take them into account. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a9a3b0e21fa73b4584b1fa894d2d246148812e94 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Mon Dec 14 19:52:48 2020 +0100 panfrost: Move AFBC header_size to a sub-struct So we can add more AFBC related fields under this struct. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4dd7991422ce06bc56e9adb82bca3b5c34c59a95 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Thu Dec 17 12:12:28 2020 +0100 panfrost: Add a pan_image_layout object Group the slices, dimension, modifier and array stride in a an object representing the image layout. This way we shrink the number of arguments passed to various pan_texture helpers and simplifies some of the logic along the way. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9e823ec830bfdbc1bb6c3e5aa141f90a86d96a2 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 09:57:52 2020 +0100 panfrost: Stop mixing depth and number of samples Texture depth and MSAA are two different concepts even if they are exclusive on Mali GPUs (depth field is repurposed for sample index there). Let's not mix them and adjust the slice_full_size calculation to take both into account. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=728069485da5b4a2a6d42caa381003e530f54c9d Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Thu Dec 17 12:03:42 2020 +0100 panfrost: Use PAN_V6_SWIZZLE() in pan_blit.c Suggested-by: Icecream95 Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=25eb7c52dc46510a0fbc337e41cacea2bc7eeace Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Thu Dec 17 10:46:38 2020 +0100 panfrost: s/panfrost_slice.size0/panfrost_slice.surface_stride/ This field is encoding the stride between two consecutive surface in a 3D texture. Let's use a name reflecting that. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=284c43ed4bf8bccc85cb6fd9a558ba3b9e55066d Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 09:44:43 2020 +0100 panfrost: Merge panfrost_new_texture() and panfrost_new_texture_bifrost() There's no reason to keep both now that the internal logic has been deduplicated. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1fd3861a719a4d1e0f12aa2e41f23c1b17d5ac47 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 08:45:36 2020 +0100 panfrost: Adjust the compression tag creation for Bifrost Bifrost has a few more compression flags that are worth specifying. Extend panfrost_compression_tag() to deal with those too. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=def5fb9f5efd97160b1862e4dfc0035cae926103 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Fri Dec 18 12:19:07 2020 +0100 panfrost: Define AFBC surface flags Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca265b48d93f3f68a990a65c4a3ba786ac82f09e Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 08:40:33 2020 +0100 panfrost: Pass a dev object to panfrost_needs_explicit_stride() So we can soon use the same path for Bifrost and Midgard. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ab1dec8dd4a5957b500423229c92af17ea52f3ef Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 09:14:48 2020 +0100 panfrost: Merge emit_texture_payload() and emit_texture_payload_v7() The only reason we have two different functions to prepare the texture payload is the different ordering between pre-v7 and v7+ GPUs. Abstract the surface iteration so we can merge panfrost_emit_texture_payload_v7() and panfrost_emit_texture_payload(). Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=062dde41517f4acbc26e969046ab7255e64f5749 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Wed Dec 16 08:36:46 2020 +0100 panfrost: Pass a device object to panfrost_new_texture() We will need it to merge some of the Bifrost and Midgard logic. Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3c5fd5509fca6dc417ef6347d4fc19edf68f5cee Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Mon Dec 14 19:50:08 2020 +0100 panfrost: Group CRC fields in a struct Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cbf68b21fb2b6baf4578c98dd7e91855aa6dfa62 Author: Boris Brezillon <boris.brezil...@collabora.com> Date: Thu Dec 17 10:33:50 2020 +0100 panfrost: Move checksum_bo to panfrost_resource There's no reason to have the checksum_bo at the slice level since there can only be one external CRC BO per resource. Move this field to the panfrost_resource struct. Suggested-by: Icecream95 Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8125> _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit