Commit graph

132 commits

Author SHA1 Message Date
Dorian Stoll 2c51b4e4ff
Update the patches for 5.8
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>
2020-08-06 11:30:47 +02:00
Maximilian Luz bd7d22c24b
Add patches for v5.8
Patches have been obtained by rebasing the patches in commit

    23d3bc55ce

onto v5.8.
2020-08-03 21:02:06 +02:00
Maximilian Luz 23d3bc55ce
Update v5.7 patches
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
2020-08-03 18:23:42 +02:00
Maximilian Luz 8e8811cd28
Update v5.4 patches
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
2020-08-03 18:23:21 +02:00
Maximilian Luz 6787e5ada5
Update v4.19 patches
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
2020-08-03 18:18:45 +02:00
Maximilian Luz 8fb0a8e62a
Update v5.7 patches
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
2020-07-30 20:43:04 +02:00
Maximilian Luz 00e270fc8a
Update v5.4 patches
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
2020-07-30 20:38:28 +02:00
Maximilian Luz 0ccce0b332
Update v4.19 patches
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
2020-07-30 20:32:52 +02:00
Tsuchiya Yuto 1a33e83e63 Update v4.19 patches; replace surface3-spi with surface3-touchscreen-dma-fix
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>
2020-07-24 20:52:12 +09:00
Tsuchiya Yuto da2d9c9722 Update v5.4 patches; drop surface3-spi
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>
2020-07-24 20:52:12 +09:00
Tsuchiya Yuto ceae72ec44 Update v5.7 patches; drop surface3-spi
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>
2020-07-24 20:52:12 +09:00
Maximilian Luz 36bf7dd80e
Update v5.7 patches
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
2020-07-15 22:26:48 +02:00
Maximilian Luz 14072c78f4
Update v5.4 patches
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
2020-07-15 22:26:02 +02:00
Maximilian Luz de9de98b9e
Update v4.19 patches
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
2020-07-15 22:16:46 +02:00
Maximilian Luz b70e5fb1c1
Update v5.7 patches
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
2020-07-13 16:10:56 +02:00
Maximilian Luz 7a41e166e1
Update v5.4 patches
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
2020-07-13 16:07:25 +02:00
Maximilian Luz f866ce0e3f
Update v4.19 patches
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
2020-07-13 16:00:42 +02:00
Maximilian Luz 7e2a6777ce
fixup! Update v4.19 patches 2020-07-03 00:10:02 +02:00
Maximilian Luz 5202f18245
Update v4.19 patches
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
2020-07-03 00:00:34 +02:00
Maximilian Luz 39ac8bb15e
Update v5.4 patches
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
2020-07-02 23:19:52 +02:00
Maximilian Luz 05746ccc77
Update v5.7 patches
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
2020-07-02 21:53:10 +02:00
Blaž Hrastnik 291e86a8f7 Drop the LTE patch, LTE works on stable kernel for Go/Go2/SP2017. 2020-06-11 10:49:19 +09:00
Dorian Stoll d719da5453 Add patches for 5.7
Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
2020-06-01 12:06:47 +02:00
Maximilian Luz 3d3c2d4bc0
Update v5.6 patches 2020-05-17 03:36:13 +02:00
Maximilian Luz 09ab0b74bd
Update patches for v5.4 2020-05-17 00:20:04 +02:00
Tsuchiya Yuto (kitakar5525) c7caeec62c v4.19: update patches
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>
2020-05-16 18:11:38 +09:00
Dorian Stoll 1b80351c00
Update patches
Rebased to 5.5.16 and 5.6.3 because of an added MEI device ID

Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
2020-04-09 16:21:08 +02:00
Maximilian Luz a13da771f0
Update patches 2020-04-03 00:23:37 +02:00
Dorian Stoll c21dcacecc
Add patches for 5.6
Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
2020-03-30 10:42:19 +02:00
Maximilian Luz 239f75d22d
Update patches 2020-03-17 02:16:47 +01:00
Maximilian Luz ab2c76bfe8
Update patches
5.5:
    - Rebase onto 5.5.4
    - Update IPTS module (filter singletouch input for gen7)

5.4:
    - Rebase onto 5.4.20

4.19:
    - Rebase onto 4.19.104
2020-02-17 15:40:12 +01:00
Maximilian Luz 2fb7e9ae91
Add patches for v5.5 2020-01-28 23:40:18 +01:00
Maximilian Luz dac297bf1f
Update v5.4 patches 2020-01-28 23:12:08 +01:00
Maximilian Luz 0d20b9d65a
Update v4.19 patches 2020-01-28 23:11:53 +01:00
Maximilian Luz b931b147da
Update patches from kernel repo
- surface-acpi:
  - integrate dGPU hot-plug system
  - fix MODULE_ALIAS definitions for auto-loading SID battery and ac
    drivers

- disable DMA for surface3-spi touchscreen driver

- new wifi suspend patch (only 5.3/5.4)

- ipts:
  - do not automatically switch sensor modes (only 5.3)
2019-12-28 00:54:14 +01:00
Maximilian Luz 9e132617b8
Add preliminary v5.4 patches 2019-12-10 01:26:31 +01:00
Maximilian Luz 969a0197f6
surface-acpi: SID support for AC/Battery and HID
Add support for Surface Laptop 3 keyboard as well as Surface Laptop 3
and Surface Pro 7 Battery/AC.
2019-12-06 02:43:19 +01:00
Maximilian Luz b75f5ef30e
Update patches via kernel repo
- Improve HID precision touchpad detection
- IPTS cleanup
- surface-acpi restructuring and fixes
2019-11-10 23:40:16 +01:00
Maximilian Luz 2d34af8e14
Add fix for intel_lpss on Pro 7 and Laptop 3
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
2019-11-03 01:04:48 +01:00
Maximilian Luz 3172322f64
Update surface-acpi
- Rename Kconfig options (SURFACE_ACPI_XXX -> SURFACE_SAM_XXX)
- Rename identifiers/functions.
- Split into multiple modules (surface_sam_ssh, surface_sam_san, ...)
2019-10-21 00:10:47 +02:00
Maximilian Luz dcf51e95e7
Update patches via qzed/linux-surface-kernel
- Fix missing Kconfig dependency of IPTS on DRM_I915
- Add IPTS firmware declarations
- Update button patch based on upstreaming changes
2019-10-17 22:01:18 +02:00
Maximilian Luz c02c4b2f93
Update surface-acpi 2019-10-02 22:44:15 +02:00
Maximilian Luz e6a110e42e
Run cleanpatch 2019-10-02 22:39:02 +02:00
Maximilian Luz 293f8214f6
Keep v5.2 patches around for now 2019-09-28 03:32:53 +02:00
qzed 982ba582f1
Run cleanpatch 2019-09-28 03:27:11 +02:00
qzed e1748122e9
Update surface-acpi for v5.3
This should fix the remaining issues in jakeday#473.
2019-09-28 03:27:11 +02:00
qzed 7f460186ff
Update surface-acpi for v4.19
This should fix the remaining issues in #473.
2019-09-28 03:27:10 +02:00
qzed a9681ee2ac
Add patches for v5.3 2019-09-28 03:26:33 +02:00
kitakar5525 f0ffd413fa
suspend.patch-4.19: Update NVMe part
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))
2019-09-28 03:26:32 +02:00
Dorian Stoll 8c3acded2d
Move the no_feedback option into ipts-params.c
Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
2019-09-28 03:26:32 +02:00