Surface Pro 7 - linux-surface/linux-surface GitHub Wiki
Rebooting gets stuck at the Surface logo
Add reboot=pci
to your kernel boot parameters. This seems to be no longer necessary on recent kernels.
If using the kernel boot parameter intel_iommu=on
, this may not work, the fix is to disable iommu. You can track the issue on the intel precise touch repo
Using thermald to avoid thermal throttling
Install thermald
for your distro, on many distros it might be installed by default. Have a look at contrib/thermald for an example configuration.
Using cpupower-gui to avoid thermal throttling and get better battery life
Install cpupower-gui and lower the maximum frequency for a compromise between performance, thermals and battery life.
Example config file: ~/.config/cpupower_gui/cpg-balanced22.profile
# name: balanced22
# CPU Min Max Governor Online
0 400 2200 performance True
1 400 2200 performance True
2 400 2200 performance True
3 400 2200 performance True
4 400 2200 performance True
5 400 2200 performance True
6 400 2200 performance True
7 400 2200 performance True
Then run sudo cpupower-gui profile balanced22
or select the profile in the GUI app instead.
Using auto-cpufreq to get better battery life
An alternative to cpupower-gui
that you can use is auto-cpufreq
. It is an automatic CPU speed & power optimizer for Linux. It monitors the computer's battery state, CPU usage, CPU temperature, and system load to automatically adjust your CPU speed, CPU turbo mode, and power.
Using surface-control to decrease fan noise (for models that come with a fan)
Setting the surface profile to balanced
prevents the fans from ramping up. Useful in combination with cpupower-gui. See surface-control.
sudo surface profile set balanced
Booting Fedora ISO
If you're having issues with getting passed the "_" when booting into Fedora ISO, try following these step from Discussions#1455 & Issue#1162:
- Use Ventoy to boot into Fedora Live USB
- Some might need to select grub2 in Ventoy when booting into the Live USB/ISO
- Connect to WiFi/Internet
- Install Fedora
- Without rebooting,
chroot
into your installation:sudo chroot /mnt/sysimage
- Add linux-surface repos:
dnf config-manager --add-repo=https://pkg.surfacelinux.com/fedora/linux-surface.repo
- Install linux-surface kernel:
dnf --disablerepo=updates install --allowerasing kernel-surface iptsd libwacom-surface
- Enroll secure boot keys:
dnf install surface-secureboot
- Reboot which should begin Mokmanager prompt, enroll keys (password
surface
), and then boot successfully.