Setup for Ubuntu on a Razer Blade 15, Alder Lake, NVIDIA RTX 3070 Ti (updated 7/26/2022):
sudo add-apt-repository ppa:cappelikan/ppa sudo apt update sudo apt install mainline
To get mainline. Update to 5.18.0.
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ibt=off" Then run: sudo update-grub
sudo apt install nvidia-driver-515
sudo apt-mark hold openrazer-daemon sudo apt-mark hold openrazer-doc sudo apt-mark hold openrazer-driver-dkms sudo apt-mark hold openrazer-meta sudo apt-mark hold python3-openrazer
S3 suspend does not work well. Touchpad is super jumpy after resume and video loses xrandr sources and ability to change screen brightness.
With S3 and s2idle, the system also immediately wakes during suspend.
To fix:
Make a new file /etc/systemd/system/acpi-wake-andy.service with:
[Unit] Description=ACPI Wake Service [Service] Type=oneshot ExecStart=/bin/sh -c "echo RP05 | sudo tee /proc/acpi/wakeup" [Install] WantedBy=multi-user.target
Enable with:
sudo systemctl start acpi-wake-andy.service sudo systemctl enable acpi-wake-andy.service sudo systemctl status acpi-wake-andy.service # check status
s2idle uses a lot of power by default. To fix, tell the NVIDIA driver to go to sleep:
Add a file: /etc/modprobe.d/nvidia-s2idle.conf
options nvidia NVreg_EnableS0ixPowerManagement=1 NVreg_S0ixPowerManagementVideoMemoryThreshold=10000
s2idle is fine with this kernel and the NVIDIA options. Earlier kernels would burn 10%/hour in s2idle. I’m seeing 2%/hour now and Intel’s debug software suggests I can improve.
By default the built-in microphone does not work. Thanks to ewfuentes we now have a solution!
sudo cp /lib/firmware/intel/sof-tplg/sof-hda-generic-2ch.tplg ~/
sudo cp sof-hda-generic-2ch-pdm1.tplg /lib/firmware/intel/sof-tplg/sof-hda-generic-2ch.tplg
sudo reboot
Enable automatic NVIDIA GPU power management. See my PRIME Render Offload post for more information.
Edit /etc/udev/rules.d/80-nvidia-pm.rules
Put in:
# Enable runtime PM for NVIDIA VGA/3D controller devices on driver bind ACTION=="bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030000", TEST=="power/control", ATTR{power/control}="auto" ACTION=="bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030200", TEST=="power/control", ATTR{power/control}="auto" # Disable runtime PM for NVIDIA VGA/3D controller devices on driver unbind ACTION=="unbind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030000", TEST=="power/control", ATTR{power/control}="on" ACTION=="unbind", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x030200", TEST=="power/control", ATTR{power/control}="on"
The biggest problem right now is that the s2idle sleep is not always good. I’m trying to figure out why sometimes it stays hot and burns battery and sometimes it’s fine. I’m hoping this helps but haven’t tried it yet: Intel patch
Openrazer works great for all the lights. I have not been able to do any fan control at all.
One thing to consider is the Tensorbook from Lambda Labs. They have perfect support — I actually talked to them in person and they demoed suspend, on-demand mode on the NVIDIA GPU, mic, webcam, etc. Older CPU but once you factor in 64GB of ram it’s about the same price.
They are the only vendor I’ve ever seen that actually understood Optimus much less made it work correctly.
I’ve never had on-demand work for any NVIDIA laptop including my Blade 15. It works now!
All the being said, the hardware build is great and it’s a pleasure to use.
04/10/22