After 3 evenings of testing and hundreds of permutations, I finally found a setting that works to make suspend works on my laptop.
Current laptop: Lenovo Thinkbook G2 ARE with AMD processor 4700u (renoir)and 40GB ram
Fix suspend and resume
to find your kernel version, type
uname -a
For kernel 5.19, 6.0 and newer
add the boot parameter , if you had the previous iommu=soft, remove it.
amd_iommu=off
For kernel 5.18 and lower
add the boot parameter :
iommu=soft
On a GRUB system
If your system uses GRUB, edit the /etc/default/grub
file. On the following line :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
add the following :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash <put parameter here>"
This part can vary a lot between distributions, apply the changes with the following:
sudo update
-grub
or
grub2-mkconfig -o /boot/grub/grub.cfg
or
grub-mkconfig -o /boot/grub/grub.cfg
reboot
On a SYSTEMD-BOOT system
edit your config file, it could be any of the following:
/boot/loader/entries/<your_config>.conf
/boot/esp/loader/entries/<your_config>.conf
Note: on PopOS! the file is called : /boot/efi/loader/entries/Pop_OS-current.conf
If you still can’t find it, try with this:
sudo find /boot -iname '*.conf'
In your file you should see something similar as :
options root="LABEL=arch_os" rw
add the new option before the last double quote, like this:
options root="LABEL=arch_os" rw <put your parameter here>
Note: on PopOS! it will look like this, add the iommu=soft after ro.
options root=UUID=... ro iommu=soft quiet loglevel=0 systemd.show_status=false splash
Thanks to Man Son Ha for the details about PopOS!
reboot