Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Announcements and updates #96

Open
archseer opened this issue Feb 22, 2020 · 79 comments
Open

Announcements and updates #96

archseer opened this issue Feb 22, 2020 · 79 comments

Comments

@archseer
Copy link
Member

Subscribe to this issue to be notified of announcements, changelogs and manual upgrade notices.

(For update announcements only)

@linux-surface linux-surface locked and limited conversation to collaborators Feb 22, 2020
@archseer archseer pinned this issue Feb 22, 2020
@archseer
Copy link
Member Author

archseer commented Feb 27, 2020

5.5.6 was released!

Build system

We now have a build system for packages for Arch, Debian and Fedora which should make it easier for us to release new kernel versions. The pkg directory also contains the packaging files that you can use to rebuild the kernel on your own.

Automated repositories

We have set up https://pkg.surfacelinux.com/ as the official source for patched kernel packages and other utilities. If you were using the package repositories before, please update your local setup.

  • The package repositories are now the recommended way to install the kernel. That way you will automatically receive future updates.

  • We are officially supporting Arch, Debian and Fedora builds.

  • The config files are moved to the device-specific/known issues wiki pages and are no longer automatically copied over.

  • The setup.sh script now basically does nothing.

As a result of these changes, installation is now as easy as adding the package repository, installing a bunch of packages and following the guide to add any necessary config files for your device.

New IPTS driver (pen or single-touch)

5.5 patchsets also feature a new IPTS driver which works without the Intel GuC submission APIs that were removed upstream. The caveat is that it supports either pen OR single-touch. If you want to continue using multi-touch, either use the LTS release (4.19) or please manually install the latest 5.3 release.

By default pen support is enabled. If you want to switch to single-touch create a file under /etc/modprobe.d/ipts.conf:

options ipts singletouch=y

Note: The new driver works on gen7 (SL3 Intel & SP7) as well!

@kitakar5525
Copy link
Member

kitakar5525 commented May 16, 2020

mwifiex: power_save now disallowed by default to improve connection stability

v5.5: fedora-31-5.5.9-3, fedora-30-5.5.9-3, debian-5.5.9-2, arch-5.5.9-2
v5.6: Since the first release of the v5.6 kernel
v4.19: debian_lts-4.19.110, arch_lts-4.19.110

You may have already noticed, since commit linux-surface/kernel@7182ea0b4b5e9a, power_save is disallowed by default. There have been many reports that configuring powr_save from userspace tools (e.g. via NetworkManager config file or udev rule) is not so solid. Now, no need to configure it manually.

If you want to try to allow power_save, pass allow_ps_mode=Y parameter to the mwifiex driver. This only allows it to be enabled. To actually enable it, run sudo iw dev $devname set power_save on or by any other tools and check if it's actually enabled by sudo cat /sys/kernel/debug/mwifiex/mlan0/debug | grep "ps_"

@kitakar5525
Copy link
Member

kitakar5525 commented May 16, 2020

"v4.19: IPTS (touchscreen driver) stops working (SP4 and SB1)" has been hopefully fixed

v4.19: debian_lts-4.19.123-1, arch_lts-4.19.123-1

Since commit linux-surface/kernel@8b45a31eb5977d, touch input on all kinds of SP4/SB1 devices should work without crashing. The no_feedback quirk has been finally removed🎉 thanks to @StollD
If you find any issues, please open an issue and let us know.

EDIT: This fix is for "touch input crashing after some use" or "touch input broken when no_feedback=1". You may still encounter the other issues, especially regarding suspend.

@qzed
Copy link
Member

qzed commented Jul 2, 2020

Noteworthy changes in the v5.7.7 and v4.19.131 releases

There have been some changes to the Surface Aggregator Module driver that have now been integrated into the v5.7.7 and 4.19.131 releases (and also the 5.4 patches). More specifically:

  • The first parts of the Surface Book 3 support have been merged: You can now control the dGPU power via surface-control or alternatively directly via sysfs, exactly like on the Surface Book 2. Further support (especially keyboard and touchpad) is currently still under development, so if you're using a Surface Book 3, you probably still want to head over to the Surface Aggregator Module repo and install the module from the feature/sb3-v2-branch.
  • The Surface Pro 6 with MSHW0111 as SID-device-ID is now correctly set up. This means that the lid and performance-mode setting should now work correctly on those devices.
  • The internals of the Surface Serial Hub (surface_sam_ssh) driver have been completely re-implemented with the goal of having an intrinsically asynchronous communication framework. This should ideally result in smoother communication with the EC and less hick-ups. More restructuring is yet to come, but this is a first big step towards getting the Surface Aggregator Module driver upstream. Additionally, some code has been cleaned up.

