mesa/src/amd/drm-shim
Marek Olšák 5d92c92ce5
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Revert ABI breakage "amd: Add user queue HQD count to hw_ip info"
This reverts commit 56d758d321.

It broke ABI between Mesa and libdrm, causing crashes due to stack smashing.

See: https://gitlab.freedesktop.org/mesa/libdrm/-/issues/121#note_3172362

Fixes: 56d758d321
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38203>
2025-11-02 02:54:59 +00:00
..
amdgpu_devices.c Revert ABI breakage "amd: Add user queue HQD count to hw_ip info" 2025-11-02 02:54:59 +00:00
amdgpu_devices.h amd/drm-shim: move device list to external file 2023-05-15 11:32:06 +00:00
amdgpu_dump_states.c Revert ABI breakage "amd: Add user queue HQD count to hw_ip info" 2025-11-02 02:54:59 +00:00
amdgpu_noop_drm_shim.c amd/drm-shim: move device list to external file 2023-05-15 11:32:06 +00:00
meson.build build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
radeon_noop_drm_shim.c amd: Use align64 instead of ALIGN for 64 bit value parameter 2024-01-03 22:02:17 +00:00
README.md amd/drm-shim: update README about which file to modify 2023-05-19 06:59:30 +00:00

radeon_noop backend

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

Export MESA_LOADER_DRIVER_OVERRIDE=r300 LD_PRELOAD=$prefix/lib/libradeon_noop_drm_shim.so. (or r600 for r600-class HW)

By default, rv515 is exposed. The chip can be selected an environment variable like RADEON_GPU_ID=CAYMAN or RADEON_GPU_ID=0x6740.

amdgpu_noop backend

This implements the minimum of the amdgpu kernel driver. The submit ioctl is stubbed out to not execute anything.

Export LD_PRELOAD=$prefix/lib/libamdgpu_noop_drm_shim.so.

To specify the device to expose, set the environment variable AMDGPU_GPU_ID to

  • renoir to expose a CHIP_RENOIR device
  • raven to expose a CHIP_RAVEN device
  • stoney to expose a CHIP_STONEY device

Further names follow the CHIP_* enum values. By default, the CHIP_RENOIR device is exposed.

To add a new device, amdgpu_devices.c needs to be modified. amdgpu_dump_states can be used to dump the relevant states from a real device.