Radeon 7800XT not detected on Fedora 38

Hi,
I have just built my new pc with a AMD Radeon 7800XT. (Here are all the parts)
Everything works fine on Windows 10, but on Fedora 38 I am stuck at 1024x768 resolution, and the GPU does not seem to be correctly detected. I have the latest Mesa. I don’t understand what is the problem. I have searched Google, but nobody seems to have any problem with recent AMD cards…
Here’s a neofetch :


And an inxi :
fedora inxi

I don’t know if that is relevant or not, but I could not launch Fedora from the liveUSB unless I did it in limited graphics mode.

Thanks in advance for your help.

Please show us the output ( as text and using the preformated text tags with the </> button) of the command inxi -Fzxx.

That image shows 2 different gpus and I wonder if the mobo and processor have an integrated gpu that is interfering with the gpu card you added. More info is needed.

That CPU does indeed have an iGPU yes.

Here you go :

[gilead@fedora ~]$ inxi -Fzxx
System:
  Kernel: 6.5.5-200.fc38.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 2.39-9.fc38 Desktop: GNOME v: 44.5 tk: GTK v: 3.24.38 wm: gnome-shell
    dm: GDM Distro: Fedora release 38 (Thirty Eight)
Machine:
  Type: Desktop Mobo: Micro-Star model: B650 GAMING PLUS WIFI (MS-7E26) v: 1.0
    serial: <superuser required> UEFI: American Megatrends LLC. v: 1.10
    date: 05/23/2023
CPU:
  Info: 8-core model: AMD Ryzen 7 7700 bits: 64 type: MT MCP arch: Zen 4
    rev: 2 cache: L1: 512 KiB L2: 8 MiB L3: 32 MiB
  Speed (MHz): avg: 825 high: 4083 min/max: 400/5389 cores: 1: 400 2: 400
    3: 3527 4: 400 5: 400 6: 400 7: 400 8: 4083 9: 400 10: 400 11: 400 12: 400
    13: 400 14: 400 15: 400 16: 400 bogomips: 121601
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: AMD vendor: XFX driver: N/A pcie: speed: 16 GT/s lanes: 16
    bus-ID: 03:00.0 chip-ID: 1002:747e
  Device-2: AMD Raphael vendor: Micro-Star MSI driver: N/A arch: RDNA-2
    pcie: speed: 16 GT/s lanes: 16 bus-ID: 13:00.0 chip-ID: 1002:164e
  Display: wayland server: X.Org v: 22.1.9 with: Xwayland v: 22.1.9
    compositor: gnome-shell driver: dri: swrast gpu: N/A display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 1024x768 s-dpi: 96
  Monitor-1: Unknown-1 mapped: XWAYLAND0 res: 1024x768 dpi: 96
  API: OpenGL v: 4.5 Mesa 23.1.8 renderer: llvmpipe (LLVM 16.0.6 256 bits)
    direct-render: Yes
Audio:
  Device-1: AMD Navi 31 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie:
    speed: 16 GT/s lanes: 16 bus-ID: 03:00.1 chip-ID: 1002:ab30
  Device-2: AMD Rembrandt Radeon High Definition Audio
    vendor: Micro-Star MSI driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s
    lanes: 16 bus-ID: 13:00.1 chip-ID: 1002:1640
  Device-3: AMD Family 17h/19h HD Audio vendor: Micro-Star MSI
    driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s lanes: 16
    bus-ID: 13:00.6 chip-ID: 1022:15e3
  API: ALSA v: k6.5.5-200.fc38.x86_64 status: kernel-api
  Server-1: PipeWire v: 0.3.80 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin
Network:
  Device-1: Realtek RTL8125 2.5GbE vendor: Micro-Star MSI driver: r8169
    v: kernel pcie: speed: 5 GT/s lanes: 1 port: e000 bus-ID: 0e:00.0
    chip-ID: 10ec:8125
  IF: enp14s0 state: down mac: <filter>
  Device-2: MEDIATEK MT7921K Wi-Fi 6E 80MHz driver: mt7921e v: kernel pcie:
    speed: 5 GT/s lanes: 1 bus-ID: 0f:00.0 chip-ID: 14c3:0608
  IF: wlp15s0 state: up mac: <filter>
Bluetooth:
  Device-1: MediaTek Wireless_Device driver: btusb v: 0.8 type: USB rev: 2.1
    speed: 480 Mb/s lanes: 1 bus-ID: 1-7:5 chip-ID: 0e8d:0608
  Report: btmgmt ID: hci0 rfk-id: 0 state: down bt-service: enabled,running
    rfk-block: hardware: no software: yes address: <filter> bt-v: 5.2 lmp-v: 11
Drives:
  Local Storage: total: 2.84 TiB used: 47.84 GiB (1.6%)
  ID-1: /dev/nvme0n1 vendor: Crucial model: CT2000P3SSD8 size: 1.82 TiB
    speed: 31.6 Gb/s lanes: 4 serial: <filter> temp: 30.9 C
  ID-2: /dev/nvme1n1 vendor: Crucial model: CT1000P3SSD8 size: 931.51 GiB
    speed: 31.6 Gb/s lanes: 4 serial: <filter> temp: 27.9 C
  ID-3: /dev/sda vendor: Kingston model: DataTraveler 3.0 size: 115.59 GiB
    type: USB rev: 3.2 spd: 5 Gb/s lanes: 1 serial: <filter>
