etnaviv: Support creating screens with separate 3D GPU and NPU cores.
What does this MR do and why?
Allow etnaviv to run a compute-only context on a (secondary) NPU when the primary device is a 3D GPU.
Rework the winsys etna_gpu
iteration to stop aborting when the first GPU was found, and instead collect both 3D GPU and and NPU when available, and pass them to etna_screen_create()
separately.
Add a separate NPU pipe and collect specs from both GPU and NPU.
Broken out from !27769 to address pH5/mesa@6c9802f4 (comment 2387220).