From d15ba8d14a7c5210c32a4e5d754f54c927148b6f Mon Sep 17 00:00:00 2001 From: Valentine Burley Date: Fri, 20 Feb 2026 11:31:30 +0100 Subject: [PATCH] turnip/ci: Add Android job with ANGLE on a618 This is a Cuttlefish-based Android job running with DRM native context, using Turnip and ANGLE. Signed-off-by: Valentine Burley Part-of: --- src/freedreno/ci/deqp-tu-android.toml | 45 ++++++++++++++++++++++ src/freedreno/ci/freedreno-a618-fails.txt | 6 +++ src/freedreno/ci/freedreno-a618-flakes.txt | 7 ++++ src/freedreno/ci/gitlab-ci.yml | 11 ++++++ 4 files changed, 69 insertions(+) create mode 100644 src/freedreno/ci/deqp-tu-android.toml diff --git a/src/freedreno/ci/deqp-tu-android.toml b/src/freedreno/ci/deqp-tu-android.toml new file mode 100644 index 00000000000..3ec7932c503 --- /dev/null +++ b/src/freedreno/ci/deqp-tu-android.toml @@ -0,0 +1,45 @@ +# Run one GLES 2 test to check the version and renderer +[[deqp]] +deqp = "/data/deqp/deqp-gles2" +caselists = ["/data/deqp/gles2-main.txt"] +include = [ "dEQP-GLES2.info.renderer" ] +deqp_args = [ + "--deqp-surface-width=256", + "--deqp-surface-height=256", + "--deqp-surface-type=pbuffer", + "--deqp-gl-config-name=rgba8888d24s8ms0", + "--deqp-visibility=hidden" +] +version_check = "GL ES 3.2.*ANGLE 2.1.1 git" +renderer_check = "ANGLE.*Adreno" + +# AHB test set +[[deqp]] +deqp = "/data/deqp/deqp-vk" +caselists = ["/data/deqp/vk-main.txt"] +include = ["dEQP-VK.api.external.memory.android_hardware_buffer.*"] +renderer_check = "Adreno" +prefix = "ahb-" + +# Basic fractioned VKCTS test set +[[deqp]] +deqp = "/data/deqp/deqp-vk" +caselists = [ "/data/deqp/vk-main.txt" ] +tests_per_group = 10000 +skips = ["/data/deqp/android-skips.txt"] +timeout = 120 +fraction = 300 +prefix = "android-" + +# Basic EGL test set +[[deqp]] +deqp = "/data/deqp/deqp-egl-android" +caselists = ["/data/deqp/egl-main.txt"] +deqp_args = [ + "--deqp-surface-width=256", + "--deqp-surface-height=256", + "--deqp-surface-type=pbuffer", + "--deqp-gl-config-name=rgba8888d24s8ms0", + "--deqp-visibility=hidden" +] +prefix = "android-" diff --git a/src/freedreno/ci/freedreno-a618-fails.txt b/src/freedreno/ci/freedreno-a618-fails.txt index 9554ea78a88..77dcd6d582e 100644 --- a/src/freedreno/ci/freedreno-a618-fails.txt +++ b/src/freedreno/ci/freedreno-a618-fails.txt @@ -242,6 +242,7 @@ dEQP-VK.transform_feedback.simple_optimized_gpl.draw_indirect_counter_offset_508 dEQP-VK.transform_feedback.simple_optimized_gpl.draw_indirect_multiview_counter_offset_16,Fail dEQP-VK.transform_feedback.simple_optimized_gpl.draw_indirect_multiview_counter_offset_244,Fail dEQP-VK.transform_feedback.simple_optimized_gpl.draw_indirect_multiview_counter_offset_508,Fail +android-dEQP-VK.transform_feedback.simple_fast_gpl.draw_indirect_counter_offset_244,Fail asan-dEQP-VK.transform_feedback.simple_fast_gpl.draw_indirect_counter_offset_244,Fail gmem-dEQP-VK.transform_feedback.simple.draw_indirect_multiview_counter_offset_16,Fail gmem-dEQP-VK.transform_feedback.simple_fast_gpl.draw_indirect_multiview_counter_offset_16,Fail @@ -497,3 +498,8 @@ vk_xfermodes3,Fail # Initial ANGLE failures angle-dEQP-GLES2.functional.shaders.algorithm.rgb_to_hsl_vertex,Fail + +# Android failures +# ../src/freedreno/vulkan/tu_image.cc:512: VkResult tu_image_update_layout(struct tu_device *, struct tu_image *, uint64_t, const VkSubresourceLayout *) [CHIP = A6XX]: assertion "!image->force_linear_tile" failed +ahb-dEQP-VK.api.external.memory.android_hardware_buffer.ahb_format_properties.image_formats.r8g8b8a8_unorm,Crash +ahb-dEQP-VK.api.external.memory.android_hardware_buffer.ahb_format_properties_2.image_formats.r8g8b8a8_unorm,Crash diff --git a/src/freedreno/ci/freedreno-a618-flakes.txt b/src/freedreno/ci/freedreno-a618-flakes.txt index 6a92b431c69..81133d6e853 100644 --- a/src/freedreno/ci/freedreno-a618-flakes.txt +++ b/src/freedreno/ci/freedreno-a618-flakes.txt @@ -372,3 +372,10 @@ angle-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_sno angle-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_r16ui.texture2d_to_cubemap angle-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_r16i.texture2d_to_cubemap angle-dEQP-GLES31.functional.state_query.program.tesselation_shader_state_get_programiv + +# Android flakes +android-dEQP-VK.binding_model.shader_access.primary_cmd_buf.bind.with_template.sampler_mutable.no_access.single_descriptor.2d_array_base_mip +android-dEQP-VK.pipeline.fast_linked_library.stencil.nocolor.format.d24_unorm_s8_uint.states.fail_wrap.pass_decc.dfail_decc.comp_never.any +android-dEQP-VK.pipeline.fast_linked_library.stencil.nocolor.format.s8_uint.states.fail_repl.pass_decw.dfail_inv.comp_never.any +android-dEQP-VK.pipeline.pipeline_library.stencil.nocolor.format.d32_sfloat_s8_uint_separate_layouts.states.fail_incc.pass_decw.dfail_keep.comp_never.any +android-dEQP-VK.renderpasses.renderpass1.dedicated_allocation.formats.r16g16_uint.input.clear.dont_care.self_dep_draw_use_input_aspect_ms diff --git a/src/freedreno/ci/gitlab-ci.yml b/src/freedreno/ci/gitlab-ci.yml index 34e75f3f6af..67644c5f5a7 100644 --- a/src/freedreno/ci/gitlab-ci.yml +++ b/src/freedreno/ci/gitlab-ci.yml @@ -237,6 +237,17 @@ a618-traces-performance: # a618 tag starts with cbg-1 (not cbg-0) for some reason LAVA_TAGS: "cbg-1" +a618-android: + extends: + - .lava-arm64-test-android + - .lava-sc7180-trogdor-kingoftown:arm64 + - .collabora-freedreno-turnip-rules + - .test-angle + variables: + CUTTLEFISH_GPU_MODE: drm_nctx_guest_angle + DEQP_SUITE: tu-android + FDO_CI_CONCURRENT: 6 # We get OOMkills if we go too wide since VKCTS 1.4.4.0 + a660-angle: extends: - .lava-arm64-test-gl