Skip to content

panvk: Overhaul the Bifrost descriptor set implementation

What does this MR do and why?

Turns out the current approach makes implementation of advanced features like update-after-bind or shader modules quite challenging. Instead of adding hacks all over the place to support these features, let's use the Valhall descriptor model.

Each shader now gets its own descriptor tables, which are fed by pilot shaders copying the descriptors used by the shader from the descriptor sets currently bound the command buffer.

Based on !29670 (merged).

@rmckeever, you might want to consider the first 4 patches in !29639, as those are addressing some of the comments I made there.

@marysaka, hopefully this new approach simplifies GPL/shader-modules. Let me know if that's not the case.

/cc @nanokatze @kusma for reviews

Edited by Boris Brezillon

Merge request reports