Explorar el Código

Update v5.4 patches

Changes:
 - SAM:
   - Remove explicit dGPU power-setting code and rely on (patched)
     PCI/PM core instead for automatic and proper power management. See
     [1] and [2] for details.
   - Minor fixes.

 - GPE:
   - Add copyright notice

Links:
 - SAM: https://github.com/linux-surface/surface-aggregator-module/commit/e6338f7b04abdbd677207c71ef13bbc75746e3fd
 - GPE: https://github.com/linux-surface/surface-gpe/commit/245c2645045ea6e655c07357b2d8062b5f33ae15
 - kernel: https://github.com/linux-surface/kernel/commit/c0a2b69e71612128853951950bc7870c02ca8c89

[1] https://github.com/linux-surface/surface-aggregator-module/commit/4138dabe851372a6af197fa6525d8d5f41367c58
[2] https://github.com/linux-surface/surface-aggregator-module/wiki/Discrete-GPU
Maximilian Luz hace 4 años
padre
commit
dd8e4071c8

+ 0 - 1
configs/surface-5.4.config

@@ -1,7 +1,6 @@
 #
 # Surface Aggregator Module
 #
-CONFIG_GPIO_SYSFS=y                         # required for SURFACE_HOTPLUG
 CONFIG_SURFACE_AGGREGATOR=m
 CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION=n
 CONFIG_SURFACE_AGGREGATOR_BUS=y

+ 2 - 2
patches/5.4/0001-surface3-power.patch

@@ -1,4 +1,4 @@
-From 34fd11b0f32b5c15987dabbb7fcf6590341bd62c Mon Sep 17 00:00:00 2001
+From 920bb46ce522c4e28237071fb3a93ec17ab56e49 Mon Sep 17 00:00:00 2001
 From: qzed <qzed@users.noreply.github.com>
 Date: Tue, 17 Sep 2019 17:17:56 +0200
 Subject: [PATCH] platform/x86: Surface 3 battery platform operation region
@@ -653,5 +653,5 @@ index 000000000000..e0af01a60302
 +MODULE_DESCRIPTION("mshw0011 driver");
 +MODULE_LICENSE("GPL v2");
 -- 
-2.28.0
+2.29.2
 

+ 2 - 2
patches/5.4/0002-surface3-oemb.patch

@@ -1,4 +1,4 @@
-From afc394c0540ca91a9ee31c84c500a90d82cf34ac Mon Sep 17 00:00:00 2001
+From 407b720283ead9bd4a5e6c3a5aa3c8c5fdbf2787 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Sun, 18 Oct 2020 16:42:44 +0900
 Subject: [PATCH] (surface3-oemb) add DMI matches for Surface 3 with broken DMI
@@ -97,5 +97,5 @@ index d0fb43c2b9f6..0e938713cb13 100644
  };
  
 -- 
-2.28.0
+2.29.2
 

+ 24 - 24
patches/5.4/0003-wifi.patch

@@ -1,4 +1,4 @@
-From d87415b12bf41348cb809096313ec152acf006a6 Mon Sep 17 00:00:00 2001
+From 57064d3d4c35d097736f2cdf8ef6f1e7562da433 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Thu, 24 Sep 2020 18:02:06 +0900
 Subject: [PATCH] mwifiex: pcie: skip cancel_work_sync() on reset failure path
@@ -154,9 +154,9 @@ index f7ce9b6db6b4..72d0c01ff359 100644
  
  static inline int
 -- 
-2.28.0
+2.29.2
 
-From 485e47491fdf3380380351eae257289cc3a45fe2 Mon Sep 17 00:00:00 2001
+From 742fc7984e000b2d3c5d39235da39e5fe3bf18af Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Mon, 28 Sep 2020 17:46:49 +0900
 Subject: [PATCH] mwifiex: pcie: add DMI-based quirk impl for Surface devices
@@ -362,9 +362,9 @@ index 000000000000..5326ae7e5671
 +
 +void mwifiex_initialize_quirks(struct pcie_service_card *card);
 -- 
-2.28.0
+2.29.2
 
