tu, freedreno/a6xx: Fix setting PC_XS_OUT_CNTL::PRIMITVE_ID

This is supposed to be set when that stage needs the PrimID sysval
preloaded, except for the VS which doesn't have this bit and instead
infers it from the HS or GS bit (depending on whether tess/GS is
enabled). Therefore for HS, GS, and DS we should set it whenever the
corresponding sysval is there. This includes adding a missing
PC_HS_OUT_CNTL, which I confirmed is set when the HS reads PrimID from
the VS. Note that the DS sysval is currently always enabled whenever
there's a GS, if we were to fix that then we should also change the
logic here.

This doesn't fix anything that I know of, but aligns us more with what
the blob does.

Part-of: <!12166>
137 jobs for !12166 with review/freedreno-fix-tess-primid in 40 minutes and 51 seconds (queued for 30 seconds)
latest detached
Status Name Job ID Coverage
  Sanity
passed sanity #12527914

00:00:17

 
  Container
passed debian/arm_build #12527917
aarch64

00:00:21

passed debian/x86_build-base #12527915

00:00:17

passed debian/x86_test-base #12527916

00:00:32

passed fedora/x86_build #12527918

00:00:21

passed windows_build_vs2019 #12527919
windows shell 1809 mesa

00:00:11

 
  Container 2
passed debian/android_build #12527924

00:00:22

passed debian/i386_build #12527921

00:00:22

passed debian/ppc64el_build #12527922

00:00:20

passed debian/s390x_build #12527923

00:00:16

passed debian/x86_build #12527920

00:00:29

passed debian/x86_test-gl #12527925

00:00:17

passed debian/x86_test-vk #12527926

00:00:24

passed kernel+rootfs_amd64 #12527927

00:00:31

passed kernel+rootfs_arm64 #12527928
aarch64

00:00:17

passed kernel+rootfs_armhf #12527929
aarch64

00:00:16

 
  Build X86 64
passed debian-clang #12527936

00:05:14

passed debian-clover #12527937

00:03:47

passed debian-clover-testing #12527932

00:01:18

passed debian-gallium #12527933

00:05:02

passed debian-release #12527934

00:08:32

passed debian-testing #12527930

00:02:52

passed debian-testing-asan #12527931

00:11:14

passed debian-vulkan #12527938

00:00:57

passed fedora-release #12527935

00:01:45

 
  Build Misc
passed debian-android #12527940

00:00:45

passed debian-arm64 #12527942
aarch64

00:02:32

passed debian-arm64-asan #12527943
aarch64

00:02:55

passed debian-arm64-build-test #12527944
aarch64

00:01:30

passed debian-armhf #12527941
aarch64

00:02:36

passed debian/arm_test #12527939

00:00:59

passed debian-i386 #12527946

00:04:32

passed debian-mingw32-x86_64 #12527949

00:02:41

passed debian-ppc64el #12527948

00:02:12

passed debian-s390x #12527947
kvm

00:04:48

passed windows-vs2019 #12527945
windows docker 1809 mesa

00:05:07

 
  Amd
passed radeonsi-stoney-gles2:amd64 #12527954
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:10:35

passed radeonsi-stoney-gles31:amd64 1/2 #12527957
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:10:43

passed radeonsi-stoney-gles31:amd64 2/2 #12527958
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:13:17

passed radeonsi-stoney-gles3:amd64 1/2 #12527955
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:10:29

passed radeonsi-stoney-gles3:amd64 2/2 #12527956
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:08:34

passed radeonsi-stoney-piglit-gl:amd64 #12527960
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:15:39

passed radeonsi-stoney-traces:amd64 #12527959
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:12:12

passed radv-fossils #12527953

00:07:20

passed radv_stoney_vkcts:amd64 1/3 #12527950
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:18:55

passed radv_stoney_vkcts:amd64 2/3 #12527951
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:17:38

passed radv_stoney_vkcts:amd64 3/3 #12527952
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:17:34

 
  Intel
