Summary: | media-libs/mesa ignores 'vulkan' USE flag for 'amdgpu' VIDEO_CARDS flag | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Héctor Barreras <dechcaudron> |
Component: | Current packages | Assignee: | Gentoo X packagers <x11> |
Status: | RESOLVED INVALID | ||
Severity: | minor | CC: | gentoo |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Héctor Barreras
2022-04-13 07:53:15 UTC
You should really enable "video_cards_radeonsi" for mesa in order to get amdgpu support as mentioned in our Wiki: https://wiki.gentoo.org/wiki/AMDGPU#Feature_support Thanks Lars... I remember reading this at the time and thinking "why?". The Wiki definitely states so, but is there any compelling reason why radeonsi -should- be added to VIDEO_CARDS if one does not have a Southern Islands family card? I appreciate this is not necessarily related to `media-libs/mesa` alone, but I had no issues using `amdgpu` as the only VIDEO_CARDS flag until I tried to install Vulkan support through it. Apologies if I am wasting your time here, I would just like to understand this. The problem is that the hardware supported the radeonsi driver in Mesa doesn't match exactly with either the radeon or amdgpu VIDEO_CARD options in libdrm. Or restated: depending on the GPU the radeonsi Mesa driver needs either the radeon libdrm code or the amdgpu libdrm code. The radeonsi OpenGL driver's hardware support corresponds... at least better with the radv driver's support, so we use VIDEO_CARDS=radeonsi to control both drivers. (I don't remember verifying this exactly). Thank you for the explanation Matt, between your comment and the current Mesa documentation I think I begin to understand how this works now. I suppose I do find a bit confusing that the value of the VIDEO_CARDS option reflects the name of the Mesa driver for the HW instead of the underlying kernel driver, especially considering the flag is recommended to be enabled system-wide by the Wiki, though I imagine that may be due to other ebuilds interacting with the GPU through Mesa rather than directly. (In reply to Héctor Barreras from comment #4) > Thank you for the explanation Matt, between your comment and the current > Mesa documentation I think I begin to understand how this works now. > > I suppose I do find a bit confusing that the value of the VIDEO_CARDS option > reflects the name of the Mesa driver for the HW instead of the underlying > kernel driver, especially considering the flag is recommended to be enabled > system-wide by the Wiki, though I imagine that may be due to other ebuilds > interacting with the GPU through Mesa rather than directly. It is definitely confusing :( To that end, in mesa-22 I've combined VIDEO_CARDS="i915 crocus iris" into just VIDEO_CARDS="intel". This was made somewhat more easy because the "classic" i965 and i915 drivers were removed (to live on in the "Amber") branch. I'd be interested in doing the same thing with radeon, but it's a little bit harder because of the llvm requirements. |