Commit graph

128 commits

Author SHA1 Message Date
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
Dorian Stoll de86889877
Add the ability to load different IPTS firmware per model
Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
2019-09-28 03:26:31 +02:00
qzed 292b082b29
Remove unnecessary changes in ACPI/serdev patches 2019-09-28 03:26:31 +02:00
kitakar5525 03e4a8dff3 ipts-5.2: fix crash after some use
- 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)
2019-09-10 21:55:39 +09:00
kitakar5525 d8b26bd3b7 ipts-4.19: backport changes from 5.2 / fix crash after some use
- 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)
2019-09-10 21:53:44 +09:00