-From 9e9258cd222851f0a4926139fcc53233b4cf4707 Mon Sep 17 00:00:00 2001
+From c8bf3ea2f7e6a382afadf7feda8998614619f652 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Tue, 29 Sep 2020 17:25:22 +0900
 Subject: [PATCH] mwifiex: pcie: add reset_d3cold quirk for Surface gen4+
@@ -563,9 +563,9 @@ index 5326ae7e5671..8b9dcb5070d8 100644
  void mwifiex_initialize_quirks(struct pcie_service_card *card);
 +int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev);
 -- 
-2.28.0
+2.29.2
 
-From 2b2bb6db9675605dc6812ae1aa0ad62b93dcb23d Mon Sep 17 00:00:00 2001
+From 9083372666e4be1331463944fdc85f9caf077236 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Tue, 29 Sep 2020 17:32:22 +0900
 Subject: [PATCH] mwifiex: pcie: add reset_wsid quirk for Surface 3
@@ -742,9 +742,9 @@ index 8b9dcb5070d8..3ef7440418e3 100644
  int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev);
 +int mwifiex_pcie_reset_wsid_quirk(struct pci_dev *pdev);
 -- 
-2.28.0
+2.29.2
 
-From d7a83ffb7faaed1215873f48c9cd541ff911f41d Mon Sep 17 00:00:00 2001
+From b61057bb3c00b1a45e706ec25fedf92f585f2196 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Wed, 30 Sep 2020 18:08:24 +0900
 Subject: [PATCH] mwifiex: pcie: (OEMB) add quirk for Surface 3 with broken DMI
@@ -804,9 +804,9 @@ index f0a6fa0a7ae5..34dcd84f02a6 100644
  		.ident = "Surface Pro 3",
  		.matches = {
 -- 
-2.28.0
+2.29.2
 
-From 9b8c3430c962d4bcf7066da6bfc9a5522330aceb Mon Sep 17 00:00:00 2001
+From fb2339ab3530a8007e8a0293fae1f50c41ee25b6 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Thu, 24 Sep 2020 01:56:29 +0900
 Subject: [PATCH] mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure
@@ -881,9 +881,9 @@ index d14e55e3c9da..5894566ec480 100644
  	adapter->is_up = false;
  
 -- 
-2.28.0
+2.29.2
 
-From 74c1334d28d50df496d030bb1dc5275bbb657643 Mon Sep 17 00:00:00 2001
+From 3fc9d46d5b02f346a227e48546618c85c01f4635 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Thu, 24 Sep 2020 01:56:34 +0900
 Subject: [PATCH] mwifiex: pcie: use shutdown_sw()/reinit_sw() on
@@ -1023,9 +1023,9 @@ index 263d918767bd..bd6791dc3a0f 100644
  	return 0;
  }
 -- 
-2.28.0
+2.29.2
 
-From 8129314ab33e169a93c943d01b286156fd183551 Mon Sep 17 00:00:00 2001
+From b2c53074824e2f54b14ef972e0b947d5e94d1961 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Mon, 24 Aug 2020 17:11:35 +0900
 Subject: [PATCH] mwifiex: pcie: add enable_device_dump module parameter
@@ -1072,9 +1072,9 @@ index bd6791dc3a0f..d7ff898c1767 100644
  	if (!adapter->devdump_data) {
  		mwifiex_dbg(adapter, ERROR,
 -- 
-2.28.0
+2.29.2
 
-From 9a7695152a4e6a911655f78dc8cad996710cb6cc Mon Sep 17 00:00:00 2001
+From b7071b89e24c1cf97dd4190e1cb55e35cba74bbc Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Sun, 4 Oct 2020 00:11:49 +0900
 Subject: [PATCH] mwifiex: pcie: disable bridge_d3 for Surface gen4+
@@ -1227,9 +1227,9 @@ index 3ef7440418e3..a95ebac06e13 100644
  void mwifiex_initialize_quirks(struct pcie_service_card *card);
  int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev);
 -- 
-2.28.0
+2.29.2
 
-From 07b927908d6034e00fb5109b0713f73aeef2df42 Mon Sep 17 00:00:00 2001
+From dfd218b1815eff411722992ebd18c1d7dd00c66e Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Sun, 4 Oct 2020 00:25:48 +0900
 Subject: [PATCH] mwifiex: add allow_ps_mode module parameter
@@ -1289,9 +1289,9 @@ index 9e6dc289ec3e..20f5ee3fe7e3 100644
  }
  
 -- 
