mesa/src/panfrost/vulkan
Alyssa Rosenzweig 6f3eea5ddb panfrost: Separate core ID range from core count
To query the core count, the hardware has a SHADERS_PRESENT register containing
a mask of shader cores connected. The core count equals the number of 1-bits,
regardless of placement. This value is useful for public consumption (like
in clinfo).

However, internally we are interested in the range of core IDs.
We usually query core count to determine how many cores to allocate various
per-core buffers for (performance counters, occlusion queries, and the stack).
In each case, the hardware writes at the index of its core ID, so we have to
allocate enough for entire range of core IDs. If the core mask is
discontiguous, this necessarily overallocates.

Rename the existing core_count to core_id_range, better reflecting its
definition and purpose, and repurpose core_count for the actual core count.

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17265>
2022-07-08 01:14:55 +00:00
..
meson.build panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_cmd_buffer.c panvk: Use common CmdBeginRenderPass 2022-06-13 17:27:36 +00:00
panvk_cs.c panvk: Use a flat sysvals struct 2022-05-12 10:53:16 +00:00
panvk_cs.h panvk: Use a flat sysvals struct 2022-05-12 10:53:16 +00:00
panvk_descriptor_set.c panvk: Use the vk_pipeline_layout base struct 2022-06-29 20:31:58 +00:00
panvk_device.c vulkan: Depend on vk_pipeline_layout in vk_cmd_enqueue 2022-06-29 20:31:58 +00:00
panvk_formats.c panvk: Stop using VK_OUTARRAY_MAKE() 2022-03-25 11:00:03 +00:00
panvk_image.c panvk: Report row_stride in GetImageSubresourceLayout 2022-05-03 14:20:15 +00:00
panvk_mempool.c panvk: Fix allocation of BOs bigger than the slab size 2021-10-04 12:17:07 +00:00
panvk_mempool.h panvk: Fix allocation of BOs bigger than the slab size 2021-10-04 12:17:07 +00:00
panvk_pass.c panvk: Non-destructively stub GetRenderAreaGranularity 2022-03-08 17:03:47 +00:00
panvk_pipeline.c panvk: Support creation of compute pipelines 2022-03-09 04:50:41 +00:00
panvk_pipeline_cache.c panvk: Stub pipeline cache using the common code 2022-05-09 13:40:17 +00:00
panvk_private.h panvk: Use the vk_pipeline_layout base struct 2022-06-29 20:31:58 +00:00
panvk_query.c panvk: Implement VK_KHR_synchronization2 2022-03-18 08:15:50 +00:00
panvk_shader.c panvk: Use vk_shader_module 2022-03-15 23:13:16 +00:00
panvk_util.c panvk: Switch to the new vk_error helpers 2021-10-07 20:51:36 +00:00
panvk_varyings.h panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_cmd_buffer.c panfrost: Separate core ID range from core count 2022-07-08 01:14:55 +00:00
panvk_vX_cmd_buffer.h panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_cs.c panvk: Use the vk_pipeline_layout base struct 2022-06-29 20:31:58 +00:00
panvk_vX_cs.h panvk: Fix per-instance attribute handling 2022-03-16 09:57:51 -05:00
panvk_vX_descriptor_set.c panvk: Use the vk_descriptor_set_layout base struct 2022-06-29 20:31:58 +00:00
panvk_vX_device.c panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_device.h panvk: Convert to the common sync/submit framework 2022-03-17 16:22:10 +00:00
panvk_vX_image.c panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_meta.c panfrost: Move genxml related files to a subdir 2021-09-30 10:30:19 +00:00
panvk_vX_meta.h panvk: Implement vkCmdCopyImage() 2021-09-21 15:01:15 +02:00
panvk_vX_meta_blit.c panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_meta_clear.c panvk: Simplify depth clear preload condition 2022-06-13 17:27:36 +00:00
panvk_vX_meta_copy.c panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_nir_lower_descriptors.c panvk: Use the vk_pipeline_layout base struct 2022-06-29 20:31:58 +00:00
panvk_vX_pipeline.c panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_vX_shader.c panvk: Drop support for Midgard 2022-06-08 18:43:06 +00:00
panvk_wsi.c panvk: Use the common AcquireNextImage implementation 2022-06-10 01:33:12 +00:00