AMD Radeon RX 6600 XT - driver install? firmware?

Got a new PC here with said graphics card: AMD Radeon RX 6600 XT
I first tried to install Leap 15.3 the normal way from a USB stick. Right at the start, the installer complained that it did not recognize the graphics card properly, and switched to a “reduced” graphics mode with no mouse input.

No problem I thought, and switched to integrated graphics instead - some Aspeed AST2500 thingy on the motherboard.
Installation went as usual, with all the graphics features I am used to, and mouse support. So far, so good.

Now when I switch back to the Radeon graphics card, I am met with the following message:
[FAILED] Failed to start X Display Manager.
And I have the text login console, where I can log in normally. With no graphics of course.

So current state of affairs: I can get into the system normally using integrated graphics, or I can use the Radeon GPU, but only get tui.

Questions:

  1. Can I do something differently while installing, so stuff works out of the box? I haven’t done much else yet, so a fresh install is still an option.
  2. Otherwise, which steps (and please, I need fully fleshed out steps :shame:) can I take to get the graphics card to work normally?
  3. optional: can I expect things to work out of the box when Leap 15.4 comes around?

I also tried putting this graphics card into another system with an up-to-date Leap 15.3, that is usually running an older AMD Radeon RX 570. Same problem here: failed to load X display manager, only tui.

https://en.opensuse.org/SDB:AMDGPU-PRO

Why that?

First I would use an newer kernel from kernel:stable:backports.

I was hoping that I would not have to use the closed source drivers. One of the reasons I switched to AMD GPUs is that I always had a terrible time with the Nvidia drivers.

Speaking of “just use a newer kernel”: that’s the kind of stuff I would need more context for. Never did that, and have no idea where to start. What are the implications? Will I break the system every time I do zypper up?

Sorry for new post, I can’t edit the old ones any more…

I used this tutorial to add the backport kernels: https://rockstor.com/docs/howtos/stable_kernel_backport.html
After a reboot, everything seems to work. Any comments on whether these are the right steps are highly appreciated.
Basically, all I did was

zypper --non-interactive addrepo --refresh https://download.opensuse.org/repositories/Kernel:/stable:/Backport/standard/ Kernel_stable_Backport
zypper up --allow-vendor-change

I seem to have forgotten the

zypper --non-interactive --gpg-auto-import-keys refresh

in between. Can I do that now? Or do I need to roll back something?

After adding the Repo, I would use :

zypper dup --allow-vendor-change --from Kernel_stable_Backport

and not:

zypper up --allow-vendor-change

When the kernel is installed, reboot, if secure boot is enabled you have to add the key to mok:
https://forums.opensuse.org/showthread.php/560900-Help-on-booting-to-a-5-14-11-kernel-stable-backports-kernel-with-secure-boot-(or-must-I-disable)?p=3073187#post3073187

If this kernel is not starting, you can choose the old one in grub2 by selecting the second entry.

PS:
I am running kernel:stable for years with Leap without any problems.

Could you elaborate a bit why dup instead of up? What’s the benefit for me?
I have secureboot disabled in bios. Do I need to disable it in the OS? Where can I check?

Seems like secureboot is in fact disabled:


# mokutil --sb-state
SecureBoot disabled
Platform is in Setup Mode

Not sure what to make of setup mode, but one problem at a time rotfl!

zypper up will only update, if newer Versions are available.

zypper dup will up- or downgrade.

Important is the --from because otherwise you will get an update/upgrade with all enabled Repos…

Ok, but now that I already ran the commands I posted earlier, is there any reason to go back and do dup instead?
I got a newer kernel, and the hardware support I need. The system seems to run as intended.
The way I understand your post, dup would only yield different results if some of the stuff on my machine was a more recent version than what is added by the backports repo. And invoking zypper up later would update everything anyway?

Not trying to nitpick here, would just like to get a better understanding of what I am doing.

No need to do anything, please post your Repo list:

