Steps to replace Nvidia card for AMD card

Sorry for asking the silly question, but having to fix black screen kinda scares me.

I’m waiting for the arrival of a new AMD card (6000 series) to replace the current nvidia 1070, which uses the nvidia repo driver, but I’m not certain about the steps for the replacement.

My thoughts are:

  1. Uninstall proprietary nvidia driver, disable/remove the nvidia repo.
  2. Reboot to see if anything is broken.
    ?. Uninstall xf86-video-nouveau and install xf86-video-amdgpu then shutdown.
  3. Replace the card on the motherboard.
  4. Boot up to see if there’s black screen.
  5. Try to install AMDGPU-PRO following the opensuse guide here.

That right?

p.s. Any advantage for using the opensource amdgpu driver?

Hi
I would run the oss driver (I do here on Tumbleweed), unless there is something specific your wanting to run that needs the amdgpu-pro, likewise if installed would only select components to install not the whole stack…

Is there any xorg/wayland configuration created for the nvidia card? If not should be just plug and play, but not a Plasma user…

Make sure uninstallation includes removal of any /etc/X11/xorg.con* files that its installation created. Most installations require no such files. In most cases, automagic simply works, but config files are designed to override it.

All my AMD GPUs, as well as my Intels and my NVidias, are running exclusively on FOSS. I’ve never found any compelling reason to try any proprietary AMD drivers.

Have you already checked to ensure the GPU model you plan to buy is already included in 15.3 support? If it isn’t, you could be forced to use kernel and/or X packages from non-standard repos until upgrading to 15.4.

I thought propriety driver performs better because for nvidia card that was my experience. Did a bit research so oss driver of AMD seems quite good might not be inferior.
When you say it’s plug and play I guess you mean x86-video-amdgpu installation is enough?

I don’t use wayland and don’t remember setting up any xorg.con files either but I’ll keep that in mind.
The machine does a lot of gaming, so I also expect to have more tweak and overclock the gpu a bit. Before, gamemode can do OC for nvidia card very easily.
I found on AMD’s website that there’s this **Radeon™ Software for Linux® installer version 21.50 for SLED/SLES 15 SP 3, **I guess this will do at least?
Well tomorrow I will have the card in hands ! Let’s see.

Hi
All you should need to do is uninstall the nvidia drivers and that should take care of any clean up.

You need to add a kernel grub option to enable clock control, there are various tools about to do this;


amdgpu.ppfeaturemask=0xffffffff

Above unlocks it all with the oss driver.

Whilst I’m on Tumbleweed I have an RX550 as well as an Quadro T400, I want the encoder/decoders as well as the cuda cores and OpenCL, but just run my applications as needed between the two (offload for Nvidia).

Hi, it was not plug and play for me.

After I uninstalled nvidia driver and installed the AMD RX 6600 xt. The machine boot only into low resolution mode. Installing xf86-***-amdgpu and kernel-firmware(amdgpu) did not help. I had to go to amd website to download an rpm to install. It created some AMD repos and installed some amdgpu packages from the repo (with some other auto selected packages).

Some 3D games can run fine but some don’t. All games in steam that require vulkan API can’t run.

vulkaninfo  
===========
VULKAN INFO
===========

Vulkan API Version: 1.0.65

ERROR: [Loader Message] Code 0 : libVkICD_mock_icd.so: cannot open shared object file: No such file or directory
ERROR: [Loader Message] Code 0 : /usr/lib/libvulkan_radeon.so: wrong ELF class: ELFCLASS32
Instance Extensions:
====================
Instance Extensions     count = 18
        VK_KHR_device_group_creation        : extension revision  1
        VK_KHR_display                      : extension revision 23
        VK_KHR_external_fence_capabilities  : extension revision  1
        VK_KHR_external_memory_capabilities : extension revision  1
        VK_KHR_external_semaphore_capabilities: extension revision  1
        VK_KHR_get_display_properties2      : extension revision  1
        VK_KHR_get_physical_device_properties2: extension revision  2
        VK_KHR_get_surface_capabilities2    : extension revision  1
        VK_KHR_surface                      : extension revision 25
        VK_KHR_wayland_surface              : extension revision  6
        VK_KHR_xcb_surface                  : extension revision  6
        VK_KHR_xlib_surface                 : extension revision  6
        VK_EXT_acquire_xlib_display         : extension revision  1
        VK_EXT_debug_report                 : extension revision 10
        VK_EXT_debug_utils                  : extension revision  2
        VK_EXT_direct_mode_display          : extension revision  1
        VK_EXT_display_surface_counter      : extension revision  1
        VK_KHR_surface_protected_capabilities: extension revision  1
amdgpu: unknown (family_id, chip_external_rev): (143, 60)
/home/abuild/rpmbuild/BUILD/Vulkan-LoaderAndValidationLayers-1.0.65.0/demos/vulkaninfo.c:2337: failed with VK_ERROR_INITIALIZATION_FAILED

vulkan-amdgpu package was installed by default when amdgpu was installed.

Dirt rally 2.0 which uses steam play also can’t run with a windows style popup asking me to make sure to have drivers installed and a DirectX 11 or better graphic card.

p.s. Already tried to play some 3D games in dual boot windows to make sure the new card itself is working.

