mesa/src/broadcom/drm-shim
Eric Anholt e9add0c501 drm-shim: Let the driver choose to overwrite the first render node.
When I was writing drm-shim, I was focused on the v3d kmsro case -- use my
intel device as the kmsro display device and add on a simulator-based v3d
device that we could render with.  But for the noop backends we use for
shader-db, it's a lot more useful to just overwrite the first render node
in the system so that you don't have to pass a -d <how many render nodes I
already have in my system> argument.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4664>
2020-04-23 17:54:54 +00:00
..
meson.build meson: inline inc_common 2020-03-28 21:36:54 +01:00
README.md
v3d.c drm-shim: Let the driver choose to overwrite the first render node. 2020-04-23 17:54:54 +00:00
v3d.h
v3d_noop.c drm-shim: Let the driver choose to overwrite the first render node. 2020-04-23 17:54:54 +00:00
v3dx.c

v3d backend

This implements some of v3d using the closed source v3dv3 tree's C/C++-based simulator. All execution is synchronous.

Export: MESA_LOADER_DRIVER_OVERRIDE=v3d LD_PRELOAD=$prefix/lib/libv3d_drm_shim.so. The v3dv3 version exposed will depend on the v3dv3 build -- 3.3, 4.1, and 4.2 are supported.

v3d_noop backend

This implements the minimum of v3d in order to make shader-db work. The submit ioctl is stubbed out to not execute anything.

Export MESA_LOADER_DRIVER_OVERRIDE=v3d LD_PRELOAD=$prefix/lib/libv3d_noop_drm_shim.so. This will be a V3D 4.2 device.