Commit Graph

3401 Commits

Author SHA1 Message Date
Juan A. Suarez Romero 77aa8d44c4 broadcom/ci: disable baremetal rusticl jobs for ci-tron
After a while testing in parallel baremetal and ci-tron rusticl jobs,
disable baremetal ones and keep ci-tron jobs.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36486>
2025-07-31 09:49:37 +00:00
Eric Engestrom eee467f78a broadcom/ci: drop redundant HWCI_TEST_SCRIPT already set by .broadcom-test
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:06 +00:00
Eric Engestrom fb32b79550 broadcom/ci: drop redundant script: already set by .broadcom-test
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36354>
2025-07-30 23:18:05 +00:00
Alejandro Piñeiro fa8731b859 broadcom/compiler: update compact arrays comment
PIPE_CAP_NIR_COMPACT_ARRAYS is gone since commit
2e5d49b3dd

v3d properly uses the compact_arrays option from
nir_shader_compiler_options since commit
d694c1b094

Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36446>
2025-07-30 22:45:33 +00:00
Juan A. Suarez Romero 99c5915b56 broadcom/simulator: add support for GPU reset counters
As this is a simulator, it will always report no reset.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35965>
2025-07-30 11:26:20 +02:00
Juan A. Suarez Romero 40a937407a broadcom: check for GPU reset counters support
This checks if kernel supports GPU reset counters, which are actually
two counters: one for resets caused by current context, and another one
for resets caused in general.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35965>
2025-07-30 11:26:20 +02:00
Juan A. Suarez Romero 2188994c81 broadcom: remove obvious comment
It is obvious that we check the return value to see if kernel supports
the feature, so no need to add a comment.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35965>
2025-07-30 11:26:19 +02:00
Antonio Ospite 1b55314615 broadcom/compiler: prevent FALLTHROUGH error with C23
When building for the C23 standard, the compiler gives the following
error:

-----------------------------------------------------------------------
../src/broadcom/compiler/vir_register_allocate.c
../src/broadcom/compiler/vir_register_allocate.c: In function ‘update_graph_and_reg_classes_for_inst’:
../src/broadcom/compiler/vir_register_allocate.c:1225:44: error: expected statement before ‘;’ token
 1225 |                                 FALLTHROUGH;
      |                                            ^
../src/broadcom/compiler/vir_register_allocate.c:1225:44: warning: ‘fallthrough’ attribute ignored [-Wattributes]
../src/broadcom/compiler/vir_register_allocate.c:1225:44: error: suggest braces around empty body in an ‘else’ statement [-Werror=empty-body]
../src/broadcom/compiler/vir_register_allocate.c:1222:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1222 |                         if (c->devinfo->ver >= 71)
      |                            ^
../src/broadcom/compiler/vir_register_allocate.c:1226:17: note: here
 1226 |                 case 1:
      |                 ^~~~
-----------------------------------------------------------------------

Fix that by doing what the compiler suggests, i.e. by using braces
around empty body in the ‘else’ statement.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36323>
2025-07-29 14:07:07 +00:00
Maíra Canal a06e1e81e0 broadcom/ci: remove synchronization-related flakes and skips
After commit "vulkan: don't destroy vk_sync_timeline if a point is
still pending", dEQP-VK.synchronization*.timeline_semaphore.* is
no longer hurting other tests.

Signed-off-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35921>
2025-07-24 18:49:12 -03:00
Eric Engestrom b45cdfe4e6 broadcom/ci: document recent flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36307>
2025-07-23 15:30:52 +00:00
Eric Engestrom 38a3f00029 broadcom/ci: sort rpi4 flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36307>
2025-07-23 15:30:52 +00:00
Jose Maria Casanova Crespo f0b3a4fcaf v3dv: limit V3D_TFU_READAHEAD to buffers/images with USAGE_TRANSFER_SRC flag
We avoid adding unconditionally the 64-bytes padding to all usages
of the vulkan memory allocations. The readahead padding is only added
for buffers/images with USAGE_TRANSFER_SRC_BIT usage enabled as this
is enough for having a full vk-cts without reported MMU TFU errors.