-2.28.0
+2.29.2
 
-From 043a356af095e1eaebda74fddba83be8bdc2b621 Mon Sep 17 00:00:00 2001
+From bb33cb017be76dff82f01e05ecb27581fdbdb2a8 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Sun, 4 Oct 2020 00:38:48 +0900
 Subject: [PATCH] mwifiex: print message when changing ps_mode
@@ -1324,9 +1324,9 @@ index 20f5ee3fe7e3..8020a2929069 100644
  }
  
 -- 
-2.28.0
+2.29.2
 
-From eeab41594e4e420118326788215d102d8b5d1684 Mon Sep 17 00:00:00 2001
+From 2971cc13ce677cb3512beb4ab96d39a4b2937443 Mon Sep 17 00:00:00 2001
 From: Tsuchiya Yuto <kitakar@gmail.com>
 Date: Sun, 4 Oct 2020 00:59:37 +0900
 Subject: [PATCH] mwifiex: disable ps_mode explicitly by default instead
@@ -1372,5 +1372,5 @@ index 4ed10cf82f9a..ed0fffb9eba6 100644
  
  		if (drcs) {
 -- 
-2.28.0
+2.29.2
 

+ 6 - 6
patches/5.4/0004-ipts.patch

@@ -1,4 +1,4 @@
-From 4596b258b819644d212a9f8e4d20ebc4456c187d Mon Sep 17 00:00:00 2001
+From f46f184003cfb534077e48c4f56346af3d84a399 Mon Sep 17 00:00:00 2001
 From: Dorian Stoll <dorian.stoll@tmsp.io>
 Date: Mon, 27 Jan 2020 21:16:20 +0100
 Subject: [PATCH] mei: Add IPTS device IDs
@@ -51,9 +51,9 @@ index 75ab2ffbf235..78790904d77c 100644
  	{MEI_PCI_DEVICE(MEI_DEV_ID_TGP_LP, MEI_ME_PCH12_CFG)},
  
 -- 
-2.28.0
+2.29.2
 
-From 87fea2c77d752224b06dc4beee817fa26f2b1356 Mon Sep 17 00:00:00 2001
+From deb28840b7d00286d576e36e6493b1d3c209808c Mon Sep 17 00:00:00 2001
 From: Dorian Stoll <dorian.stoll@tmsp.io>
 Date: Fri, 20 Dec 2019 23:15:58 +0100
 Subject: [PATCH] uapi: Add MEI bus ID
@@ -77,9 +77,9 @@ index 9a61c28ed3ae..47fc20975245 100644
  /*
   * MT_TOOL types
 -- 
-2.28.0
+2.29.2
 
-From 8c1f8a2a71c1c382d8b1606ff57a9f72cba1e5a6 Mon Sep 17 00:00:00 2001
+From 7c1cd0659188f679bc0e70271e513cbeb8cca983 Mon Sep 17 00:00:00 2001
 From: Dorian Stoll <dorian.stoll@tmsp.io>
 Date: Mon, 27 Jan 2020 21:22:42 +0100
 Subject: [PATCH] input: Add support for Intel Precise Touch & Stylus
@@ -2085,5 +2085,5 @@ index 000000000000..5b93add1eac2
 +
 +#endif /* _IPTS_STYLUS_H_ */
 -- 
-2.28.0
+2.29.2
 

+ 8 - 6
patches/5.4/0005-surface-gpe.patch

@@ -1,4 +1,4 @@
-From ea2243f30da79e2b97bab0140a9b28c049e5ca25 Mon Sep 17 00:00:00 2001
+From 2f8c97dac94f186ec0e48105d630679b4bd66d0d Mon Sep 17 00:00:00 2001
 From: Maximilian Luz <luzmaximilian@gmail.com>
 Date: Sun, 16 Aug 2020 23:39:56 +0200
 Subject: [PATCH] platform/x86: Add Driver to set up lid GPEs on MS Surface
@@ -33,8 +33,8 @@ Patchset: surface-gpe
 ---
  drivers/platform/x86/Kconfig       |   9 +
  drivers/platform/x86/Makefile      |   1 +
- drivers/platform/x86/surface_gpe.c | 307 +++++++++++++++++++++++++++++
- 3 files changed, 317 insertions(+)
+ drivers/platform/x86/surface_gpe.c | 309 +++++++++++++++++++++++++++++
+ 3 files changed, 319 insertions(+)
  create mode 100644 drivers/platform/x86/surface_gpe.c
 
 diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
@@ -71,15 +71,17 @@ index 6dd955ad9bf1..5db303f43bda 100644
  obj-$(CONFIG_INTEL_TELEMETRY)	+= intel_telemetry_core.o \
 diff --git a/drivers/platform/x86/surface_gpe.c b/drivers/platform/x86/surface_gpe.c
 new file mode 100644
-index 000000000000..2857e3862ca4
+index 000000000000..88b952ee9b8b
 --- /dev/null
 +++ b/drivers/platform/x86/surface_gpe.c
-@@ -0,0 +1,307 @@
+@@ -0,0 +1,309 @@
 +// SPDX-License-Identifier: GPL-2.0-or-later
 +/*
 + * Surface GPE/Lid driver to enable wakeup from suspend via the lid by
 + * properly configuring the respective GPEs. Required for wakeup via lid on
 + * newer Intel-based Microsoft Surface devices.
++ *
++ * Copyright (C) 2020 Maximilian Luz <luzmaximilian@gmail.com>
 + */
 +
 +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
@@ -383,5 +385,5 @@ index 000000000000..2857e3862ca4
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("dmi:*:svnMicrosoftCorporation:pnSurface*:*");
 -- 
-2.28.0
+2.29.2
 

+ 7 - 7
patches/5.4/0006-surface-sam-over-hid.patch

@@ -1,4 +1,4 @@
-From 2f88ea832d68be4bd47a3702389371dcfab92dd5 Mon Sep 17 00:00:00 2001
+From a5ebb9332254f494203c6d3a576df789e6074495 Mon Sep 17 00:00:00 2001
 From: Maximilian Luz <luzmaximilian@gmail.com>
 Date: Sat, 25 Jul 2020 17:19:53 +0200
 Subject: [PATCH] i2c: acpi: Implement RawBytes read access
@@ -54,10 +54,10 @@ Patchset: surface-sam-over-hid
  1 file changed, 35 insertions(+)
 
 diff --git a/drivers/i2c/i2c-core-acpi.c b/drivers/i2c/i2c-core-acpi.c
-index ce70b5288472..5df647c4d9a5 100644
+index c70983780ae7..1c90651161a6 100644
 --- a/drivers/i2c/i2c-core-acpi.c
 +++ b/drivers/i2c/i2c-core-acpi.c
-@@ -582,6 +582,28 @@ static int acpi_gsb_i2c_write_bytes(struct i2c_client *client,
+@@ -592,6 +592,28 @@ static int acpi_gsb_i2c_write_bytes(struct i2c_client *client,
  	return (ret == 1) ? 0 : -EIO;
  }
  
@@ -86,7 +86,7 @@ index ce70b5288472..5df647c4d9a5 100644
  static acpi_status
  i2c_acpi_space_handler(u32 function, acpi_physical_address command,
  			u32 bits, u64 *value64,
-@@ -683,6 +705,19 @@ i2c_acpi_space_handler(u32 function, acpi_physical_address command,
+@@ -693,6 +715,19 @@ i2c_acpi_space_handler(u32 function, acpi_physical_address command,
  		}
  		break;
  
@@ -107,9 +107,9 @@ index ce70b5288472..5df647c4d9a5 100644
  		dev_warn(&adapter->dev, "protocol 0x%02x not supported for client 0x%02x\n",
  			 accessor_type, client->addr);
 -- 
-2.28.0
+2.29.2
 
-From 94a75b92c382a5b72e7114f8b4bb593a5734534e Mon Sep 17 00:00:00 2001
+From aee5409945fc3b0d30d8407e60aa3095e438dd37 Mon Sep 17 00:00:00 2001
 From: Maximilian Luz <luzmaximilian@gmail.com>
 Date: Sun, 6 Sep 2020 04:01:19 +0200
 Subject: [PATCH] platform/x86: Add driver for Surface Book 1 dGPU switch
@@ -330,5 +330,5 @@ index 000000000000..8c66ed5110fd
 +MODULE_DESCRIPTION("Discrete GPU Power-Switch for Surface Book 1");
 +MODULE_LICENSE("GPL");
 -- 
-2.28.0
+2.29.2
 

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 559 - 1324
patches/5.4/0007-surface-sam.patch


+ 0 - 70
patches/5.4/0008-i2c-core-Restore-acpi_walk_dep_device_list-getting-c.patch

@@ -1,70 +0,0 @@
-From 7e11df4d0af5a21f93c8af446bcfd24432a2bfa6 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Wed, 14 Oct 2020 16:41:58 +0200
-Subject: [PATCH] i2c: core: Restore acpi_walk_dep_device_list() getting called
- after registering the ACPI i2c devs
-
-Commit 21653a4181ff ("i2c: core: Call i2c_acpi_install_space_handler()
-before i2c_acpi_register_devices()")'s intention was to only move the
-acpi_install_address_space_handler() call to the point before where
-the ACPI declared i2c-children of the adapter where instantiated by
-i2c_acpi_register_devices().
-
-But i2c_acpi_install_space_handler() had a call to
-acpi_walk_dep_device_list() hidden (that is I missed it) at the end
-of it, so as an unwanted side-effect now acpi_walk_dep_device_list()
-was also being called before i2c_acpi_register_devices().
-
-Move the acpi_walk_dep_device_list() call to the end of
-i2c_acpi_register_devices(), so that it is once again called *after*
-the i2c_client-s hanging of the adapter have been created.
-
-This fixes the Microsoft Surface Go 2 hanging at boot.
-
-Fixes: 21653a4181ff ("i2c: core: Call i2c_acpi_install_space_handler() before i2c_acpi_register_devices()")
-Suggested-by: Maximilian Luz <luzmaximilian@gmail.com>
-Reported-and-tested-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/i2c/i2c-core-acpi.c | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/i2c/i2c-core-acpi.c b/drivers/i2c/i2c-core-acpi.c
-index 5df647c4d9a5..1c90651161a6 100644
---- a/drivers/i2c/i2c-core-acpi.c
-+++ b/drivers/i2c/i2c-core-acpi.c
-@@ -264,6 +264,7 @@ static acpi_status i2c_acpi_add_device(acpi_handle handle, u32 level,
- void i2c_acpi_register_devices(struct i2c_adapter *adap)
- {
- 	acpi_status status;
-+	acpi_handle handle;
- 
- 	if (!has_acpi_companion(&adap->dev))
- 		return;
-@@ -274,6 +275,15 @@ void i2c_acpi_register_devices(struct i2c_adapter *adap)
- 				     adap, NULL);
- 	if (ACPI_FAILURE(status))
- 		dev_warn(&adap->dev, "failed to enumerate I2C slaves\n");
-+
-+	if (!adap->dev.parent)
-+		return;
-+
-+	handle = ACPI_HANDLE(adap->dev.parent);
-+	if (!handle)
-+		return;
-+
-+	acpi_walk_dep_device_list(handle);
- }
- 
- const struct acpi_device_id *
-@@ -772,7 +782,6 @@ int i2c_acpi_install_space_handler(struct i2c_adapter *adapter)
- 		return -ENOMEM;
- 	}
- 
--	acpi_walk_dep_device_list(handle);
- 	return 0;
- }
- 
--- 
-2.28.0
-

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio