Kernel for Microsoft Surface devices

PPA description

Kernel 4.4.0.20-36 from Xenial, backported to Trusty and Wily, and patched with:

* Zen interactivity
* CONFIG_RCU_BOOST=y amongst other RCU subsystem settings
* CONFIG_OPTIMIZE_HARDER=y for -O3 compilation
* BFQv7r11 I/O scheduler (this and all of the above, plus an updated AUFS module and other enhancements, from liquorix.net; patch version 4.4.6-3)
* TuxOnIce, UKSM realtime memory data deduplication, and Graysky's kernel GCC
* Swappiness 10, Zswap compressor LZ4, cache pressure 50, UKSMd nice priority 15, YeAH TCP congestion control, tweaked Zen responsiveness with tuned CFS and CFQ as default (except with BFS, see below), and tuned CPUFreq when intel_pstate is not available; all of these from xanmod.org
* All linux-pm changes up to and including 4.6-rc2
* New schedutil CPUFreq governor by Rafael Wysocki (except with BFS)
* New interactive CPUFreq governor from Manjaro, thanks to Rob McCathie: http://paradoxcomputers.com.au/manjaro/packages/desktop-kernel-test/
* Various patchwork improvements and fixes for intel_rapl, intel_pstate and CPUFreq; see changelog for full details
* All HID changes up to and including 4.6-rc1, plus a patch to synchronize MT frame on reset_resume
* All LED changes up to and including 4.5 (needed for HID changes above)
* Various Surface-specific patches for touchscreen, camera, buttons, and touchpad
* Holger Hoffstätte patches from https://github.com/hhoffstaette/kernel-patches, including:
* BFS CPU scheduler v467 by Con Kolivas, ported by Holger, with CONFIG_BLK_CGROUP and CONFIG_BFQ_GROUP_IOSCHED unset and the BFQ I/O scheduler as default (for the BFS version)
* Built with GCC 5.3.1 (also present and installable from this PPA for Trusty)
* No lowlatency flavour, udeb or dbg packages
* New flavours, namely -surface and -surface-bfs, instead of -generic
* CONFIG_ZONE_DMA unset and CONFIG_IRQ_FORCED_THREADING_DEFAULT set for amd64
* Default HZ set at 625 for 0.0016 jiffies (thanks to tropic on the XanMod forum), and aligned CFS parameters (based on Liquorix/XanMod) with "Wasted Cores" patches: https://github.com/jplozi/wastedcores/tree/master/patches
* Ubuntu i915 backport module enabled as default for all cards and renamed to i915.ko, with the stock 4.4 module renamed to i915_old.ko
* FBC and PSR patches for better power consumption on Haswell (Surface Pro 3) and Cherryview (Surface 3), now sourced directly from the backport module as of 17-33
* Patchset to enable FBC by default on Skylake, too (Surface Pro 4, Surface Book)
* Surface 3 touchscreen by Benjamin Tissoires: https://lkml.org/lkml/2016/5/19/81

There are also backported versions of thermald and iasl (from acpica-unix) for Trusty, along with the latest linux-firmware package and an updated initramfs-tools for both Trusty and Wily. The newest wifi firmware from git://git.marvell.com/mwifiex-firmware.git has been included in linux-firmware, and integration of the new i915 module with fixes for NVMe in initramfs-tools.

These packages will update automatically when you run:

apt-get update
apt-get upgrade

To automatically install the current, and newest point release kernel (such as 4.5) when it is published, you will need to:

apt-get install linux-surface

This is from the linux-surface-meta package, which always depends on the latest point release. However, apt-get update will show the packages as held when there is a new version. To bring in the updated kernel, it will therefore be necessary to run (after apt-get update)

apt-get dist-upgrade

This also applies to users who were using the previously-numbered versions, such as linux-headers-4.4.5-3-surface. Once performed, it will only be necessary to do so again for each point release, as previously explained. Otherwise the standard apt-get upgrade will do the job.

If you prefer to install the version with the BFS CPU scheduler and BFQ I/O scheduler as default (but no schedutil CPUFreq governor), instead run:

apt-get install linux-surface-bfs