@qzed
Copy link
Member

qzed commented Jul 5, 2020

New packaging structure for Debian/Ubuntu packages

The packaging approach for .deb packages has changed with debian-5.7.7-2 and debian_lts-4.19.131-2. Previous packages did not remove outdated initrd files, unnecessarily consuming space on the boot partition. To fix this, we have now switched to meta-packages, meaning that each kernel is packaged with its version in the package name (e.g. linux-image-5.7.7-surface) and meta packages (linux-image-surface, linux-headers-surface, linux-image-surface-lts, linux-headers-surface-lts) can be used to keep the kernels up to date.

Unfortunately, this means that to upgrade the kernels (only this time, after that everything should work normal/as before), you'll have to manually uninstall the current kernel packages (linux-image-surface, linux-headers-surface, linux-image-surface-lts, and/or linux-headers-surface-lts) and re-install them afterwards. If you've already tried to upgrade, you can also complete the upgrade running sudo apt-get --fix-broken install, which should solve the issue for you automatically.

Additionally, we recommend you manually remove outdated initrd files after the upgrade. These files can be found under /boot, for example:

-rw-r--r--  1 root root 82644751 Mar 21 11:57 initrd.img-5.5.10-surface
-rw-r--r--  1 root root 82672122 Apr  1 15:33 initrd.img-5.5.13-surface
-rw-r--r--  1 root root 82116124 Mar 15 14:39 initrd.img-5.5.8-surface

Please remove only those that are outdated ending with -surface or -surface-lts, as indicated by their version. It is probably best, if you do this after uninstalling the old packages and before installing the new ones, as then you can remove all -surface/-surface-lts initrd files since installing the packages afterwards will re-build the new ones.

See also linux-surface/repo#3 for the issue reporting this problem.

In addition, we have decided to drop the custom linux-libc-dev packages. The necessary version of these packages should be provided by your distribution, so you should replace those (linux-libc-dev-surface, linux-libc-dev-surface-lts) by installing linux-libc-dev from the repository of your distribution.

@qzed
Copy link
Member

qzed commented Jul 13, 2020

Noteworthy changes in the v5.7.8 and v4.19.132 releases

More Surface Book 3 support has been merged, specifically:

This means, that (apart from the known issues) only support for the detachment daemon is missing, which can be found in an experimental stage in https://github.com/linux-surface/surface-aggregator-module/tree/feature/sb3-v3.

Additionally a bug in the dGPU part of the Surface Aggregator Module driver have been fixed, which caused the driver to deadlock when resuming from suspend with a dGPU turned on at boot time via module parameters (#223).

More details can be found in the commit messages: b70e5fb (v5.7), 7a41e16 (v5.4), and f866ce0 (v4.19).

@qzed
Copy link
Member

qzed commented Jul 15, 2020

Noteworthy changes in the v5.7.8-2 and v4.19.132-2 releases

Unfortunately, the previous release introduced a bug, leading to HID devices handled via the SAM module (i.e. keyboard and touchpad) on the Surface Laptop not working any more. This should be fixed with the new releases. If this issue persists with those releases, please let us know at linux-surface/surface-aggregator-module#45.

@qzed
Copy link
Member

qzed commented Jul 30, 2020

Noteworthy changes in the v5.7.11-1 and v4.19.135-1 releases

The most notable changes are:

  • The patch required for setting dGPU power on the Surface Book 1 via ACPI call (see [SB] SAM Support (dGPU-detection, clipboard-detach handling) #93 for details) has been added to the repository and the latest kernels.
  • Performance modes have been enabled for Surface Laptop 1 and 2.
  • Support for D0-exit/D0-entry notifications, sent to the SAM controller when suspending (D0-exit) or resuming (D0-entry) on newer (gen. 7+) devices, has been added. This may (or may not) change suspend behavior slightly on those devices.
  • Other internal changes and bug-fixes in the SAM driver.

More details can, as always, be found in the respective commit messages (e.g. for v5.7).

@qzed
Copy link
Member

qzed commented Aug 15, 2020

Changes in v5.8.1

We switched IPTS support from built-in single-touch to our new-ish iptsd daemon. This means, that to get touch support, you'll have to install the iptsd package and start/enable the systemd iptsd.service (systemctl enable --now iptsd.service).

The iptsd daemon is still in somewhat early stages, but it should already provide a good replacement for the previous single-touch-only driver. It does support multi-touch (and stylus at the same time), but contact-area/pressure calculation is currently still missing, and things like jitter in contact points may need some improvement. Unfortunately, there have been no changes for Gen7 devices (SL3, SB3, SP7) yet.

If you experience any issues, let us know. You can always revert to the previous, single-touch-/stylus-only implementation by installing the old driver from https://github.com/linux-surface/intel-precise-touch/tree/old-driver (see "Building (DKMS)").

@qzed
Copy link
Member

qzed commented Aug 18, 2020

Changes in v5.8.1-3 (Arch non-LTS), v5.8.1-2 (other), v4.19.139-3 (Arch LTS), and v4.19.139-2 (other)

In these versions, a new bus and device type has been added for System Aggregator Module (SAM) devices. Due to this, a couple of things have been changed with regards to userspace:

  • First of all, the surface_sam_sid module has been replaced by surface_sam_device_hub. If you rely on this module name (e.g. in your mkinitcpio.conf for an encrypted device setup on the Surface Laptop 3 or Book 3), please make sure to update the name there.
  • Second, the device path of the performance mode device has been changed. It can now be found under /sys/bus/ssam/devices/03:01:00:02/. The surface-control tool has been updated accordingly with version 0.2.7, so please make sure that it is up-to-date if you encounter any issues with the performance mode.

Known issues: On 7th generation devices (SP7/SL3/SB3), there currently is a warning emitted to the kernel log when the charger is connected or disconnected. This can be safely ignored and will be addressed in the next release. This has been fixed in the v5.8.3 and v4.19.141 releases.

@qzed
Copy link
Member

qzed commented Aug 28, 2020

Changes in v5.8.5 and v4.19.142

@qzed
Copy link
Member

qzed commented Sep 8, 2020

Changes in v5.8.7 and v4.19.143

  • A bug has been fixed in the SAM driver regarding initialization of driver when probing against the battery in the base of the device.
  • The sb1_dgpu_sw module has been integrated into the kernel/patches. This means you can now control your dGPU power directly via echo 1 | sudo tee /sys/bus/platform/devices/MSHW0041:00/dgpu_power to turn it on and echo 0 | sudo tee /sys/bus/platform/devices/MSHW0041:00/dgpu_power to turn it off. The acpi-call module is no longer required.

@qzed
Copy link
Member

qzed commented Sep 17, 2020

Changes in v5.8.10 (Fedora v5.8.9) and v4.19.146

These releases contains two major changes that may need manual intervention:

  • The device path for the performance-mode device has changed to /sys/bus/surface_aggregator/devices/01:03:01:00:01/. If you are using the surface-control utility, you will need to update that to v0.2.8. Specifically, the bus has been renamed to surface_aggregator and a domain ID has been introduced for Surface Aggregator Module (SAM) client devices.
  • All SAM modules have been renamed. If you rely on their names, e.g. via intird/initram/..., you will need to update that when updating the kernel. The specific changes are:
    surface_sam_ssh          -> surface_aggregator
    surface_sam_debugfs      -> surface_aggregator_debugfs
    surface_sam_device_hub   -> surface_aggregator_registry
    surface_sam_san          -> surface_acpi_notify
    surface_sam_sid_power    -> surface_battery
    surface_sam_dtx          -> surface_dtx
    surface_sam_sid_vhf      -> surface_hid
    surface_sam_hps          -> surface_hotplug
    surface_sam_vhf          -> surface_keyboard
    surface_sam_sid_perfmode -> surface_perfmode
    

Additionally:

  • A bug has been fixed where SAM client devices would not be registered on the Surface Book 3, causing keyboard, touchpad, and battery information to not work.
  • Kconfig options for the Surface Aggregator Module have been renamed in accordance to renaming the modules. Consult the updated config files if you rely on those.

Known Issues: There is a bug that may be triggered under certain conditions, preventing the Surface Aggregator Module drivers to load. This will be fixed with the next releases, new kernels with the fix applied are already being built.

@kitakar5525
Copy link
Member

Changes in v5.8.12-2 and v4.19.149-1 regarding mwifiex

suspend (for S0ix and AP scanning fix)

  • Simplified mwifiex suspend fix change
    Tested on SB2 that S0ix is still working after this change.
    If by any chance you noticed S0ix is broken now even though you're sure it was working before, let me know by issues or IRC.

firmware reset feature fix

  • Addressed deadlock when reset failed
    Now mwifiex should not prevent the computer from shutting down after reset failure
  • Added quirk for firmware reset for Surface gen4+ and Surface 3 (Currently SP3 is not supported yet)
    Now mwifiex driver should reset fw properly by itself when fw went into a bad state.
    SP3 is not supported yet but at least deadlock should not happen now by the above deadlock fix.
  • Added enable_device_dump module parameter and disabled device_dump by default
    Before this change, device_dump was performed when resetting wifi. This took a little bit long time. Now disabled by default.

auto_ds (auto deep sleep)

  • Dropped auto_ds change (Now enabled by default again)
    It seems that auto_ds doesn't affect stability. Let's re-enable this and see what happens.
    You can still disable it again by the disable_auto_ds module parameter.

@qzed
Copy link
Member

qzed commented Oct 9, 2020

Changes in v5.8.14 and v4.19.150

Changes regarding the Surface Aggregator Module

  • HID and keyboard device names have been changed.
  • Support for the caps-lock light has been implemented for the Surface Laptop 1 and 2.
  • A bug has been fixed that would cause a kernel oops on thermal events.

@qzed
Copy link
Member

qzed commented Oct 16, 2020

Changes in v5.8.15 (Arch v5.8.14-2) and v4.19.151

Changes regarding the Surface Aggregator Module:

  • The HID and keyboard driver have been merged into a single module (surface_hid). If you have a Surface Laptop 1 or 2 and rely on the keyboard driver being in initram to unlock any encrypted partition, make sure to update this.
  • The Surface DTX user-space interface has changed. If you rely on this, you'll have to update surface-control to v0.3.0 and surface-dtx-daemon to v0.2.0.
  • Surface DTX support has been added for the Surface Book 3.

Additionally a patch has been added to fix a boot issue on the Surface Go series devices.

@qzed
Copy link
Member

qzed commented Oct 23, 2020

Changes in v5.9.1, v5.8.16

Changes regarding IPTS:

  • The user-space interface has been changed to improve stability, specifically during suspend/resume. You will need to update iptsd to v0.2.1.

Changes in v5.9.1, v5.8.16, v4.19.152

In addition to the changes above, there are the following changes have been made:

  • Update DTX driver state after resume.

@qzed
Copy link
Member

qzed commented Nov 4, 2020

Changes in v5.9.3, v5.8.18, and v4.19.154

Changes regarding the discrete GPU (dGPU):

  • The dGPU power management has been re-worked completely. Instead of explicit power control via user-space (e.g. surface dgpu ...), power control will now be fully handled by the kernel and its runtime-PM. Runtime PM is capable of turning the dGPU off completely by putting it into D3cold, however for this to work certain conditions need to be fulfilled (notably, runtime PM needs to be enabled for the dGPU and it must not be in use by anything, including X11/XWayland, which will usually prevent that). In general, if no drivers are loaded (e.g. due to them being blacklisted) and runtime PM is enabled for the device, the dGPU will be turned off. See the commit-message and updated wiki page for more details. Specifically, see the latter for help with configuration.

@qzed
Copy link
Member

qzed commented Nov 9, 2020

Changes in v5.9.6, v5.8.18-2, and v4.19.155

  • A bug has been fixed on 7th generation Surface devices (Surface Pro 7, Surface Laptop 3, Surface Book 3), preventing the Intel LPSS driver from loading and ultimately breaking battery status reporting as well as keyboard and touchpad input.
  • Improved stability in Surface Aggregator Module drivers. EC requests failing due to communication failures are now re-tried up to a total of three times.

@qzed
Copy link
Member

qzed commented Dec 16, 2020

Changes in v5.10

  • Initial camera support has been added. The front camera should now be accessible via libcamera (e.g. via the qcam or cam utilities) on the Surface Pro 4, 5, and 6, on the Surface Book 1 and 2, as well as on the Surface Go 2. Note that camera support is still in development, thus the image quality may not be as you expect (notably, the image will have a green tint due to missing white-balance algorithms). See https://github.com/linux-surface/linux-surface/wiki/Camera-Support for more details.

@StollD
Copy link
Member

StollD commented Dec 22, 2020

After a long and exhausting battle against the evil forces of the CI I was finally victorious! Or so... Anyways.

iptsd 0.3 was released

With this release we ported the iptsd daemon from Go to C, which helps tremendously with resource usage. If you are packaging iptsd or compile it from source, you will have to adjust your build scripts. There are some other notable changes, mostly regarding the behaviour of the stylus. Check out the release notes for more details.

@qzed
Copy link
Member

qzed commented Dec 26, 2020

Changes in v5.10.2 (Arch, Debian) and v5.9.16 (Fedora)

  • Add SAM support for Surface Laptop Go. This includes:
    • Battery status support.
    • Performance-mode support.

@qzed
Copy link
Member

qzed commented Jan 24, 2021

Changes in v5.10.10

  • Add support for Ambient Light Sensor used in Surface Book 3, Surface Laptop 3, and Surface Pro 7.

@qzed
Copy link
Member

qzed commented Feb 5, 2021

Changes in surface-control v0.3.1

The surface-control package will now add a surface-control group and change permissions of the performance-mode sysfs attribute so that surface performance set can be accessed from any user in that group (without needing sudo).

@qzed
Copy link
Member

qzed commented Feb 15, 2021

Changes in v4.19.176 and v5.10.16-2

  • Some modules have been split. Specifically

    • surface_hid has been split into
      • surface_hid_core for common components
      • surface_hid for support of Surface Laptop 3 and Surface Book 3
      • surface_kbd for support of Surface Laptop 1 and 2
    • surface_battery has been split into
      • surface_battery for battery support
      • surface_charger for AC support

    You may need to adjust your mkinitcpio/initram scripts accordingly.

  • Some Kconfig options have changed (see configs for details).

@qzed
Copy link
Member

qzed commented Feb 20, 2021

Changes in v5.10.16-3 and v5.10.17

  • Update camera patches with support for VBLANK control.

@qzed
Copy link
Member

qzed commented Mar 9, 2021

Changes in v5.10.21 and v5.11.5

  • SAM:
    • Add support for Surface Pro 7+. Battery and charging status should now be displayed.
  • IPTS:
    • Address suspend/resume issues
    • Flush buffers during shutdown, to prevent a timeout from CLEAR_MEM_WINDOW
    • Added initial support for setting gen7 devices into multitouch
  • Add firmware file override for ath10k wifi driver. The firmware file names for board.bin and board-2.bin can now be overwritten via module parameters.

@qzed
Copy link
Member

qzed commented Mar 29, 2021

Changes in v5.11.10 and v4.19.183

Thanks to @jonas2515, this update contains some noticeable WiFi improvements:

  • Attempt to properly fix WiFi firmware crashes caused by power-save mode and suspend. This aims to fix WiFi crashes without the need to disable power-saving options and achieve better power consumption.
  • Try to fix firmware wakeup issues.
  • Try to reduce WiFi speed impact when Bluetooth is active.
  • Fixes for P2P and AP modes. This should get miracast working.

Have a look at the following PRs for more infos:

@qzed
Copy link
Member

qzed commented Nov 1, 2021

Changes in v5.14.15

  • Fix a timeout issue when detaching the Surface Book 3 base or Surface Pro 8 keyboard cover which in the worst-case scenario (quickly detaching and re-attaching) could cause those devices (keyboard, touchpad, and battery information) to no longer work and require a reboot.
  • Change internal device handling of Surface Aggregator Module devices connected to the Surface Book 3 base. This should not have any noticeable effects, but if any issues occur please report them to [SB3] Request for Testing: Test latest releases with regards to detaching/re-attaching tablet/clipboard #623.

@qzed
Copy link
Member

qzed commented Nov 5, 2021

Changes in v5.14.16

@qzed
Copy link
Member

qzed commented Nov 9, 2021

Changes in v5.14.16-2

@qzed
Copy link
Member

qzed commented Jan 15, 2022

Changes in v5.15.14 and v5.16.1

  • Include board data for Surface Go 3 to enable cameras. Credits go to @djrscally.

@qzed
Copy link
Member

qzed commented May 16, 2022

Changes in v5.16

Changes in v5.17

Changes in v5.17.5-2

Changes in v5.17.5-3

Changes in v5.17.7

@qzed
Copy link
Member

qzed commented May 21, 2022

Changes in v5.17.9

  • Refactoring of Surface System Aggregator Module client device registration and client device hubs. Note: In case you use full disk encryption on the Surface Book 3 or Surface Pro 8, you will need to add surface_aggregator_hub to your initram.

@qzed
Copy link
Member

qzed commented May 28, 2022

Changes in v5.17.9-2

@qzed
Copy link
Member

qzed commented Jun 4, 2022

Changes in v5.18.1

@qzed
Copy link
Member

qzed commented Jun 14, 2022

Changes in v5.18.3 and v5.17.14

@qzed
Copy link
Member

qzed commented Jun 16, 2022

Changes in v5.18.4

  • Add support for tablet-mode switch on the Surface Laptop Studio.

@qzed
Copy link
Member

qzed commented Jun 25, 2022

Changes in v5.18.7

@qzed
Copy link
Member

qzed commented Aug 19, 2022

Changes in v5.19

@qzed
Copy link
Member

qzed commented Nov 9, 2022

Changes in v6.0.7-2

  • Partial support for the Surface Pro 9 (Intel), including:

    • battery and charger status,
    • internal HID devices (HID sensor hub and UCSI client), and
    • ACPI platform profile.

    TypeCover Support still needs testing/validation. More details can be found at Support for Surface Pro 9 #984.

    Thanks to @aj3423 for testing.

@qzed
Copy link
Member

qzed commented Nov 12, 2022

Changes in v6.0.8

  • Initial support for the TypeCover on the Surface Pro 9 (Intel), including keyboard and touchpad. Still missing: Support for the tablet mode switch.

    Thanks again to @aj3423 for testing.

@qzed
Copy link
Member

qzed commented Nov 13, 2022

Changes in v6.0.8-3

  • Add support for the Surface Aggregator Module on the Surface Laptop 5, including

    • battery and charger status,
    • internal HID devices (including keyboard and touchpad), and
    • ACPI platform profile.

    Thanks to @mnilsson76 for testing.

@qzed
Copy link
Member

qzed commented Dec 9, 2022

Changes in v6.0.12

  • Add patch allowing the hardware-reduced ACPI TAD on the SP7 to work as RTC.

    On the SP7, the ACPI Time and Date device (TAD) seems to be intended as primary real time clock (RTC). Changing the time via the standard CMOS RTC does not work. Unfortunately, the current kernel driver does not load for that as the SP7 uses a "hardware reduced" implementation, meaning it does not provide all functionality. The added patch allows the kernel to still use it as RTC.

    Credits go to @groengpx for the patch and @quo for reporting the issue.

@qzed
Copy link
Member

qzed commented Jan 5, 2023

Changes in v6.0.17 / v6.1.3

  • Re-introduce the "mwifiex: pcie: disable bridge_d3 for Surface gen4+" patch. This was previously dropped along with some other mwifiex patches as cleanup. While the majority of devices seem to work without it, some still require this quirk. This addresses WiFi crashes after suspend #1008.

@StollD
Copy link
Member

StollD commented Feb 1, 2023

Changes in v6.1.8-2 / v6.1.9

  • Updated the IPTS kernel driver to the latest version. This includes stability updates and switches the userspace interface to a HID based one.
  • Included the ITHC kernel driver written by @quo for touchscreen support on Surface Pro 7+ and later (only for Intel models).

Since the new kernel drivers use a HID based userspace interface, an updated version of iptsd is required!

See https://github.com/linux-surface/iptsd/releases/tag/v1.0.0 for the list of changes to iptsd (there are many).

If you had previously installed one of the kernel drivers through DKMS or built iptsd from source, please remove it completely before updating. Otherwise the custom-built versions might continue to override the built-in ones.

If you are building your own kernels from source, please note that the configuration option for IPTS has changed from CONFIG_MISC_IPTS to CONFIG_HID_IPTS. A new option CONFIG_HID_ITHC has been added alongside.

@qzed
Copy link
Member

qzed commented Feb 19, 2023

Changes in v6.1.12

@qzed
Copy link
Member

qzed commented Feb 20, 2023

Changes in v6.1.12-2

  • Add support for the tablet-mode switch on the Surface Pro 9. Thanks go to @aj3423 for testing.
  • Add workaround to fix shutdown issues on the Surface Pro 9. This may only work on some devices and might need further work. Please direct feedback to SL5/SP9 does not power off properly #1058 or Matrix chat. Thanks go to @aj3423 and @nouknouk for debugging and testing.

@qzed
Copy link
Member

qzed commented Feb 24, 2023

Changes in v6.1.12-3 / v6.1.13

  • Add workaround to fix shutdown issues on the Surface Laptop 5. This may only work on some devices and might need further work. Please direct feedback to SL5/SP9 does not power off properly #1058 or Matrix chat. Thanks go to @CheeseFM for debugging and testing.

@qzed
Copy link
Member

qzed commented Mar 3, 2023

Changes in v6.1.14 / v6.2.2

@qzed
Copy link
Member

qzed commented Mar 7, 2023

Changes in v6.1.15-2 / v6.2.2-2

@qzed
Copy link
Member

qzed commented Mar 12, 2023

Changes in v6.1.18 / v6.2.5

@StollD
Copy link
Member

StollD commented Apr 19, 2023

iptsd 1.2.0 has been released

This update to iptsd brings a very significant change: It replaces the old basic / advanced algorithms with a new algorithm that is a combination of both. This new algorithm is more robust towards noise (like the advanced one), while using vastly less resources (like the basic one).

If you have calibrated iptsd, you must remove the old calibration, as the values will no longer be accurate.

This update also changed the available config options. If you have a custom configuration, please check the values against the reference configuration.

For a full list of (user-facing) changes, look here: https://github.com/linux-surface/iptsd/releases/tag/v1.2.0

@qzed
Copy link
Member

qzed commented Apr 20, 2023

Changes in v6.2.12 and v6.2.11 (Fedora)

@StollD
Copy link
Member

StollD commented Jun 9, 2023

Changes in v6.3.6 (Fedora)

We have updated our Fedora packages to follow the upstream packages more closely. This fixes some issues with our old package, for example akmods should now work properly. Like the stock kernel, it will also keep around the last 3
versions automatically.

However, because the transition between the old and new packages is hitting an edge case in DNF, you MUST temporarily disable the running kernel protection. Otherwise DNF will refuse to remove the old package and install the new one.

You can do this by either rebooting into a stock kernel to do the upgrade, or by running the following command:

$ sudo dnf update --setopt=protect_running_kernel=False

@qzed
Copy link
Member

qzed commented Oct 22, 2023

Changes in v6.5.8

  • Add initial support for the Surface Laptop 3. In particular it's SAM EC, unlocking support for battery information and (ACPI) platform profiles.

@qzed
Copy link
Member

qzed commented Nov 20, 2023

Changes in v6.6.1/v6.5.11-2

  • Add initial Support for the Surface Laptop Studio 2. In particular it's SAM EC, unlocking support for the keyboard, HID-based sensors, battery information, (ACPI) platform profiles, and tablet-mode/display orientation. Note that we do not support the touchpad yet.

@qzed
Copy link
Member

qzed commented Jan 13, 2024

Changes in v6.6.10 (Arch Linux) / v6.6.11 (Ubuntu/Fedora)

  • Add driver for reading the fan speed on newer Surface devices with a fan. This driver is currently only enabled on the Surface Pro 9. Credits go to @iwanders (Surface fan module kernel#144).
  • Add a driver for reading out temperature sensors connected via the Surface Aggregator Module. This driver is currently only enabled on the Surface Pro 9.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants