[Solved] Switch from Nvidia to AMD

Hello forum!

This is my first post here and I am by far no linux-veteran. But maybe someone here can help me out. :slight_smile:

I have used Endeavour for some months with a nvidia gpu (RTX 2070) but unfortunately the gpu broke and had to be replaced. The new graphic adapter is from AMD (RX 6700 XT). If I try to boot from GRUB with the new card the boot process freezes - I guess because the kernel failes to load the previous installed nvidia modules?

So my question is (of course): how can I fix this?

Do I have to reinstall Endeavor from live (with keeping /home) or can I just enter the TTY from GRUB somehow to remove the nvidia-drivers (I cannot access the TTY during the frozen boot process) or maybe edit the GRUB entry to get around this problem?

Thank you very much in advance and have a nice day!

Does it boot on the live ISO? You may have to chroot into the installed system and i would make sure that amd-ucode is installed. Not sure on what else to do here? :thinking: I’m not sure if nvidia drivers should be removed and also update grub? May someone else give some thought. I don’t think you should have to reinstall.

Edit: If you can chroot with the live ISO that is at least what i would try.

1 Like

Hello and thank you very much for your answer!

Unfortunately I can access the GRUB from the live ISO but running either the standard or the nvidia-supported live system results in these few lines on my screen:

Probing EDD (edd=off to disable)...ok
:: running early hook [udev]
Starting version 248-5-arch
:: running early hook [archiso_pxe_ndb]
:: running hook [udev]
:: Triggering uevents...

After this nothing happens and I can only reboot.

Quite strange as I can boot to Windows via my GRUB normally.

Do you possibly have another idea?

Thank you :slight_smile:

Edit: While the EOS live medium does not boot - the live iso from pop_os does. :thinking: But I guess this won’t help me very much?

load_modules=off as grub parameter?

As parameter with my installed EOS or for the EOS live iso?

For your installed EOS

modprobe.blacklist=nvidia-current
or
modprobe.blacklist=nvidia
Will only blacklist the nvidia module, however they should’t be loaded

I would also try nomodeset as a kernel parameter on both if that doesn’t work. I think the problem is the new Graphics card.

2 Likes

Thank you both!

To which line do I have to edit the load_modules=off and/or the nvidia parameter?
The line which contains vmlinuz?

yeah, after quiet, nowatchdog, that stuff

when you boot the grub menu comes up press e to edit and add after “quiet” then continue boot by pressing enter i think.

Thanks!

I have tried load_modules=off and removed quiet to have a closer look where exactly the boot process will hang.

The last line displayed is

[OK] Finished Load/Save Random Seed

After that it stops

Did you try nomodeset?

Edit: I’m 100% sure nomodeset should work as these cards have issue booting until installed.

Edit2: On some systems anyway. :wink:

Thank you!

This seems to get my further, the process now stops while declaring missing dependencies for a no more existent device (a former USB Drive). I guess I have to repair my fstab.

As my boot stops there maybe it will work with the live ISO instead. Where do I have to Type the nomodeset Parameter there as there seems to be no vmlinuz-line? And should I replace other parameters there like noveau or radeonmodule etc?

I suppose that you need to use amdgpu for that card

If you can boot either on the live usb and edit the grub menu and add nomodeset after quiet. See if it boots.

Yes it needs amdgpu.

Unfortunately the live ISO does not boot.

I have done this:
I choosed the standard entry for the EOS live system and pressed TAB to edit it (as displayed below the GRUB entrys). Then some lines show up:

.linux boot/x86_64/vmlinuz-linux archisobasedir=arch cow__spacesize=10G archisolabel=ENDEAVOUROS noveau.modeset=1 nouveau i915.modeset=1 radeon.modeset=1 modprobe.blacklist=nvidia initrd=boot/intel-ucode.img,boot/amd-ucode.img,boot/x86_64/archiso.img

I have then placed the word “nomodeset” after the “modprobe.blacklist=nvidia” parameter.

The boot process then starts after pressing enter but fails with an x.org-server error:

xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted) Fatal server error: (EE) no screens found(EE)

Maybe the nomodeset-parameter has to go elsewhere or have i put the word amdgpu somewhere in the line?

Sorry for all these questions, I am still quite new. :confused:

Try to add amdgpu as grub parameter

vesa as last resort

EDIT : Also try amdgpu.modeset=1 as replacement of nomodeset

after the blacklist entry and with or without nomodeset?

by replacing nomodeset

EDIT : also remove radeon.modeset=1 and replace it with amdgpu.modeset=1