nVidia resume from suspend
sudo nano /etc/modprobe.d/nvidia-power-management.conf
Then add the following line
options nvidia NVreg_PreserveVideoMemoryAllocations=1 NVreg_TemporaryFilePath=/var/tmp
See point 10 here:
https://wiki.archlinux.org/title/NVIDIA/Tips_and_tricks
And have you enabled the nVidia services?
The above worked for me on a Legion 5.