vk-cts doesn't exercise the added image memory requirements codepath to
handle this readahead. This is because the required 64-bytes image
alignments for images with flag VK_IMAGE_USAGE_TRANSFER_SRC_BIT.
But the alignment didn't cover when the image is already aligned to
64-bytes at the end of the memory page.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36159>
2025-07-23 10:44:02 +00:00
Jose Maria Casanova Crespo 310aa198f4 v3dv: Move V3D_TFU_READAHEAD_SIZE to src/broadcom/common
We will use it in v3d.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36159>
2025-07-23 10:44:01 +00:00
Georg Lehmann 3bc691f116 broadcom/compiler: use NIR_PASS for nir_schedule
This should work now that the pass returns progress and invalidates  metadata.

Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36291>
2025-07-23 06:47:58 +00:00
Juan A. Suarez Romero a977e72c29 v3d/ci: unlock rusticl citron jobs
Run baremetal and ci-tron rusticl jobs in parallel for a while.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36283>
2025-07-22 09:04:42 +00:00
Juan A. Suarez Romero eca3a8f2cb broadcom/ci: disable baremetal jobs for ci-tron
After a while testing in parallel baremetal and ci-tron jobs, disable
baremetal ones and keep ci-tron jobs.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36283>
2025-07-22 09:04:42 +00:00
Christian Gmeiner 8a1b1d8bd5 v3dv: Make use of hash table helpers
There is no need to have an own copy.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36218>
2025-07-18 12:16:36 +00:00
Yiwei Zhang 64a4442090 v3dv: amend AHB buffer support
...via adopting vk_android_get_ahb_buffer_properties.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang 4ee67ba967 v3dv: adopt vk_android_get_ahb_image_properties
The runtime vk_android.h header has proper android detection inside, so
no need to wrap it with redundant android detection. Meanwhile, the enum
VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID is
defined in the vulkan_core.h, so no need Android wrap either.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Eric Engestrom 5ebe02db30 ci/piglit: provide default results file name
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36145>
2025-07-16 12:54:06 +00:00
Eric Engestrom 9c42e66de1 ci/piglit: provide default device name
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36145>
2025-07-16 12:54:06 +00:00
Jose Maria Casanova Crespo 14399da3c6 v3dv: Do not increase TFU READAHEAD for imported buffers size
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13508
Fixes: 0bcb82048c ("v3dv: avoid TFU reading unmapped pages beyond the end of the buffers")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36134>
2025-07-16 10:10:44 +00:00
Eric Engestrom 52f473ae11 broadcom/ci: document recent flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36137>
2025-07-15 22:27:40 +00:00
Eric Engestrom b2845f3a3f broadcom/ci: document recent flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36071>
2025-07-11 15:04:21 +02:00
Eric Engestrom 634ecaf4f3 vc4/ci: sort dEQP-GLES2 flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36071>
2025-07-11 15:04:21 +02:00
Yiwei Zhang 50e299b71c v3dv: adopt wsi_common_get_memory
v2: refactor back to the minimal change to avoid unused variable

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36035>
2025-07-10 09:51:39 +00:00
Yiwei Zhang ec71925268 v3dv: adopt wsi_common_create_swapchain_image
v2: drop unused variable for Android build

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36035>
2025-07-10 09:51:39 +00:00
Juan A. Suarez Romero b09a07bca1 broadcom/ci: unlock some CI-Tron jobs
Enable CI-Tron jobs for piglit full run for rpi3 and skqp jobs for rpi4
and rpi5. They will run in parallel with the baremetal ones for
comparison.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36032>
2025-07-09 20:16:32 +00:00
Daniel Stone 94b51503b3 vulkan: Remove build-system remnants of wl_drm support
We don't need to depend on the generated wl_drm files, as wl_drm support
was removed from Vulkan quite some time ago.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Fixes: e090316570 ("vulkan/wsi/wayland: drop support for wl_drm")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35885>
2025-07-09 17:49:58 +00:00
Daniel Schürmann 2c51a8870d nir: add nir_vectorize_cb callback parameter to nir_lower_phis_to_scalar()
Similar to nir_lower_alu_width(), the callback can return the
desired number of components for a phi, or 0 for no lowering.

The previous behavior of nir_lower_phis_to_scalar() with lower_all=true
can be elicited via nir_lower_all_phis_to_scalar() while the previous
behavior with lower_all=false now corresponds to nir_lower_phis_to_scalar()
with NULL callback.

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35783>
2025-07-08 15:33:59 +00:00
Eric Engestrom d1692077ca broadcom/ci: skip tests that sometimes time out
Some of these might be related to the new infra, or they might have also
happened with the old infra. The joys of timeout flakes.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35215>
2025-07-08 11:14:43 +02:00
Eric Engestrom 4b06e1fcf5 broadcom/ci: add ci-tron variant of each job
Traces jobs upload their results at the end, making them incompatible
with the current design of CI-tron which doesn't allow internet access
for security reasons, so they are not included for now.