Hi
You have installed the amdgpu-pro driver…

No, it’s amdgpu without pro.

The rpm downloaded created two repos, one called amdgpu proprietary and the other is just amdgpu.
Everything in the other repo has package names of amdgpu-pro and it was disabled by default too.

That said I’m not sure if I need to uninstall kernel-firmware-amdgpu, which may conflict with the packages installed from the repo provided by the rpm.

Hi
It’s the radeon/amd built packages, mesa, xorg and wayland stack, proprietary, no src rpms…

You need to install the pro parts for vulkan, opencl etc as it’s likely conflicting with the Leap installed packages which complement the OSS amdgpu setup.

Hopefully there are some 32bit vulkan libs in there to support your 32bit game (ELF error)…

OK so I enabled another amdgpu-pro repo and installed amdgpu-pro, and vulkan-amdgpu-pro, after reboot vulkan still doesn’t work.

~> zypper lr -d | grep amdgpu
 2 | **amdgpu**                                | AMDGPU 21.50.2 repository                                            | Yes     | ( p) Yes  | No      |   99     | rpm-md | https://repo.radeon.c
om/**amdgpu**/21.50.2/sle/15/main/x86_64               |  
 3 | **amdgpu**-proprietary                    | AMDGPU 21.50.2 Proprietary repository                                | Yes     | (r ) Yes  | No      |   99     | rpm-md | https://repo.radeon.c
om/**amdgpu**/21.50.2/sle/15/proprietary/x86_64        |  
 4 | **amdgpu**-src                            | AMDGPU 21.50.2 repository                                            | No      | ----      | ----    |   99     | NONE   | https://repo.radeon.c
om/**amdgpu**/21.50.2/sle/15/main/source  

zypper se -i amdgpu
Loading repository data...
Reading installed packages...

S  | Name                       | Summary                                                          | Type
---+----------------------------+------------------------------------------------------------------+--------
i+ | amdgpu                     | amdgpu driver meta package                                       | package
i  | amdgpu-core                | Core meta package                                                | package
i  | amdgpu-dkms                | The amdgpu Linux kernel driver                                   | package
i  | amdgpu-dkms-firmware       | Firmware for amdgpu-dkms                                         | package
i+ | amdgpu-install             | AMDGPU driver repository and installer                           | package
i  | amdgpu-lib                 | amdgpu driver userspace meta package                             | package
i  | amdgpu-pro-core            | Pro Core meta package                                            | package
i  | kernel-firmware-amdgpu     | Kernel firmware files for AMDGPU graphics driver                 | package
i  | libdrm-amdgpu              | Direct Rendering Manager runtime library                         | package
i  | libdrm-amdgpu-common       | List of AMD/ATI cards' ID info                                   | package
i  | libdrm_amdgpu1             | Userspace interface for Kernel DRM services for AMD Radeon chips | package
i  | libdrm_amdgpu1-32bit       | Userspace interface for Kernel DRM services for AMD Radeon chips | package
i  | libwayland-amdgpu-client   | Wayland client library                                           | package
i  | libwayland-amdgpu-egl      | Wayland EGL library                                              | package
i  | libwayland-amdgpu-server   | Wayland server library                                           | package
i  | llvm-amdgpu-libs           | LLVM shared libraries                                            | package
i  | mesa-amdgpu-dri-drivers    | Mesa-based DRI drivers                                           | package
i  | mesa-amdgpu-filesystem     | Mesa driver filesystem                                           | package
i  | mesa-amdgpu-libEGL         | Mesa libEGL runtime libraries                                    | package
i  | mesa-amdgpu-libGL          | Mesa libGL runtime libraries and DRI drivers                     | package
i  | mesa-amdgpu-libGLES        | Mesa libGLES runtime libraries                                   | package
i  | mesa-amdgpu-libgbm         | Mesa gbm library                                                 | package
i  | mesa-amdgpu-libglapi       | Mesa shared glapi                                                | package
i  | mesa-amdgpu-libxatracker   | Mesa XA state tracker                                            | package
i  | mesa-amdgpu-vdpau-drivers  | Mesa-based DRI drivers                                           | package
i+ | vulkan-amdgpu              | AMD Vulkan                                                       | package
i+ | vulkan-amdgpu-pro          | AMD Vulkan                                                       | package
i  | xorg-x11-amdgpu-drv-amdgpu | Xorg X11 amdgpu video driver                                     | package


How is possible that both amdgpu and amdgpu-pro from two repos are needed in the same time?

Hi
The amdgpu package is just a meta package to pull in the rest of the stack (like a pattern). You woul need to ask the Radeon/AMD folks, AFAICT you need oss stack and the 32bit libs for vulkan.

When I had to do this, NVIDIA to AMD GPU, I downloaded AMD’s driver and did as the documentation page advised, created a Repository line that points to the directory of the driver.

For the install, after every kernel update, in YaST:

  1. search amdgpu
  2. force Update “^” amgpu*, kernel*, lib*, llvm*
  3. skip force Update on mesa*, vulkan*, xf86*, xorg*, leave Installed, just not force Update
  4. search for xorg-x11-server
  5. force Update on xorg-x11-server
  6. Accept
  7. reboot to take affect