Remarks
Many trials trying to get the suspend/resume working, ever since version 4.0, with zero success up to now.
Finally, the setup/settings detailed below seem to fix it, at least for a single monitor connected via SVGA.
Qubes freshly installed from qubes 4.1.1 iso.
BIOS
BIOS is restricted to 3.50 and below, because of the Summit Ridge series Processor.
Bios settings:
- Setting 1: Advanced / CPU configuration / SVM mode → enabled
- Setting 2: Advanced / Onboard Devices configuration / SR-IOV support → enabled
- Setting 3: Advanced / AMD CBS /NBIO common options / IOMMU —> enabled
- Setting 4: Advanced / AMD CBS /NBIO common options / PCIe ARI support → Auto (removes some corrupted pixels which appear on the top panel.
As installed, suspend/resume of Qubes causes hard lockup of display and sometimes reboot. lsmod shows both radeon and amdgpu in use.
Modules/parameters
Create /etc/modprobe.d/radeon-amdgpu.conf and add:
blacklist radeon
options amdgpu si_support=1
options amdgpu cik_support=1
Update initrd (I think this is necessary):
sudo dracut --force
Up to now, changes mean we can boot with only amdgpu module, and no radeon.
Command line parameters
Also, edit /etc/default/grub, and add “mem_sleep_default=deep” to the end of GRUB_CMDLINE_LINUX, and update grub. For me, the command was :
sudo grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg
(Not sure that this command line option is necessary.)
xorg amdgpu driver
Install the amdgpu xorg driver:
qubes-dom0-update xorg-x11-drv-amdgpu
This is version 22.0.0-2.fc32.
Driver option: create /etc/X11/xorg.conf.d/50-amdgpu.conf :
Section "Device"
Identifier "card0"
Driver "amdgpu"
Option "AccelMethod" "none"
EndSection
Not sure what that does - the ‘amdgpu’ man page says it only turns off 2D acceleration. glxgears looks OK, and the option seems to be necessary for resume to work.
Now suspend/resume seems to work. At least, over 100 cycles without problems…
- Tested/working: Network, SATA, USB…
- Not tested: audio, non-svga video outputs, instrumentation/sensors, fTPM.
- Am crossing fingers!
Attachments
layout:
‘hcl’
type:
‘desktop’
hvm:
‘yes’
iommu:
‘yes’
slat:
‘yes’
tpm:
‘unknown’
remap:
‘yes’
brand: |
ASRock
model: |
B450M Pro4
bios: |
P3.50
cpu: |
AMD Ryzen 7 1700 Eight-Core Processor
cpu-short: |
FIXME
chipset: |
Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Root Complex [1022:1450]
chipset-short: |
FIXME
gpu: |
Advanced Micro Devices, Inc. [AMD/ATI] Oland PRO [Radeon R7 240/340] [1002:6613] (rev 87) (prog-if 00 [VGA controller])
gpu-short: |
FIXME
network: |
Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
memory: |
32699
scsi: |
CT4000MX500SSD1 Rev: 045
CT2000MX500SSD1 Rev: 033
iHAS124 F Rev: CL9M
CT1000X8SSD9 Rev: PMAP
STORE N GO Rev: 0000
usb: |
2
versions:
-
works:
‘yes’
qubes: |
R4.1
xen: |
4.14.5
kernel: |
5.15.81-1
remark: |credit: |
CharlieC
link: |
FIXLINK