We're working on a solution for controlled access to specific domains,
and will add the traces jobs once that's ready.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35215>
2025-07-08 11:14:43 +02:00
Eric Engestrom 6c98a3fd0e broadcom/ci: add definitions for ci-tron jobs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35215>
2025-07-08 11:09:51 +02:00
Marek Olšák 89285e25b6 nir: remove nir_shader_compiler_options::lower_all_io_to_temps
All drivers should report support_indirect_* correctly, so this
is redundant.

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35945>
2025-07-08 06:11:43 +00:00
Juan A. Suarez Romero 3c7a8b4913 broadcom/ci: update expected results
Add new failures/flakes.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35964>
2025-07-07 11:07:40 +00:00
Juan A. Suarez Romero 044800cf5a vc4/ci: disable skqp job
This is quite unstable, with lots of hangs. So just disable it.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35964>
2025-07-07 11:07:40 +00:00
Alyssa Rosenzweig d31cb824df treewide: use VARYING_BIT_*
Via Coccinelle patch generated by the following Python:

  varys = [ "POS", "COL0", "COL1", "FOGC", "TEX0", "TEX1", "TEX2", "TEX3", "TEX4",
           "TEX5", "TEX6", "TEX7", "PSIZ", "BFC0", "BFC1", "EDGE", "CLIP_VERTEX",
           "CLIP_DIST0", "CLIP_DIST1", "CULL_DIST0", "CULL_DIST1", "PRIMITIVE_ID",
           "PRIMITIVE_COUNT", "LAYER", "VIEWPORT", "FACE",
           "PRIMITIVE_SHADING_RATE", "PNTC", "TESS_LEVEL_OUTER",
           "TESS_LEVEL_INNER", "PRIMITIVE_INDICES", "BOUNDING_BOX0",
           "BOUNDING_BOX1", "VIEWPORT_MASK", "CULL_PRIMITIVE" ]
  t = """
  @@
  @@

  -(1 << VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  @@
  @@

  -BITFIELD_BIT(VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  @@
  @@

  -(1ull << VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  @@
  @@

  -BITFIELD64_BIT(VARYING_SLOT_${V})
  +VARYING_BIT_${V}

  """
  for v in varys:
      from mako.template import Template
      print(Template(t).render(V = v))

Closes: #13453
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> [panfrost, common]
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> [broadcom]
Reviewed-by: Corentin Noël <corentin.noel@collabora.com> [virgl]
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> [zink]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35917>
2025-07-04 19:01:04 +00:00
Eric Engestrom 8d0edd4be5 broadcom/ci: move job timeout definitions to jobs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35883>
2025-07-02 14:42:40 +02:00
Alyssa Rosenzweig 3c2f46fcac treewide: use nir_break_if with named if
Via Coccinelle patch:

    @@
    expression builder, condition;
    identifier nif;
    @@

    -nir_if *nif = nir_push_if(builder, condition);
    -{
    -nir_jump(builder, nir_jump_break);
    -}
    -nir_pop_if(builder, nif);
    +nir_break_if(builder, condition);

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35794>
2025-06-30 14:51:54 -04:00
Alejandro Piñeiro 0f830c5572 v3d/compiler: properly handle the RA debug option
RA is intended to dump the vir when register allocation fails, so it
should be checked when we set c->compilation_result to
FAILED_REGISTER_ALLOCATION.

But it seems that this option was forgotten when on some of the
refactorings around compilation_result, as was let on an old condition
that reported register allocation failures.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35823>
2025-06-30 09:36:04 +00:00
Eric Engestrom b885e39c63 broadcom/ci: document flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787>
2025-06-27 09:09:53 +00:00
Marek Olšák 1754507d49 nir: rename nir_lower_io_to_temporaries -> nir_lower_io_vars_to_temporaries
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35760>
2025-06-26 18:20:54 +00:00
Marek Olšák 1e03827c77 nir: rename nir_lower_io_arrays_to_elements -> nir_lower_io_array_vars_to_elements
same for *_no_indirects

Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35760>
2025-06-26 18:20:54 +00:00
Marek Olšák 2aa94caf82 nir: rename nir_lower_io_to_vector -> nir_opt_vectorize_io_vars
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35760>
2025-06-26 18:20:50 +00:00
Marek Olšák 439d805291 nir: rename nir_lower_io_to_scalar_early -> nir_lower_io_vars_to_scalar
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35760>
2025-06-26 18:20:49 +00:00
Eric Engestrom 5848e3a894 broadcom/ci: document recent flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35693>
2025-06-23 16:58:19 +00:00
Yiwei Zhang 61a90a154d v3dv: use common vk_android_get_front_buffer_usage helper
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35568>
2025-06-23 00:46:42 +00:00
Emma Anholt eae86f455c v3d: Stop advertising support for HW clip planes.
The GL frontend is perfectly good at lowering it like we do.  Cuts out a
bunch of duplicate code.

We still have ucp_enables for the FS due to lowering of CLIPDIST to
discards in the FS.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8953>
2025-06-19 21:44:55 +00:00
Mel Henning f7aa6ba906 vulkan: Specify library_arch in ICD files
This should help vk-icd-loader skip libraries of the wrong bit width.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35567>
2025-06-19 17:30:24 +00:00
Iago Toral Quiroga 20ec897598 v3dv: switch to using nir_intrinsic_load_input_attachment_coord
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35569>
2025-06-19 07:55:23 +00:00