• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Rules for changes that impact either freedreno or turnip.
2.freedreno-common-rules:
3  rules:
4    - !reference [.test, rules]
5    - !reference [.no_scheduled_pipelines-rules, rules]
6    - changes: &freedreno_core_file_list
7        - src/freedreno/ci/gitlab-ci.yml
8        - src/freedreno/ci/gitlab-ci-inc.yml
9        - src/freedreno/ci/deqp-$DEQP_SUITE.toml
10        - src/freedreno/ci/$GPU_VERSION-fails.txt
11        - src/freedreno/ci/$GPU_VERSION-flakes.txt
12        - src/freedreno/ci/$GPU_VERSION-skips.txt
13        - src/freedreno/ci/$GPU_VERSION-slow-skips.txt
14        - src/freedreno/ci/$PIGLIT_TRACES_FILE
15        - src/freedreno/ci/$GPU_VERSION-vkd3d-fails.txt
16        - src/freedreno/ci/$GPU_VERSION-vkd3d-flakes.txt
17        - src/freedreno/ci/$GPU_VERSION-vkd3d-skips.txt
18        - src/freedreno/common/**/*
19        - src/freedreno/drm/**/*
20        - src/freedreno/fdl/**/*
21        - src/freedreno/ir3/**/*
22        - src/freedreno/isa/**/*
23        - src/freedreno/registers/**/*
24      when: on_success
25
26.freedreno-common-manual-rules:
27  extends: .no-auto-retry
28  rules:
29    - !reference [.test, rules]
30    - !reference [.core-manual-rules, rules]
31    - changes:
32        *freedreno_core_file_list
33      when: manual
34
35.freedreno-rules:
36  rules:
37    - !reference [.freedreno-common-rules, rules]
38    - !reference [.gl-rules, rules]
39    - changes: &freedreno_file_list
40        - src/freedreno/ir2/**/*
41        - src/gallium/drivers/freedreno/**/*
42        - src/gallium/winsys/freedreno/**/*
43      when: on_success
44
45.freedreno-manual-rules:
46  rules:
47    - !reference [.freedreno-common-manual-rules, rules]
48    - !reference [.gl-manual-rules, rules]
49    - changes: *freedreno_file_list
50      when: manual
51
52.turnip-rules:
53  rules:
54    - !reference [.freedreno-common-rules, rules]
55    - !reference [.vulkan-rules, rules]
56    - changes: &turnip_file_list
57        - src/freedreno/vulkan/**/*
58      when: on_success
59
60.turnip-manual-rules:
61  rules:
62    - !reference [.freedreno-common-manual-rules, rules]
63    - !reference [.vulkan-manual-rules, rules]
64    - changes: *turnip_file_list
65      when: manual
66
67
68.google-freedreno-rules:
69  stage: freedreno
70  rules:
71    - !reference [.test, rules]
72    - !reference [.google-freedreno-farm-rules, rules]
73    - !reference [.freedreno-rules, rules]
74
75.collabora-freedreno-rules:
76  stage: freedreno
77  rules:
78    - !reference [.test, rules]
79    - !reference [.collabora-farm-rules, rules]
80    - !reference [.freedreno-rules, rules]
81
82.google-freedreno-manual-rules:
83  stage: freedreno-postmerge
84  extends: .no-auto-retry
85  rules:
86    - !reference [.test, rules]
87    - !reference [.google-freedreno-farm-manual-rules, rules]
88    - !reference [.freedreno-manual-rules, rules]
89
90.collabora-freedreno-manual-rules:
91  stage: freedreno-postmerge
92  extends: .no-auto-retry
93  rules:
94    - !reference [.test, rules]
95    - !reference [.collabora-farm-manual-rules, rules]
96    - !reference [.freedreno-manual-rules, rules]
97
98
99.google-turnip-rules:
100  stage: freedreno
101  rules:
102    - !reference [.test, rules]
103    - !reference [.google-freedreno-farm-rules, rules]
104    - !reference [.turnip-rules, rules]
105
106.collabora-turnip-rules:
107  stage: freedreno
108  rules:
109    - !reference [.test, rules]
110    - !reference [.collabora-farm-rules, rules]
111    - !reference [.turnip-rules, rules]
112
113.google-turnip-manual-rules:
114  stage: freedreno-postmerge
115  extends: .no-auto-retry
116  rules:
117    - !reference [.test, rules]
118    - !reference [.google-freedreno-farm-manual-rules, rules]
119    - !reference [.turnip-manual-rules, rules]
120
121.collabora-turnip-manual-rules:
122  stage: freedreno-postmerge
123  extends: .no-auto-retry
124  rules:
125    - !reference [.test, rules]
126    - !reference [.collabora-farm-manual-rules, rules]
127    - !reference [.turnip-manual-rules, rules]
128
129# For piglit and skqp test jobs that run both GL and VK tests.
130.google-freedreno-turnip-rules:
131  stage: freedreno
132  rules:
133    - !reference [.test, rules]
134    - !reference [.google-freedreno-rules, rules]
135    - !reference [.google-turnip-rules, rules]
136
137.google-freedreno-turnip-manual-rules:
138  stage: freedreno-postmerge
139  extends: .no-auto-retry
140  rules:
141    - !reference [.test, rules]
142    - !reference [.google-freedreno-manual-rules, rules]
143    - !reference [.google-turnip-manual-rules, rules]
144
145.collabora-freedreno-turnip-rules:
146  stage: freedreno
147  rules:
148    - !reference [.test, rules]
149    - !reference [.collabora-freedreno-rules, rules]
150    - !reference [.collabora-turnip-rules, rules]
151
152.collabora-freedreno-turnip-manual-rules:
153  stage: freedreno-postmerge
154  extends: .no-auto-retry
155  rules:
156    - !reference [.test, rules]
157    - !reference [.collabora-freedreno-manual-rules, rules]
158    - !reference [.collabora-turnip-manual-rules, rules]
159
160.valve-freedreno-manual-rules:
161  stage: freedreno-postmerge
162  extends: .no-auto-retry
163  rules:
164    - !reference [.test, rules]
165    - !reference [.valve-farm-manual-rules, rules]
166    - !reference [.freedreno-manual-rules, rules]
167
168.valve-freedreno-turnip-manual-rules:
169  stage: freedreno-postmerge
170  extends: .no-auto-retry
171  rules:
172    - !reference [.test, rules]
173    - !reference [.valve-farm-manual-rules, rules]
174    - !reference [.turnip-manual-rules, rules]
175
176.google-freedreno-rules-restricted:
177  stage: freedreno
178  rules:
179    - !reference [.test, rules]
180    - !reference [.restricted-rules, rules]
181    - !reference [.google-freedreno-rules, rules]
182
183.collabora-freedreno-rules-restricted:
184  stage: freedreno
185  rules:
186    - !reference [.test, rules]
187    - !reference [.restricted-rules, rules]
188    - !reference [.collabora-freedreno-rules, rules]
189
190.google-freedreno-rules-performance:
191  stage: performance
192  extends: .no-auto-retry
193  rules:
194    - !reference [.test, rules]
195    - !reference [.performance-rules, rules]
196    - !reference [.google-freedreno-manual-rules, rules]
197  allow_failure: true # see comment in .performance-rules, which we don't inherit this line from.
198  variables:
199    # Ensure that we are using the release build artifact
200    S3_ARTIFACT_NAME: mesa-arm64-default-release
201  needs:
202    - debian/baremetal_arm64_test
203    - debian-arm64-release
204  dependencies: null
205
206.collabora-freedreno-rules-performance:
207  stage: performance
208  extends: .no-auto-retry
209  rules:
210    - !reference [.test, rules]
211    - !reference [.performance-rules, rules]
212    - !reference [.collabora-freedreno-manual-rules, rules]
213  allow_failure: true # see comment in .performance-rules, which we don't inherit this line from.
214  variables:
215    JOB_PRIORITY: 40
216    # Ensure that we are using the release build artifact
217    LAVA_S3_ARTIFACT_NAME: mesa-arm64-default-release
218    S3_ARTIFACT_NAME: mesa-python-ci-artifacts
219  needs:
220    - debian/x86_64_build
221    - debian-arm64-release
222  dependencies: null
223
224
225# Status: https://lava.collabora.dev/scheduler/device_type/sc7180-trogdor-kingoftown
226.lava-sc7180-trogdor-kingoftown:arm64:
227  variables:
228    BOOT_METHOD: depthcharge
229    DEVICE_TYPE: sc7180-trogdor-kingoftown
230    DTB: sc7180-trogdor-kingoftown
231#   FDO_CI_CONCURRENT: ?
232    # Increase the hangcheck timer for our spilling tests which bump up against
233    # the .5s default.
234    FREEDRENO_HANGCHECK_MS: 2000
235    FARM: collabora
236    GPU_VERSION: freedreno-a618
237    KERNEL_IMAGE_TYPE: ""
238    RUNNER_TAG: mesa-ci-x86-64-lava-sc7180-trogdor-kingoftown
239    VK_DRIVER: freedreno
240
241# Status: https://lava.collabora.dev/scheduler/device_type/sc7180-trogdor-lazor-limozeen
242.lava-sc7180-trogdor-lazor-limozeen:arm64:
243  variables:
244    BOOT_METHOD: depthcharge
245    DEVICE_TYPE: sc7180-trogdor-lazor-limozeen
246    DTB: sc7180-trogdor-lazor-limozeen-nots-r5
247#   FDO_CI_CONCURRENT: ?
248    # Increase the hangcheck timer for our spilling tests which bump up against
249    # the .5s default.
250    FREEDRENO_HANGCHECK_MS: 2000
251    FARM: collabora
252    GPU_VERSION: freedreno-a618
253    KERNEL_IMAGE_TYPE: ""
254    RUNNER_TAG: mesa-ci-x86-64-lava-sc7180-trogdor-lazor-limozeen
255    VK_DRIVER: freedreno
256
257# Status: https://lava.collabora.dev/scheduler/device_type/sm8350-hdk
258.lava-sm8350-hdk:arm64:
259  variables:
260    BOOT_METHOD: fastboot
261    DEVICE_TYPE: sm8350-hdk
262    DTB: sm8350-hdk
263#   FDO_CI_CONCURRENT: ?
264    # Increase the hangcheck timer for our spilling tests which bump up against
265    # the .5s default.
266    FREEDRENO_HANGCHECK_MS: 2000
267    FARM: collabora
268    GPU_VERSION: freedreno-a660
269    KERNEL_IMAGE_NAME: "Image.gz"
270    KERNEL_IMAGE_TYPE: ""
271    RUNNER_TAG: mesa-ci-x86-64-lava-sm8350-hdk
272    VK_DRIVER: freedreno
273
274
275.google-freedreno-test:
276  extends:
277    - .baremetal-test-arm64
278    - .google-freedreno-rules
279  variables:
280    VK_DRIVER: freedreno
281    FLAKES_CHANNEL: "#freedreno-ci"
282    PIGLIT_PLATFORM: mixed_glx_egl
283    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 $BM_KERNEL_EXTRA_ARGS root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init $BM_KERNELARGS"
284    FARM: google
285  script:
286    - ./install/bare-metal/fastboot.sh
287
288.google-freedreno-test-traces:
289  extends:
290    - .piglit-traces-test
291  variables:
292    HWCI_TEST_SCRIPT: "/install/piglit/piglit-traces.sh"
293    HWCI_START_XORG: 1
294    PIGLIT_TRACES_FILE: traces-freedreno.yml
295  artifacts:
296    reports:
297      junit: results/junit.xml
298
299.a306-test:
300  extends:
301    - .google-freedreno-test
302  variables:
303    BM_KERNEL: Image.gz
304    BM_DTB: apq8016-sbc-usb-host
305    DEVICE_TYPE: apq8016-sbc-usb-host
306    GPU_VERSION: freedreno-a307
307  timeout: 20m
308  tags:
309    - google-freedreno-db410c
310
311# 8 devices (2023-04-15)
312.a530-test:
313  extends:
314    - .google-freedreno-test
315  variables:
316    BM_KERNEL: Image.gz
317    BM_DTB: apq8096-db820c
318    DEVICE_TYPE: apq8096-db820c
319    GPU_VERSION: freedreno-a530
320  timeout: 20m
321  tags:
322    - google-freedreno-db820c
323
324# 6 devices (2023-07-06)
325.a630-test:
326  extends:
327    - .google-freedreno-test
328  variables:
329    FDO_CI_CONCURRENT: 10
330    BM_KERNEL: cheza-kernel
331    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init"
332    DEVICE_TYPE: sdm845-cheza-r3
333    GPU_VERSION: freedreno-a630
334  timeout: 20m
335  tags:
336    - google-freedreno-cheza
337  script:
338    - ./install/bare-metal/cros-servo.sh
339
340.a630-full:
341  tags:
342    - google-freedreno-cheza-long
343
344# CI-tron
345
346.b2c-freedreno-vk-test:
347  extends:
348    - .b2c-arm64-test-vk
349  variables:
350    VK_DRIVER: freedreno
351
352.a750-mupuf:
353  variables:
354    FDO_CI_CONCURRENT: 8
355    RUNNER_FARM_LOCATION: mupuf
356    B2C_KERNEL_URL: 'https://fs.mupuf.org/hdk8650/2025-01-23-msm-gpu-fault-fixes-msm-next-6dbabc6/linux-arm64'
357    B2C_FIRMWARE_URL: 'https://fs.mupuf.org/hdk8650/sm8650-hdk-firmware.cpio.xz'
358    B2C_DTB_URL: 'https://fs.mupuf.org/hdk8650/2025-01-23-msm-gpu-fault-fixes-msm-next-6dbabc6/linux-arm64.dtbs.cpio.xz'
359    B2C_DTB_MATCH: 'boot/dtbs/qcom/sm8650-hdk.dtb'
360    B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g'
361    B2C_TIMEOUT_FIRST_CONSOLE_ACTIVITY_SECONDS: 30
362    B2C_TIMEOUT_FIRST_CONSOLE_ACTIVITY_RETRIES: 3
363    B2C_TIMEOUT_BOOT_WD_SECONDS: 20
364    B2C_TIMEOUT_BOOT_WD_RETRIES: 5
365    B2C_BOOT_WD_START_REGEX: 'VB: RWDeviceState: Succeed using devinfo!'  # A line repeated during firmware boot
366    B2C_BOOT_WD_STOP_REGEX: 'CPU features: detected:'                     # A line repeated during Linux boot
367    GPU_VERSION: freedreno-a750
368  tags:
369    - farm:$RUNNER_FARM_LOCATION
370    - dt_gpu:codename:a750
371