There are also testing packages, which are bleeding-edge and may be unstable or cause crashes. You have been warned! Those can be installed via the same method, except for replacing -surface with -testing, i.e.:

apt-get install linux-testing(-bfs)

Please see the changelog for the differences between this and the stable package.

Finally, for those on Trusty or Linux Mint I highly recommend installing the new graphics stack from my other PPA at https://launchpad.net/~tigerite/+archive/ubuntu/mint-xorg-update - if you are running Trusty 14.04 or 14.04.1, or Linux Mint 17.2 or below, you can instead choose to install only the newest Mesa and graphics drivers from https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers (please note, this PPA will not upgrade your X.org unlike mint-xorg-update; it will remain at 1.15.1). Without this step, you may find that the kernel causes system and/or graphics instability, because the Trusty drivers are very outdated and have issues with the newest kernel code.

Adding this PPA to your system

You can update your system with unsupported packages from this untrusted PPA by adding ppa:tigerite/kernel to your system's Software Sources. (Read about installing)

sudo add-apt-repository ppa:tigerite/kernel
sudo apt update
        
Technical details about this PPA

This PPA can be added to your system manually by copying the lines below and adding them to your system's software sources.

Display sources.list entries for:
deb https://ppa.launchpadcontent.net/tigerite/kernel/ubuntu YOUR_UBUNTU_VERSION_HERE main 
deb-src https://ppa.launchpadcontent.net/tigerite/kernel/ubuntu YOUR_UBUNTU_VERSION_HERE main 
Signing key:
4096R/141FA252A51A5CE0723FB4BB984AE706D31B333A (What is this?)
Fingerprint:
141FA252A51A5CE0723FB4BB984AE706D31B333A

Dependencies:

For questions and bugs with software in this PPA please contact Peter Hunt.

PPA statistics

Activity
0 updates added during the past month.
View package details

Overview of published packages

129 of 29 results
Package Version Uploaded by
acpica-unix 20160108-3 Peter Hunt ()
coreutils 8.21-1ubuntu5.4 Dave Chiluk ()
gcc-5 5.3.1-13ubuntu3 Peter Hunt ()
gcc-5-update-alternatives 1.0-2 Peter Hunt ()
initramfs-tools 0.120ubuntu6.1 Peter Hunt ()
initramfs-tools 0.103ubuntu4.5 (Newer version available) Peter Hunt ()
isl 0.15-3~14.04 Matthias Klose ()
kernel-wedge 2.90ubuntu2 Peter Hunt ()
kernel-wedge 2.90ubuntu2 Peter Hunt ()
linux-firmware 1.157 Peter Hunt ()
linux-firmware 1.157 Peter Hunt ()
linux-surface 1:4.4-6.3+2 Peter Hunt ()
linux-surface 1:4.4-6.3+1 Peter Hunt ()
linux-surface 1:4.4-6.3+1 Peter Hunt ()
linux-surface-bfs 1:4.4-6.3+1 Peter Hunt ()
linux-surface-bfs 1:4.4-6.3+1 Peter Hunt ()
linux-surface-bfs 1:4.4-6.3+1 Peter Hunt ()
linux-surface-bfs-meta 1:4.4 Peter Hunt ()
linux-surface-bfs-meta 1:4.4 Peter Hunt ()
linux-surface-bfs-meta 1:4.4 Peter Hunt ()
linux-surface-meta 1:4.4 Peter Hunt ()
linux-surface-meta 1:4.4 Peter Hunt ()
linux-surface-meta 1:4.4 Peter Hunt ()
linux-testing 1:4.4-6.3+9 Peter Hunt ()
linux-testing-bfs 1:4.4-6.3+1 Peter Hunt ()
linux-testing-bfs-meta 1:4.4 Peter Hunt ()
linux-testing-meta 1:4.4 Peter Hunt ()
mpfr4 3.1.3-1~14.04 Matthias Klose ()
thermald 1.5-2 Peter Hunt ()
129 of 29 results

Latest updates

  • linux-surface 413 weeks ago
    Successfully built
  • linux-testing 413 weeks ago
    Successfully built
  • linux-surface 416 weeks ago
    Successfully built
  • linux-surface-bfs 416 weeks ago
    Successfully built
  • linux-surface 416 weeks ago
    Successfully built