Update v5.4 patches
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
This commit is contained in:
parent
b42ff37372
commit
d0b1e651ba
|
@ -12,7 +12,6 @@ CONFIG_SURFACE_BATTERY=m
|
|||
CONFIG_SURFACE_DTX=m
|
||||
CONFIG_SURFACE_HID=m
|
||||
CONFIG_SURFACE_HOTPLUG=m
|
||||
CONFIG_SURFACE_KEYBOARD=m
|
||||
CONFIG_SURFACE_PERFMODE=m
|
||||
|
||||
#
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 1a4864ceb034b562b4628cbf69f96025fe61498e Mon Sep 17 00:00:00 2001
|
||||
From cea7d9a2a9272d208417165c2931bd18e7728b60 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 1/7] surface3-power
|
||||
Subject: [PATCH 1/8] surface3-power
|
||||
|
||||
---
|
||||
drivers/platform/x86/Kconfig | 7 +
|
||||
|
@ -11,10 +11,10 @@ Subject: [PATCH 1/7] surface3-power
|
|||
create mode 100644 drivers/platform/x86/surface3_power.c
|
||||
|
||||
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
|
||||
index 1cab99320514..348c795019fa 100644
|
||||
index 000d5693fae7..56b1cf96ff57 100644
|
||||
--- a/drivers/platform/x86/Kconfig
|
||||
+++ b/drivers/platform/x86/Kconfig
|
||||
@@ -1209,6 +1209,13 @@ config SURFACE_3_BUTTON
|
||||
@@ -1210,6 +1210,13 @@ config SURFACE_3_BUTTON
|
||||
---help---
|
||||
This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 96d000383cb1ed320a0aaaf584e1e8d7a9600d70 Mon Sep 17 00:00:00 2001
|
||||
From a0bb18b7b173214237fd0d459979ec6204e350d8 Mon Sep 17 00:00:00 2001
|
||||
From: Chih-Wei Huang <cwhuang@linux.org.tw>
|
||||
Date: Tue, 18 Sep 2018 11:01:37 +0800
|
||||
Subject: [PATCH 2/7] surface3-oemb
|
||||
Subject: [PATCH 2/8] surface3-oemb
|
||||
|
||||
---
|
||||
drivers/platform/x86/surface3-wmi.c | 7 +++++++
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From efb05978b88476658030f3df4bc4fccf5412d0a3 Mon Sep 17 00:00:00 2001
|
||||
From 3c7c2507efd9b6598e440097e068354292cc5566 Mon Sep 17 00:00:00 2001
|
||||
From: kitakar5525 <34676735+kitakar5525@users.noreply.github.com>
|
||||
Date: Thu, 20 Feb 2020 16:51:11 +0900
|
||||
Subject: [PATCH 3/7] wifi
|
||||
Subject: [PATCH 3/8] wifi
|
||||
|
||||
---
|
||||
drivers/net/wireless/marvell/mwifiex/Makefile | 1 +
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 36b4d65d6e3d0d57b3d718d6d771697374d7333e Mon Sep 17 00:00:00 2001
|
||||
From 5f39b676103581dcfa4702ea3f921729c4c9a982 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 4/7] ipts
|
||||
Subject: [PATCH 4/8] ipts
|
||||
|
||||
---
|
||||
drivers/input/touchscreen/Kconfig | 2 +
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,7 +1,7 @@
|
|||
From b69e689ae47f7f4059ef86a55bcc1dfe7511770d Mon Sep 17 00:00:00 2001
|
||||
From a813aa2d1afcf8c4ca1eb6c200d6bb847da547ac Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Luz <luzmaximilian@gmail.com>
|
||||
Date: Sat, 25 Jul 2020 17:19:53 +0200
|
||||
Subject: [PATCH 6/7] surface-sam-over-hid
|
||||
Subject: [PATCH 6/8] surface-sam-over-hid
|
||||
|
||||
---
|
||||
drivers/i2c/i2c-core-acpi.c | 35 +++++++
|
||||
|
@ -65,10 +65,10 @@ index ce70b5288472..5df647c4d9a5 100644
|
|||
dev_warn(&adapter->dev, "protocol 0x%02x not supported for client 0x%02x\n",
|
||||
accessor_type, client->addr);
|
||||
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
|
||||
index 348c795019fa..5495e3702f65 100644
|
||||
index 56b1cf96ff57..9fc01f255cbf 100644
|
||||
--- a/drivers/platform/x86/Kconfig
|
||||
+++ b/drivers/platform/x86/Kconfig
|
||||
@@ -1216,6 +1216,13 @@ config SURFACE_3_POWER_OPREGION
|
||||
@@ -1217,6 +1217,13 @@ config SURFACE_3_POWER_OPREGION
|
||||
Select this option to enable support for ACPI operation
|
||||
region of the Surface 3 battery platform driver.
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 144eaf2cde36eeb9b24659205dd363a00116dc82 Mon Sep 17 00:00:00 2001
|
||||
From f2720bcc54e287b7c7158e9b57553720ed9eab3b Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Luz <luzmaximilian@gmail.com>
|
||||
Date: Sun, 16 Aug 2020 23:39:56 +0200
|
||||
Subject: [PATCH 7/7] surface-gpe
|
||||
Subject: [PATCH 7/8] surface-gpe
|
||||
|
||||
---
|
||||
drivers/platform/x86/Kconfig | 9 +
|
||||
|
@ -11,10 +11,10 @@ Subject: [PATCH 7/7] surface-gpe
|
|||
create mode 100644 drivers/platform/x86/surface_gpe.c
|
||||
|
||||
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
|
||||
index 5495e3702f65..e0af35fed2d5 100644
|
||||
index 9fc01f255cbf..f5623ec8eda5 100644
|
||||
--- a/drivers/platform/x86/Kconfig
|
||||
+++ b/drivers/platform/x86/Kconfig
|
||||
@@ -1223,6 +1223,15 @@ config SURFACE_BOOK1_DGPU_SWITCH
|
||||
@@ -1224,6 +1224,15 @@ config SURFACE_BOOK1_DGPU_SWITCH
|
||||
This driver provides a sysfs switch to set the power-state of the
|
||||
discrete GPU found on the Microsoft Surface Book 1.
|
||||
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
From c7cd4ee28f95e353406fdb98ffcb168974ecf638 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 8/8] 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
|
||||
|
Loading…
Reference in a new issue