Changes:
- SAM:
- Fix bug when disabling events.
- Add support for forwarding events to user-space via debug device.
- Add quirk to prevent incorrect battery reporting via the Surface Go
touchscreen.
Links:
- SAM: 6b6edef7c7
- kernel: 1028bcec86
Changes:
- WiFi:
- Add workaround for deep sleep on buggy hardware
- Fix manual host-sleep activation
- Fix DELBA requests
- Ignore BTCOEX events as they are sometimes buggy (improves WiFi
speeds)
- Other small fixes
- SAM:
- Code cleanup and small fixes
Links:
- kernel: db2f9336a2
- SAM: a33f6762be
Changes:
- WiFi:
- Add workaround for deep sleep on buggy hardware
- Fix manual host-sleep activation
- Fix DELBA requests
- Ignore BTCOEX events as they are sometimes buggy (improves WiFi
speeds)
- Other small fixes
- SAM:
- Code cleanup and small fixes
Links:
- kernel: db2f9336a2
- SAM: a33f6762be
Changes:
- WiFi:
- Add workaround for deep sleep on buggy hardware
- Fix manual host-sleep activation
- Fix DELBA requests
- Ignore BTCOEX events as they are sometimes buggy (improves WiFi
speeds)
- Other small fixes
- SAM:
- Code cleanup and small fixes
Links:
- kernel: 3ef26cf9b4
- SAM: a33f6762be
Changes:
- Code cleanup and small fixes
- SAM:
- Fix timing issue when re-attaching the base on the Surface Book 3,
causing devices (e.g. battery) to not work properly after
re-attaching.
Links:
- kernel: 3ffb5d02de
- SAM: ff044c7463
Changes:
- Code cleanup and small fixes
- SAM:
- Fix timing issue when re-attaching the base on the Surface Book 3,
causing devices (e.g. battery) to not work properly after
re-attaching.
Links:
- kernel: 46346aff0f
- SAM: ff044c7463
Changes:
- 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.
Links:
- kernel: 5d2a6f03a1
Changes:
- 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.
Links:
- kernel: 74e1f1ad57
Changes:
- 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.
Links:
- kernel: 0d3ce1a00d
Changes:
- SAM:
- Add support for Surface Pro 7+
- Minor updates and fixes.
- IPTS:
- Send commands during shutdown again, this is needed on some devices
and readds the dependency on the MEI bus patch
- 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.
Links:
- kernel: b3152dc559
- SAM: a8b786bd6f
- IPTS: 90de2d6e75
Changes:
- SAM:
- Add support for Surface Pro 7+
- Minor updates and fixes.
- IPTS:
- Send commands during shutdown again, this is needed on some devices
and readds the dependency on the MEI bus patch
- 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.
Links:
- kernel: 2315b7e5cb
- SAM: a8b786bd6f
- IPTS: 90de2d6e75
Changes:
- Add support for Ambient Light Sensor found on Surface Book 3, Surface
Laptop 3, and Surface Pro 7 devices.
- Update camera drivers.
Links:
- kernel: 23b180c407
Changes:
- SAM:
- Retry more SAM requests on communication failure to increase
stability.
- Fix bug in PCI platform power state initialization preventing the
Intel LPSS driver from loading on 7th generation Surface devices.
Links:
- SAM: bfab2be7d3
- kernel: e8470c735d
Changes:
- SAM:
- Retry more SAM requests on communication failure to increase
stability.
- Fix bug in PCI platform power state initialization preventing the
Intel LPSS driver from loading on 7th generation Surface devices.
Links:
- SAM: bfab2be7d3
- kernel: f4b9572531
Changes:
- SAM:
- Retry more SAM requests on communication failure to increase
stability.
- Fix bug in PCI platform power state initialization preventing the
Intel LPSS driver from loading on 7th generation Surface devices.
Links:
- SAM: bfab2be7d3
- kernel: a1bd6046ac
Changes:
- SAM:
- Retry more SAM requests on communication failure to increase
stability.
- Fix bug in PCI platform power state initialization preventing the
Intel LPSS driver from loading on 7th generation Surface devices.
Links:
- SAM: bfab2be7d3
- kernel: 5ae90020d0
Changes:
- SAM:
- Update DTX driver state after resume.
- Add DTX Documentation, misc. fixes, and cleanup.
- IPTS:
This implements a new and refined UAPI interface that should improve
stability during suspend and move some responsibility into userspace,
making the driver simpler.
It also fixes some sleep issues due to improper shutdown of the device.
Shortlog:
0a4a44c Add missing include
31ae03d Improve error handling of ipts_control_* functions
287dea0 Prevent lockups if stop is called from the receiver thread
b737a9c On remove, wait until CLEAR_MEM_WINDOW returned.
c5b66a5 Add GET_DEVICE_READY ioctl
af0f84a Seperate UAPI initialization and device probing
4ae7674 Patch the MEI bus to allow sending commands on remove
27772bc Just a few refactorings...
Links:
- SAM: af4bb01042
- IPTS: 0a4a44c2a9
- kernel: 6e8bb10ad8
Changes:
- SAM:
- Merge keyboard and HID driver into single module
- Restructure DTX user-space interface
- Add DTX support for Surface Book 3
- Continued cleanup and misc. fixes
- other:
- Add patch to fix boot problems on the Surface Go series
Links:
- SAM: bfef4ac6f8
- kernel: bdadf4da18
Changes:
- SAM:
- Merge keyboard and HID driver into single module
- Restructure DTX user-space interface
- Add DTX support for Surface Book 3
- Continued cleanup and misc. fixes
- other:
- Add patch to fix boot problems on the Surface Go series
Links:
- SAM: bfef4ac6f8
- kernel: 2bf85a4170
Changes:
- SAM:
- Merge keyboard and HID driver into single module
- Restructure DTX user-space interface
- Add DTX support for Surface Book 3
- Continued cleanup and misc. fixes
- other:
- Add patch to fix boot problems on the Surface Go series
Links:
- SAM: bfef4ac6f8
- kernel: d1e77c5126
Changes:
- SAM:
- Fix bug in packet submission leading to a potential deadlock when
packets need to be resent in constested situations
- Misc. other fixes.
- Rename surface_aggregator_debugfs module to surface_aggregator_cdev
and make it a proper character device (miscdevice).
- Add copyright notices.
- Continued cleanup and code improvements.
- Change core from late to standard initialization
- Add sysfs attribute for SAM firmware version
- Register SAN consumers dynamically
- Misc. fixes and cleanup
- mwifiex:
- Revert auto_ds force-disablement
- Add enable_device_dump module parameter
- Try to improve suspend behavior
Links:
- SAM: 47bb8f0824
- kernel: d427e73e92
Changes:
- SAM:
- Fix bug in packet submission leading to a potential deadlock when
packets need to be resent in constested situations
- Misc. other fixes.
- Rename surface_aggregator_debugfs module to surface_aggregator_cdev
and make it a proper character device (miscdevice).
- Add copyright notices.
- Continued cleanup and code improvements.
- Change core from late to standard initialization
- Add sysfs attribute for SAM firmware version
- Register SAN consumers dynamically
- Misc. fixes and cleanup
- mwifiex:
- Revert auto_ds force-disablement
- Add enable_device_dump module parameter
- Try to improve suspend behavior
Links:
- SAM: 47bb8f0824
- kernel: 674e306816
Changes:
- SAM:
- Fix bug in packet submission leading to a potential deadlock when
packets need to be resent in constested situations
- Misc. other fixes.
- Rename surface_aggregator_debugfs module to surface_aggregator_cdev
and make it a proper character device (miscdevice).
- Add copyright notices.
- Continued cleanup and code improvements.
- Change core from late to standard initialization
- Add sysfs attribute for SAM firmware version
- Register SAN consumers dynamically
- Misc. fixes and cleanup
- mwifiex:
- Revert auto_ds force-disablement
- Add enable_device_dump module parameter
- Try to improve suspend behavior
Links:
- SAM: 47bb8f0824
- kernel: f9183418ae
Changes:
- Fix a bug preventing the Surface Serial Hub driver from probing
successfully under certain conditions.
Links:
- SAM: f973e273e1
- kernel: a60417830c
Changes:
- Fix a bug preventing the Surface Serial Hub driver from probing
successfully under certain conditions.
Links:
- SAM: f973e273e1
- kernel: ac0c9d22ca
Changes:
- Fix a bug preventing the Surface Serial Hub driver from probing
successfully under certain conditions.
Links:
- SAM: f973e273e1
- kernel: c594ad2647
Changes:
- SAM:
- Fix a bug preventing SSAM client devices to be registered on the
Surface Book 3.
- Introduce SSAM device domains.
- Rename modules, drivers, and source directories.
- Split-up main header file.
- Update and improve Kconfig options and help texts.
- Internal restructuring, cleanup, and documentation.
Links:
- SAM: 4b3ee5ad71
- kernel: 47860ccd1d
Changes:
- SAM:
- Fix bug where second Surface Book 3 battery would be set up
incorrectly.
- Continued work on internal documentation and cleanup.
- Other minor bugfixes.
- SAM-over-HID:
- Add dGPU switch module for SB1.
- GPE:
- Cleanup and formatting.
Links:
- SAM: c5f84f1f9a
- SAM-over-HID: 9d2a927ac8
- GPE: a9d97ed280
- kernel: 6f814d29c3
Changes:
- SAM:
- Fix bug where second Surface Book 3 battery would be set up
incorrectly.
- Continued work on internal documentation and cleanup.
- Other minor bugfixes.
- SAM-over-HID:
- Add dGPU switch module for SB1.
- GPE:
- Cleanup and formatting.
Links:
- SAM: c5f84f1f9a
- SAM-over-HID: 9d2a927ac8
- GPE: a9d97ed280
- kernel: ee5d2c7ad3
Changes:
- SAM:
- Fix bug where second Surface Book 3 battery would be set up
incorrectly.
- Continued work on internal documentation and cleanup.
- Other minor bugfixes.
- SAM-over-HID:
- Add dGPU switch module for SB1.
- GPE:
- Cleanup and formatting.
Links:
- SAM: c5f84f1f9a
- SAM-over-HID: 9d2a927ac8
- GPE: a9d97ed280
- kernel: f26a027064
Changes:
- SAM
- Properly re-enable events after hibernation.
- Other bugfixes.
- Continued work on internal documentation.
- mwifiex
- Fix bug causing network connection failure on certain networks.
Links:
- SAM: 735a01f74b
- mwifiex: https://lkml.org/lkml/2020/8/27/642
- kernel: 50b5cf34b8
Changes:
- SAM
- Properly re-enable events after hibernation.
- Other bugfixes.
- Continued work on internal documentation.
- mwifiex
- Fix bug causing network connection failure on certain networks.
Links:
- SAM: 735a01f74b
- mwifiex: https://lkml.org/lkml/2020/8/27/642
- kernel: d9aab7bed9
Changes:
- SAM
- Properly re-enable events after hibernation.
- Other bugfixes.
- Continued work on internal documentation.
- mwifiex
- Fix bug causing network connection failure on certain networks.
Links:
- SAM: 735a01f74b
- mwifiex: https://lkml.org/lkml/2020/8/27/642
- kernel: 9ea314c74e
Changes:
- SAM
- Properly re-enable events after hibernation.
- Other bugfixes.
- Continued work on internal documentation.
- mwifiex
- Fix bug causing network connection failure on certain networks.
Links:
- SAM: 735a01f74b
- mwifiex: https://lkml.org/lkml/2020/8/27/642
- kernel: e83a20197d
Changes:
SAM:
- Fix false wanring when plugging in AC adapter.
- Fix includes for error injection.
- Other bug fixes and code improvements.
Links:
- kernel: 381dd4669f
- SAM: 4ca8b315e0
Changes:
SAM:
- Fix false wanring when plugging in AC adapter.
- Fix includes for error injection.
- Other bug fixes and code improvements.
Links:
- kernel: f8cec34509
- SAM: 4ca8b315e0
Changes:
SAM:
- Fix false wanring when plugging in AC adapter.
- Fix includes for error injection.
- Other bug fixes and code improvements.
Links:
- kernel: aba6935b86
- SAM: 4ca8b315e0
Changes:
SAM:
- Fix false wanring when plugging in AC adapter.
- Fix includes for error injection.
- Other bug fixes and code improvements.
Links:
- kernel: ce875e1f82
- SAM: 4ca8b315e0
Changes:
SAM:
- Move lid/GPE workaround into separate independent module.
- A bus and device type has been implemented for SAM devices.
- Detach devices attached to the base when the cliboard is being detached on
the Surface Book 3.
- Internal restructuring.
Links:
- kernel: 233bcf2785
- SAM: 08bbb7272a
Changes:
SAM:
- Move lid/GPE workaround into separate independent module.
- A bus and device type has been implemented for SAM devices.
- Detach devices attached to the base when the cliboard is being detached on
the Surface Book 3.
- Internal restructuring.
Links:
- kernel: 16f3286d32
- SAM: 08bbb7272a
Changes:
SAM:
- Move lid/GPE workaround into separate independent module.
- A bus and device type has been implemented for SAM devices.
- Detach devices attached to the base when the cliboard is being detached on
the Surface Book 3.
- Internal restructuring.
Links:
- kernel: 713c0f7364
- SAM: 08bbb7272a
Changes:
SAM:
- Move lid/GPE workaround into separate independent module.
- A bus and device type has been implemented for SAM devices.
- Detach devices attached to the base when the cliboard is being
detached on the Surface Book 3.
- Internal restructuring.
Links:
- kernel: 2926c01232
- SAM: 08bbb7272a
For 5.8, we are going to make iptsd the default, which mostly supports
4.19 level multitouch, instead of just singletouch + stylus.
This replaces the old ipts driver with the new UAPI version that is
required for iptsd.
Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
Changes:
SAM:
- Fix bug that can cause IRQ storm when SSAM wake IRQ gets triggered.
- Continued internal restructuring.
- Other small bug fixes.
Links:
- kernel: 78e06bc875
- SAM: b9fe8f28b7
Changes:
SAM:
- Fix bug that can cause IRQ storm when SSAM wake IRQ gets triggered.
- Continued internal restructuring.
- Other small bug fixes.
Links:
- kernel: 9d7730b64c
- SAM: b9fe8f28b7
Changes:
SAM:
- Fix bug that can cause IRQ storm when SSAM wake IRQ gets triggered.
- Continued internal restructuring.
- Other small bug fixes.
Links:
- kernel: 307c8337b9
- SAM: b9fe8f28b7
Changes:
SAM:
- Enable performance modes on 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.
- Replace sysfs-based debug device with new debugfs-based debug
device.
- More internal restructuring and internal API changes.
- Some small bug fixes.
SAM-over-HID:
- Add ACPI support for SAM-over-HID. This allows setting dGPU power
on the Surface Book 1 via ACPI calls.
Links:
- kernel: 551b70e295
- SAM: 89b8232d49
Changes:
SAM:
- Enable performance modes on 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.
- Replace sysfs-based debug device with new debugfs-based debug
device.
- More internal restructuring and internal API changes.
- Some small bug fixes.
SAM-over-HID:
- Add ACPI support for SAM-over-HID. This allows setting dGPU power
on the Surface Book 1 via ACPI calls.
Links:
- kernel: 91f5a27a55
- SAM: 89b8232d49
Changes:
SAM:
- Enable performance modes on 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.
- Replace sysfs-based debug device with new debugfs-based debug
device.
- More internal restructuring and internal API changes.
- Some small bug fixes.
SAM-over-HID:
- Add ACPI support for SAM-over-HID. This allows setting dGPU power
on the Surface Book 1 via ACPI calls.
Links:
- kernel: c03772c10e
- SAM: 89b8232d49
Changes:
surface3-spi:
- Dropped this patch in favor of the surface3-touchscreen-dma-fix
patch (which is taken from the upstream DMA fix). For details, take
a look at the commit history of kernel repo linked below.
surface3-touchscreen-dma-fix:
- Added this patch as a successor to the dropped surface3-spi patch.
For details, take a look at the commit history of kernel repo linked
below.
Note: currently, this patch is available upstream only on v5.8,
v5.7, and v5.4 and not backported to any older LTS kernels. So,
this patch was backported from upstream commit ourselves.
Links:
- kernel: 94678ca738
Signed-off-by: Tsuchiya Yuto <kitakar@gmail.com>
Changes:
surface3-spi:
- Dropped this patch in favor of the upstream DMA fix. For details,
take a look at the commit history of kernel repo linked below.
Links:
- kernel: f455d27378
Signed-off-by: Tsuchiya Yuto <kitakar@gmail.com>
Changes:
surface3-spi:
- Dropped this patch in favor of the upstream DMA fix. For details,
take a look at the commit history of kernel repo linked below.
Links:
- kernel: b6d18e159d
Signed-off-by: Tsuchiya Yuto <kitakar@gmail.com>
Changes:
SAM:
- Bugfix: Fix HID input for Surface Laptop 3. The driver now separates
devices by IID, using the same behavior as on the Surface Book 3.
- Bugfix: Minor fixes in SSH driver message system.
Links:
- kernel: c9354ce40c
- SAM: 99b0243136
Changes:
SAM:
- Bugfix: Fix HID input for Surface Laptop 3. The driver now separates
devices by IID, using the same behavior as on the Surface Book 3.
- Bugfix: Minor fixes in SSH driver message system.
Links:
- kernel: a7b8ca847f
- SAM: 99b0243136
Changes:
SAM:
- Bugfix: Fix HID input for Surface Laptop 3. The driver now separates
devices by IID, using the same behavior as on the Surface Book 3.
- Bugfix: Minor fixes in SSH driver message system.
Links:
- kernel: c5f2f3b76d
- SAM: 99b0243136
Changes:
SAM:
- Add Surface Book 3 GPE LID fix.
- Add support for Surface Book 3 performance modes
- Add preliminary support for Surface Book 3 HID devices, i.e.
keyboard and touchpad. N.b.: There are still known issues
regarding device re-initialization when detaching/re-attaching.
- Add preliminary support for Surface Book 3 battery/AC.
- Bugfix: Initialize power-target in HPS driver on load.
- Bugfix: Fix out-of-space handling for SSH requests.
Links:
- kernel: a7fa12a06d
- SAM: 27e54010b4
Changes:
SAM:
- Add Surface Book 3 GPE LID fix.
- Add support for Surface Book 3 performance modes
- Add preliminary support for Surface Book 3 HID devices, i.e.
keyboard and touchpad. N.b.: There are still known issues
regarding device re-initialization when detaching/re-attaching.
- Add preliminary support for Surface Book 3 battery/AC.
- Bugfix: Initialize power-target in HPS driver on load.
- Bugfix: Fix out-of-space handling for SSH requests.
Links:
- kernel: 23d72cf093
- SAM: 27e54010b4
Changes:
SAM:
- Add Surface Book 3 GPE LID fix.
- Add support for Surface Book 3 performance modes
- Add preliminary support for Surface Book 3 HID devices, i.e.
keyboard and touchpad. N.b.: There are still known issues
regarding device re-initialization when detaching/re-attaching.
- Add preliminary support for Surface Book 3 battery/AC.
- Bugfix: Initialize power-target in HPS driver on load.
- Bugfix: Fix out-of-space handling for SSH requests.
Links:
- kernel: 3d8315773f
- SAM: 27e54010b4
Changes:
SAM:
- Add support for Surface Book 3 in Surface HPS driver. The dGPU of
the Surface Book 3 can now be turned on and off via the same
mechanism already being used by the Surface Book 2.
- Add SID devices for Surface Pro 6 with MSHW0111 ID.
- Complete restructure of Surface Serial Hub driver internals. The
old synchronous communication core has been replaced by a
completely asynchronous implementation.
- Misc. code improvements and clean-up.
References:
kernel: ab0ac25c9e
SAM: 6715faf265
Changes:
SAM:
- Add support for Surface Book 3 in Surface HPS driver. The dGPU of
the Surface Book 3 can now be turned on and off via the same
mechanism already being used by the Surface Book 2.
- Add SID devices for Surface Pro 6 with MSHW0111 ID.
- Complete restructure of Surface Serial Hub driver internals. The
old synchronous communication core has been replaced by a
completely asynchronous implementation.
- Misc. code improvements and clean-up.
References:
kernel: c3255a6336
SAM: 6715faf265
Changes:
SAM:
- Add support for Surface Book 3 in Surface HPS driver. The dGPU of
the Surface Book 3 can now be turned on and off via the same
mechanism already being used by the Surface Book 2.
- Add SID devices for Surface Pro 6 with MSHW0111 ID.
- Complete restructure of Surface Serial Hub driver internals. The
old synchronous communication core has been replaced by a
completely asynchronous implementation.
- Misc. code improvements and clean-up.
References:
kernel: 29c5a7fc9a
SAM: 6715faf265
Update patches via linux-surface/kernel@fccd0a489e.
Updated patches:
pick ea097eb Add secureboot pre-signing to the kernel
pick b50d617 surface3-power
pick 71ab90b surface3-spi
pick f109cbf surface3-oemb
pick c924fb6 surface-buttons
f 1a44682d3bea Input: soc_button_array - fix Wdiscarded-qualifiers for kernels below 4.20
pick 91a78cc surface-sam
pick 263250b suspend
pick 5ae0ab6 ipts
f a5db77a8ad47 ipts: Simplify feedback implementation
f 22c959edeaf2 ipts: Remove no_feedback quirk
f 21a71ef429b4 ipts: Remove quirk implementation
f f28c0f7b64aa ipts: companion: improve comment for hardware id on SP4
pick df219c0 surface-lte
pick 3484574 ioremap_uc
pick 4f727ac wifi
f f86788d75e54 Revert "BACKPORT: wireless/mwifiex: Fix S0ix / suspend"
f 169bb34570af mwifiex: pcie: Use dev_get_drvdata
f 6e9eefbca821 mwifiex_pcie: remove()/probe() card on suspend()/resume()
f 3619cec06fdc mwifiex_pcie: disable parent bridge_d3
f fda9d444d14d mwifiex: sta_cmd: do not enable auto_ds by default
f 74ab58241354 mwifiex: sta_cmd: add comment for not enabling ps_mode by default
Note: almost all part of the ioremap_uc patch is now upstream. So, the
remaining unupstreamed patch is now only linux-surface/kernel@de067f5c12
("docs: driver-model: add devm_ioremap_uc")
Signed-off-by: Tsuchiya Yuto (kitakar5525) <kitakar@gmail.com>
On the Pro 7 and Laptop 3, intel_lpss_pci fails to probe and thus keeps
the system from booting. Add a patch to fix this.
Note: The added patch is on it's way upstream.
See: https://lkml.org/lkml/2019/10/16/1230
This commit will update suspend.patch for 4.19
Backported these two patches:
- torvalds/linux@4eaefe8c62
(nvme-pci: Allow PCI bus-level PM to be used if ASPM is disabled)
- torvalds/linux@accd2dd72c
(PCI/ASPM: Add pcie_aspm_enabled())
on top of these patches that are already backported by commit
qzed/linux-surface@e8a3d85b22
(Update NVMe part of suspend.patch):
- torvalds/linux@d916b1be94
(nvme-pci: use host managed power state for suspend)
- torvalds/linux@1a87ee657c
(nvme: export get and set features)
- torvalds/linux@d6135c3a1e
(nvme-pci: Sync queues on reset)
Tested and confirmed that suspend is working on Surface Book 1 with
THNSN5512GPU7 TOSHIBA NVMe SSD which has issue resuming from suspend
with PCI bus-level PM.
Link to issue: https://github.com/jakeday/linux-surface/issues/123
(Surface Book with Performance Base: NVMe SSD breaks suspend (s2idle))
- ipts: fix crash caused by calling ipts_send_feedback() repeatedly
(v2-ipts-fix-crash-caused-by-calling-ipts_send_feedback-.patch from kitakar5525/ipts-fix-crash)
- i915: ipts: add destroy_doorbell() when disabling ipts guc submission
(https://github.com/jakeday/linux-surface/issues/544#issuecomment-517626511)
- IPTS: Enable debug prints (qzed/linux-surface@a5e6433)
- IPTS: Do not call intel_ipts_cleanup on suspend (qzed/linux-surface@f52dae4)
- IPTS: Add device link for PM (qzed/linux-surface@cf887d8)
- Fix RCS0 GPU hang on module removing
(0001-Fix-RCS0-GPU-hang-on-module-removing.patch from kitakar5525/linux-surface-patches)
Note:
NVMe part will be merged into Linux 5.3. Remove the part in
0002-suspend.patch when it arrives.
For 5.2
- (Reverted NVMe part of 0002-suspend.patch to apply following patch set)
- nvme: export get and set features · torvalds/linux@1a87ee6torvalds/linux@1a87ee6
- nvme-pci: use host managed power state for suspend · torvalds/linux@d916b1b
torvalds/linux@d916b1b#diff-bc4c090f021c046a7d256a3fcf86b7da
For 4.19, this patch is also applied
- nvme-pci: Sync queues on reset · torvalds/linux@d6135c3
torvalds/linux@d6135c3#diff-bc4c090f021c046a7d256a3fcf86b7da
See
- Surface Book with Performance Base: NVMe SSD breaks suspend (s2idle) · Issue jakeday#123 · jakeday/linux-surface
jakeday#123
Revert a3a3ed3: "updating 4.19 patches to fix touch and suspend".
Calling intel_ipts_cleanup during suspend causes destroy_doorbell to
fail. Furthermore, removing intel_ipts_cleanup from suspend does not
seem to cause any issues on the Surface Book 1 and 2, and the
introduction of the device link in the previous commit may have fixed
some of the edge-cases/race conditions that may have made this call
necessary in the past. If any issue arises from this, we will deal with
it later in a more subtle way.
See https://github.com/jakeday/linux-surface/issues/544 for an
exhaustive discussion on this.
The newer surface devices Pro 4 and up do not define _PRW to specify
which GPE interrupt belongs to the lid. Thus they may not be marked as
wake-up sources automatically, so we have to do this manually.
This patch ensures that a GPIO driver is loaded and set up before the
button driver can bind to the MSHW0040 device. Without this the driver
may not bind to the MSHW0040 device at all.
Adds a driver for the Surface platform Integration Device (SID) of the
Surface Book 2. This allows for setting the performance-mode, which can
be used to choose between performance-optimized vs. quiet operation.
The performance-mode can be set via the perf_mode sysfs attribute on the
corresponding device (MSHW0107).