Skip to content

v3d/drm-shim: remove drm-shim

While trying to use the existing vc4 noop shim driver, I found several issues with all our drm-shim drivers:

  • v3d drm-shim: this one is using the simulator, and it was not updated when we moved to a new simulator version. Most of this MR is about that. The main issue here, is that it uses a lot of C&P code from the simulator, that was the existing approach. Taking into account that we moved the simulator to a common place when we started the vulkan driver, we could try to do the same for the drm-shim, but would need more changes on the drm-shim, and expose more internal functionality on the common simulator code. That is some amount of effort, and there are more problems (see below) I didn't try to do that.

  • Both v3d drm shim and v3d noop shim are not working. It raises a DRM exception. It is worth to note that the former requires the simulator, it can be only accessed by some people. In theory it can be useful for some CI [1], but as far as I know we never tried to do that. Only the noop could be useful for the community, and only to compile shaders.

  • vc4 noop is too noop :P. Although it was integrated with MR !8736 (merged), it is only the noop creation. It still misses update to add a precompile_shaders implementation, as v3d, so the shaders get really compiled. I had some old patches when I tried to get this working on the past, and now I get a DRM exception (different to the v3d one). I think that @chema also tried the vc4 noop to work at some point.

But before trying to do any work here, there is the discussion about how useful can be. For example I see some value on the two noop drivers, so I think that it is ok to try to get them working at some point.

But for the case of the v3d drm shim, that still requires the simulator, and it is not used at all right now, and not working, and would require some refactoring, I'm biased to just remove it.

But perhaps others have other opinion. CCing @itoral, @jasuarez, @chema.

[1] https://fossies.org/linux/mesa/src/drm-shim/README.md

Edited by Alejandro Piñeiro

Merge request reports