Partition:
  ID-1: / size: 1.82 TiB used: 4.74 GiB (0.3%) fs: btrfs dev: /dev/nvme0n1p3
  ID-2: /boot size: 973.4 MiB used: 271.1 MiB (27.8%) fs: ext4
    dev: /dev/nvme0n1p2
  ID-3: /boot/efi size: 598.8 MiB used: 17.4 MiB (2.9%) fs: vfat
    dev: /dev/nvme0n1p1
  ID-4: /home size: 1.82 TiB used: 4.74 GiB (0.3%) fs: btrfs
    dev: /dev/nvme0n1p3
Swap:
  ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 52.8 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Processes: 384 Uptime: 0m Memory: total: 32 GiB note: est.
  available: 30.49 GiB used: 1.61 GiB (5.3%) Init: systemd v: 253
  target: graphical (5) default: graphical Compilers: N/A Packages: pm: rpm
  pkgs: N/A note: see --rpm pm: flatpak pkgs: 5 Shell: Bash v: 5.2.15
  running-in: gnome-terminal inxi: 3.3.29

And yes, the CPU has an integrated GPU.

I just looked up the specs on both the mobo and the processor and see that both have the iGPU. The outputs you show appear to be configuring the iGPU and not the RX 7800. It appears to not be loading the drivers for either GPU. It seems possible that the first one it sees is not recognized and maybe not supported by the amdgpu driver so it refuses to load that driver at all

I have a system with ryzen 7 5700X processor and B550 mobo (AM4 socket) but I made sure to purchase the X version of the processor so the iGPU was not included and have no problems with GPU cards.

I am not sure how to bypass the iGPU, though it might be possible to disable it within the bios. You are using an MSI mobo and likely have MSI bios as well so that could be an available option.

Adding the output of dmesg (limited to the portion related to configuring the GPU and loading drivers) may show more detail.

The dmesg is 1418 lines long, and I have no idea which lines are relevant to my problem…
I’m gonna go in the BIOS see about the iGPU.

So, I went to the BIOS.
It was setup to boot on the GPU, not the iGPU. Anyway, I disabled the iGPU, and rebooted. And still the same.
I used neofetch, there was only one GPU listed now : the second one in the screen in my first message, still not listed as a 7800XT. I tried to get more info with inxi and my computer crashed…

After disabling the iGPU, I was crashing in Fedora, I was crashing in Windows, and I was even crashing in the BIOS. So I put the iGPU back in AUTO mode (which was the mode it was in by default) and the crashing stopped. Very weird.

Hi, I have an similar setup.
It should not really matter if you disable the igpu in bios, there using the same kernel driver (amdgpu) and it will choose the right one as default.

It should output this:

Graphics:
  Device-1: AMD vendor: Sapphire driver: amdgpu v: kernel bus-ID: 03:00.0
  Display: wayland server: X.Org v: 23.1.2 with: Xwayland v: 23.1.2
    compositor: gnome-shell v: 44.5 driver: X: loaded: amdgpu
    unloaded: fbdev,modesetting,radeon,vesa dri: radeonsi gpu: amdgpu
    resolution: 1: 1920x1080~75Hz 2: 1920x1080~60Hz
  API: OpenGL v: 4.6 Mesa 23.1.8 renderer: AMD Radeon Graphics (gfx1101
    LLVM 16.0.6 DRM 3.54 6.5.5-200.fc38.x86_64) direct-render: Yes

So your GPU is detected (good) but the amdgpu driver is not installed or is blacklisted.
In your output is says driver: N/A (not good).

I had it blacklisted while using a nvidia gpu and forgot about it after switching to amd.

The packets you should have installed are: amd-gpu-firmware and xorg-x11-drv-amdgpu.
You can also check the output of: dmesg | grep amdgpu.

Both amd-gpu-firmware and xorg-x11-drv-amdgpu are already installed.

dmesg | grep amdgpu does not output anything (which explains why I found nothing about gpu in the 1418 lines of my dmesg earlier).

Ok, driver is installed but not loaded.
If dmesg is empty, it can only be blacklisted?

You can check with: modprobe --showconfig | grep blacklist

[gilead@fedora ~]$ modprobe --showconfig | grep blacklist
blacklist appletalk
blacklist atm
blacklist ax25
blacklist batman_adv
blacklist i8xx_tco
blacklist aty128fb
blacklist atyfb
blacklist radeonfb
blacklist i810fb
blacklist cirrusfb
blacklist intelfb
blacklist kyrofb
blacklist i2c_matroxfb
blacklist hgafb
blacklist nvidiafb
blacklist rivafb
blacklist savagefb
blacklist sstfb
blacklist neofb
blacklist tridentfb
blacklist tdfxfb
blacklist virgefb
blacklist vga16fb
blacklist viafb
blacklist hisax
blacklist hisax_fcpcipnp
blacklist snd_pcsp
blacklist chsc_sch
blacklist floppy
blacklist l2tp_eth
blacklist l2tp_ip
blacklist l2tp_netlink
blacklist l2tp_ppp
blacklist netrom
blacklist nfc
blacklist rds
blacklist rose
blacklist sctp

There’s no amdgpu in that list…

Hmm ok, I have one last thing you could check.

What is GRUB_CMDLINE_LINUX set to inside /etc/default/grub ?
Mine looks like this: “rhgb quiet”
iirc amdgpu doesn’t like nomodset.

That’s the last idea I got, sorry if this also doesn’t help.

sidenote: crashes from disabling the igpu would concern me personally

My GRUB_CMDLINE_LINUX says “nomodeset rhgb quiet”
Should I remove “nomodeset”?

Also for the crashes with iGPU disabled, I think I’m gonna ask on the msi forums

Yes, remove it and update grub
run: sudo grub2-mkconfig -o /etc/grub2.cfg

It works! :partying_face:
Thank you very much.