passed iris-apl-egl #12527964
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:06:41

passed iris-apl-gles2 #12527961
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:07:16

passed iris-apl-gles3 #12527962
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:08:14

passed iris-apl-gles31 #12527963
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:09:00

passed iris-apl-traces #12527965
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:08:47

 
  Arm
passed panfrost-g52-gles31:arm64 #12527975
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

00:14:45

passed panfrost-g52-gles3:arm64 1/2 #12527973
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

00:12:28

passed panfrost-g52-gles3:arm64 2/2 #12527974
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

00:12:45

passed panfrost-t720-gles2:arm64 #12527966
mesa-ci-x86-64-lava-sun50i-h6-pine-h64

00:13:32

passed panfrost-t760-gles2:armhf #12527967
mesa-ci-x86-64-lava-rk3288-veyron-jaq

00:07:09

passed panfrost-t760-traces:armhf #12527968
mesa-ci-x86-64-lava-rk3288-veyron-jaq

00:06:12

passed panfrost-t860-gles31:arm64 #12527971
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:09:20

passed panfrost-t860-gles3:arm64 1/2 #12527969
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:08:57

passed panfrost-t860-gles3:arm64 2/2 #12527970
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:09:49

passed panfrost-t860-traces:arm64 #12527972
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:07:50

 
  Broadcom
passed v3d-rpi4-egl:armhf #12527992
igalia-rpi4

00:06:50

passed v3d-rpi4-gles2:armhf #12527988
igalia-rpi4

00:07:50

passed v3d-rpi4-gles31:armhf 1/2 #12527982
igalia-rpi4

00:10:32

passed v3d-rpi4-gles31:armhf 2/2 #12527983
igalia-rpi4

00:10:55

passed v3d-rpi4-gles3:armhf 1/4 #12527984
igalia-rpi4

00:10:17

passed v3d-rpi4-gles3:armhf 2/4 #12527985
igalia-rpi4

00:10:32

passed v3d-rpi4-gles3:armhf 3/4 #12527986
igalia-rpi4

00:08:54

passed v3d-rpi4-gles3:armhf 4/4 #12527987
igalia-rpi4

00:09:17

passed v3d-rpi4-khr-gles2:armhf #12527991
igalia-rpi4

00:01:55

passed v3d-rpi4-khr-gles31:armhf #12527989
igalia-rpi4

00:03:53

passed v3d-rpi4-khr-gles3:armhf #12527990
igalia-rpi4

00:03:51

passed v3d-rpi4-piglit:armhf 1/3 #12527993
igalia-rpi4

00:10:55

passed v3d-rpi4-piglit:armhf 2/3 #12527994
igalia-rpi4

00:11:02

passed v3d-rpi4-piglit:armhf 3/3 #12527995
igalia-rpi4

00:11:08

passed v3dv-rpi4-vk:arm64 1/6 #12527996
igalia-rpi4

00:08:44

passed v3dv-rpi4-vk:arm64 2/6 #12527997
igalia-rpi4

00:08:35

passed v3dv-rpi4-vk:arm64 3/6 #12527998
igalia-rpi4

00:08:23

passed v3dv-rpi4-vk:arm64 4/6 #12527999
igalia-rpi4

00:08:43

passed v3dv-rpi4-vk:arm64 5/6 #12528000
igalia-rpi4

00:08:31

passed v3dv-rpi4-vk:arm64 6/6 #12528001
igalia-rpi4

00:09:10

passed vc4-rpi3-egl:armhf #12527981
igalia-rpi3

00:07:47

passed vc4-rpi3-gles2:armhf 1/4 #12527976
igalia-rpi3

00:04:31

passed vc4-rpi3-gles2:armhf 2/4 #12527977
igalia-rpi3

00:04:27

passed vc4-rpi3-gles2:armhf 3/4 #12527978
igalia-rpi3

00:04:16