zypper lr -d
zypper lr -d 
#  | Alias                       | Name                                                                                        | Enabled | GPG Check | Refresh | Priority | Type   | URI                                                                                | Service 
---+-----------------------------+---------------------------------------------------------------------------------------------+---------+-----------+---------+----------+--------+------------------------------------------------------------------------------------+-------- 
 1 | Kernel_stable_Backport      | Kernel_stable_Backport                                                                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | https://download.opensuse.org/repositories/Kernel:/stable:/Backport/standard/      |  
 2 | openSUSE-Leap-15.3-3        | openSUSE-Leap-15.3-3                                                                        | No      | ----      | ----    |   99     | rpm-md | hd:/?device=/dev/disk/by-id/usb-JetFlash_Transcend_32GB_21OYUJ98413TVSEK-0:0-part2 |  
 3 | repo-backports-debug-update | Update repository with updates for openSUSE Leap debuginfo packages from openSUSE Backports | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/update/leap/15.3/backports_debug/                     |  
 4 | repo-backports-update       | Update repository of openSUSE Backports                                                     | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.3/backports/                           |  
 5 | repo-debug                  | Debug Repository                                                                            | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/15.3/repo/oss/                |  
 6 | repo-debug-non-oss          | Debug Repository (Non-OSS)                                                                  | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/15.3/repo/non-oss/            |  
 7 | repo-debug-update           | Update Repository (Debug)                                                                   | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.3/oss/                           |  
 8 | repo-debug-update-non-oss   | Update Repository (Debug, Non-OSS)                                                          | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.3/non-oss/                       |  
 9 | repo-non-oss                | Non-OSS Repository                                                                          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/distribution/leap/15.3/repo/non-oss/                  |  
10 | repo-oss                    | Main Repository                                                                             | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/distribution/leap/15.3/repo/oss/                      |  
11 | repo-sle-debug-update       | Update repository with debuginfo for updates from SUSE Linux Enterprise 15                  | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.3/sle/                           |  
12 | repo-sle-update             | Update repository with updates from SUSE Linux Enterprise 15                                | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.3/sle/                                 |  
13 | repo-source                 | Source Repository                                                                           | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/source/distribution/leap/15.3/repo/oss/               |  
14 | repo-update                 | Main Update Repository                                                                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.3/oss/                                 |  
15 | repo-update-non-oss         | Update Repository (Non-Oss)                                                                 | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.3/non-oss/                             | 


I haven’t changed anything about the repos that are added by a default installation, apart from adding the backport kernels.
Sorry about the horrible formatting, can’t figure out how to suppress line breaks here.

All looks good.

If you need proprietary codecs such as x264, add the Packman Repo, switch all installed packages to the Packman Repo and install.

zypper ar -f -p20 http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.3/ packman
zypper dup --allow-vendor-change --from packman
zypper in -f gstreamer-plugins-ugly-orig-addon vlc-codecs

Here you need zypper dup, because the Packman Versions can have a lower Version/Release Number as the openSUSE ones.

When this is the case, you see on zypper up something like:

The following 32 package updates will NOT be installed:
  AusweisApp2 broadcom-wl gstreamer-plugins-ugly gstreamer-plugins-ugly-lang lame liblilv-0-0 liblilv-0-devel libmp3lame0 libmp3lame-devel libvlc5 libvlccore9 libwx_baseu_net-suse3_0_5 libwx_baseu-suse3_0_5
  libwx_baseu_xml-suse3_0_5 libwx_gtk2u_adv-suse3_0_5 libwx_gtk2u_core-suse3_0_5 libwx_gtk2u_gl-suse3_0_5 libwx_gtk2u_html-suse3_0_5 libwx_gtk2u_qa-suse3_0_5 libwx_gtk2u_xrc-suse3_0_5 lv2 lv2-devel
  perl-Glib-Object-Introspection perl-Gtk3 ucode-intel vlc vlc-codec-gstreamer vlc-lang vlc-noX vlc-qt vlc-vdpau wxWidgets-lang

That is no error, only the Version/Release is higher than the installed one and you have nothing to do.

For Example:

LANG=C zypper se -s gstreamer-plugins-ugly-lang
Loading repository data...
Reading installed packages...

S | Name                        | Type    | Version            | Arch   | Repository
--+-----------------------------+---------+--------------------+--------+-------------------------------------------------------------
i | gstreamer-plugins-ugly-lang | package | 1.16.3-pm153.3.5.5 | noarch | Packman1
v | gstreamer-plugins-ugly-lang | package | 1.16.3-3.3.1       | noarch | Main Repository
v | gstreamer-plugins-ugly-lang | package | 1.16.3-3.3.1       | noarch | Update repository with updates from SUSE Linux Enterprise 15

Same Version 1.16.3 but different Release/Build 3.5.5 vs 3.3.1. And Packman uses pm153 for openSUSE in the Tag.

Cool, I always added the packman repo via yast, and then installed everything related to codecs in its graphical interface. Will give the console a try this time.

To get OpenCL and ray-tracing support?