Ok, perhaps this is an issue with mesa labelling the GPU wrongly. Because
lspci | grep -E "VGA|3D"
03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 44 [Radeon RX 9060 XT] (rev c0)
Looking at the output of dsmeg
sudo dmesg | grep amdgpu
I get
[ 5.691364] [drm] amdgpu kernel modesetting enabled.
[ 5.691480] amdgpu: Virtual CRAT table created for CPU
[ 5.691491] amdgpu: Topology: Add CPU node
[ 5.691610] amdgpu 0000:03:00.0: enabling device (0006 -> 0007)
[ 5.695064] amdgpu 0000:03:00.0: amdgpu: detected ip block number 0 <soc24_common>
[ 5.695066] amdgpu 0000:03:00.0: amdgpu: detected ip block number 1 <gmc_v12_0>
[ 5.695067] amdgpu 0000:03:00.0: amdgpu: detected ip block number 2 <ih_v7_0>
[ 5.695068] amdgpu 0000:03:00.0: amdgpu: detected ip block number 3 <psp>
[ 5.695068] amdgpu 0000:03:00.0: amdgpu: detected ip block number 4 <smu>
[ 5.695069] amdgpu 0000:03:00.0: amdgpu: detected ip block number 5 <dm>
[ 5.695070] amdgpu 0000:03:00.0: amdgpu: detected ip block number 6 <gfx_v12_0>
[ 5.695071] amdgpu 0000:03:00.0: amdgpu: detected ip block number 7 <sdma_v7_0>
[ 5.695072] amdgpu 0000:03:00.0: amdgpu: detected ip block number 8 <vcn_v5_0_0>
[ 5.695072] amdgpu 0000:03:00.0: amdgpu: detected ip block number 9 <jpeg_v5_0_0>
[ 5.695073] amdgpu 0000:03:00.0: amdgpu: detected ip block number 10 <mes_v12_0>
[ 5.695083] amdgpu 0000:03:00.0: amdgpu: Fetched VBIOS from VFCT
[ 5.695084] amdgpu: ATOM BIOS: 113-P816G493-P04
[ 5.738621] amdgpu 0000:03:00.0: vgaarb: deactivate vga console
[ 5.738624] amdgpu 0000:03:00.0: amdgpu: Trusted Memory Zone (TMZ) feature not supported
[ 5.738690] amdgpu 0000:03:00.0: amdgpu: VRAM: 16304M 0x0000008000000000 - 0x00000083FAFFFFFF (16304M used)
[ 5.738691] amdgpu 0000:03:00.0: amdgpu: GART: 512M 0x0000000000000000 - 0x000000001FFFFFFF
[ 5.738768] [drm] amdgpu: 16304M of VRAM memory ready
[ 5.738769] [drm] amdgpu: 15815M of GTT memory ready.
[ 5.738827] amdgpu 0000:03:00.0: amdgpu: PCIE GART of 512M enabled (table at 0x00000083DAB00000).
[ 5.739490] amdgpu 0000:03:00.0: amdgpu: Found VCN firmware Version ENC: 1.9 DEC: 9 VEP: 0 Revision: 2
[ 5.958810] amdgpu 0000:03:00.0: amdgpu: RAS: optional ras ta ucode is not available
[ 5.961918] amdgpu 0000:03:00.0: amdgpu: RAP: optional rap ta ucode is not available
[ 5.961920] amdgpu 0000:03:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available
[ 5.961947] amdgpu 0000:03:00.0: amdgpu: smu driver if version = 0x0000002e, smu fw if version = 0x00000032, smu fw program = 0, smu fw version = 0x00664300 (102.67.0)
[ 5.961949] amdgpu 0000:03:00.0: amdgpu: SMU driver if version not matched
[ 6.022261] amdgpu 0000:03:00.0: amdgpu: SMU is initialized successfully!
[ 6.389957] amdgpu 0000:03:00.0: [drm] REG_WAIT timeout 1us * 150000 tries - optc401_disable_crtc line:230
[ 6.393272] snd_hda_intel 0000:03:00.1: bound 0000:03:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu])
[ 6.421244] amdgpu 0000:03:00.0: amdgpu: program CP_MES_CNTL : 0x4000000
[ 6.421248] amdgpu 0000:03:00.0: amdgpu: program CP_MES_CNTL : 0xc000000
[ 6.472554] amdgpu: HMM registered 16304MB device memory
[ 6.473690] kfd kfd: amdgpu: Allocated 3969056 bytes on gart
[ 6.473701] kfd kfd: amdgpu: Total number of KFD nodes to be created: 1
[ 6.473739] amdgpu: Virtual CRAT table created for GPU
[ 6.473789] amdgpu: Topology: Add dGPU node [0x7590:0x1002]
[ 6.473791] kfd kfd: amdgpu: added device 1002:7590
[ 6.473798] amdgpu 0000:03:00.0: amdgpu: SE 2, SH per SE 2, CU per SH 8, active_cu_number 32
[ 6.473801] amdgpu 0000:03:00.0: amdgpu: ring gfx_0.0.0 uses VM inv eng 0 on hub 0
[ 6.473802] amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0
[ 6.473803] amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0
[ 6.473803] amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 6 on hub 0
[ 6.473803] amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 7 on hub 0
[ 6.473804] amdgpu 0000:03:00.0: amdgpu: ring sdma0 uses VM inv eng 8 on hub 0
[ 6.473804] amdgpu 0000:03:00.0: amdgpu: ring sdma1 uses VM inv eng 9 on hub 0
[ 6.473805] amdgpu 0000:03:00.0: amdgpu: ring vcn_unified_0 uses VM inv eng 0 on hub 8
[ 6.473805] amdgpu 0000:03:00.0: amdgpu: ring jpeg_dec uses VM inv eng 1 on hub 8
[ 6.478610] amdgpu 0000:03:00.0: amdgpu: Using BACO for runtime pm
[ 6.478788] amdgpu 0000:03:00.0: [drm] Registered 4 planes with drm panic
[ 6.478789] [drm] Initialized amdgpu 3.63.0 for 0000:03:00.0 on minor 1
[ 6.485770] fbcon: amdgpudrmfb (fb0) is primary device
[ 6.841207] amdgpu 0000:03:00.0: [drm] REG_WAIT timeout 1us * 150000 tries - optc401_disable_crtc line:230
[ 6.917062] amdgpu 0000:03:00.0: [drm] fb0: amdgpudrmfb frame buffer device
I cant find anything wrong with it, please correct me. Furthermore:
[drm] Initialized amdgpu 3.63.0 for 0000:03:00.0 on minor 1
seems like my dedicated GPU is activated. Since gfx1200 is for integrated GPUs in mesa, I checked what GPUs mesa can find:
ls /dev/dri/
by-path card1 renderD128
which is indeed only one card. I suspected that perhaps some firmware is missing and therefore leading to mesa labelling this wrong, but
sudo dmesg | grep -i firmware
[ 3.848026] systemd[1]: Clear Stale Hibernate Storage Info was skipped because of an unmet condition check (ConditionPathExists=/sys/firmware/efi/efivars/HibernateLocation-8cf2644b-4b0b-428f-9387-6d876050dc67).
[ 4.868216] [drm] Loading DMUB firmware via PSP: version=0x00011100
[ 4.868514] amdgpu 0000:03:00.0: amdgpu: Found VCN firmware Version ENC: 1.9 DEC: 9 VEP: 0 Revision: 2
which looks good to me. Next, I checked the mapping of the PCIs in mesa:
/dev/dri/by-path/
insgesamt 0
lrwxrwxrwx 1 root root 8 17. Jul 12:03 pci-0000:03:00.0-card -> ../card1
lrwxrwxrwx 1 root root 8 17. Jul 12:03 pci-0000:03:00.0-platform-simple-framebuffer.0-card -> ../card0
lrwxrwxrwx 1 root root 13 17. Jul 12:03 pci-0000:03:00.0-render -> ../renderD128
which also just confirms that my dedicated GPU is somehow mapped to the integrated, right? I tried to use mesa-git and deleted the mesa cache, which didnt change anything. Regardless of all that, vulkaninfo recognizes the AMD radeon as dedicated gpu:
vulkaninfo | grep deviceName
WARNING: radv is not a conformant Vulkan implementation, testing use only.
deviceName = AMD Radeon Graphics (RADV GFX1200)
I tried then messing around with
RADV_FORCE_FAMILY=navi33 vulkaninfo | grep deviceName
but no family seemed to fit. Any ideas on how to fix this? Should I report this to mesa?