passed vc4-rpi3-gles2:armhf 4/4 #12527979
igalia-rpi3

00:04:30

passed vc4-rpi3-khr-gles2:armhf #12527980
igalia-rpi3

00:02:49

 
  Freedreno
passed a306_gles2 #12528002
google-freedreno-db410c

00:06:04

passed a306_gles3 1/3 #12528003
google-freedreno-db410c

00:08:56

passed a306_gles3 2/3 #12528004
google-freedreno-db410c

00:08:55

passed a306_gles3 3/3 #12528005
google-freedreno-db410c

00:08:55

passed a306_gles3_options #12528006
google-freedreno-db410c

00:03:34

passed a306-traces #12528007
google-freedreno-db410c

00:02:45

passed a530_gles2 #12528008
google-freedreno-db820c

00:06:26

passed a530_gles31 1/2 #12528011
google-freedreno-db820c

00:05:25

passed a530_gles3 1/2 #12528009
google-freedreno-db820c

00:07:50

passed a530_gles31 2/2 #12528012
google-freedreno-db820c

00:07:43

passed a530_gles3 2/2 #12528010
google-freedreno-db820c

00:09:16

passed a530_piglit_shader 1/2 #12528013
google-freedreno-db820c

00:08:19

passed a530_piglit_shader 2/2 #12528014
google-freedreno-db820c

00:09:28

passed a530-traces #12528015
google-freedreno-db820c

00:07:16

passed a630_egl #12528020
google-freedreno-cheza

00:03:28

passed a630_gl #12528019
google-freedreno-cheza

00:03:06

passed a630_gles2 #12528016
google-freedreno-cheza

00:01:28

passed a630_gles3 #12528018
google-freedreno-cheza

00:04:58

passed a630_gles31 #12528017
google-freedreno-cheza

00:10:30

passed a630_gles_others #12528021
google-freedreno-cheza

00:06:41

passed a630_piglit #12528025
google-freedreno-cheza

00:08:28

passed a630-traces #12528026
google-freedreno-cheza

00:04:05

passed a630-traces-performance #12528028
google-freedreno-cheza manual

00:07:39

passed a630-traces-restricted #12528027
google-freedreno-cheza

00:03:46

passed a630_vk 1/2 #12528022
google-freedreno-cheza

00:09:52

passed a630_vk 2/2 #12528023
google-freedreno-cheza

00:09:55

passed a630_vk_sysmem #12528024
google-freedreno-cheza

00:02:13

 
  Software Renderer
passed lavapipe-nir-stress #12528042

00:00:54

passed lavapipe-vk #12528041

00:03:53

passed llvmpipe-deqp 1/2 #12528034

00:03:36

passed llvmpipe-deqp 2/2 #12528035

00:07:51

passed llvmpipe-egl #12528036

00:01:07

passed llvmpipe-piglit-cl #12528029

00:01:49

passed llvmpipe-piglit-glslparser #12528031

00:03:48

passed llvmpipe-piglit-quick_gl #12528030

00:04:31

passed llvmpipe-piglit-quick_shader #12528032

00:06:43

passed llvmpipe-traces #12528033

00:02:19

passed softpipe-asan-gles31 #12528039

00:01:35

passed softpipe-deqp 1/2 #12528037

00:09:33

passed softpipe-deqp 2/2 #12528038

00:08:47

passed softpipe-piglit-quick #12528040

00:06:00

 
  Layered Backends
passed test-d3d12-windows #12528050
windows docker 1809 mesa

00:03:20

passed virgl-on-gl 1/2 #12528043
kvm

00:30:21

passed virgl-on-gl 2/2 #12528044
kvm

00:33:24

passed virgl-traces #12528045
kvm

00:03:56

passed zink-lvp-deqp 1/2 #12528048

00:03:23

passed zink-lvp-deqp 2/2 #12528049

00:02:45

passed zink-piglit-no_timelines #12528047

00:05:06

passed zink-piglit-timelines #12528046

00:05:09