summarylogtreecommitdiffstats
path: root/v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch
diff options
context:
space:
mode:
authorTaijian2023-07-01 23:41:28 +0200
committerTaijian2023-07-01 23:41:28 +0200
commit87d752b3493b77b4ec78d2c5b3cf509052c2bb37 (patch)
tree0f47799879d8df7983691b5ddb8a62464f6da70e /v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch
parentf20d5cb89f7d02c9588a82577e09847f858d560f (diff)
downloadaur-87d752b3493b77b4ec78d2c5b3cf509052c2bb37.tar.gz
update to 6.3.9
Diffstat (limited to 'v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch')
-rw-r--r--v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch b/v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch
new file mode 100644
index 000000000000..ed923d0a908d
--- /dev/null
+++ b/v2-0005-platform-x86-asus-wmi-don-t-allow-eGPU-switching-.patch
@@ -0,0 +1,37 @@
+From ba1fcbaa4037e2523c40a7aaa0cab9d75bf75e10 Mon Sep 17 00:00:00 2001
+From: "Luke D. Jones" <luke@ljones.dev>
+Date: Tue, 20 Jun 2023 12:26:51 +1200
+Subject: [PATCH v2 5/8] platform/x86: asus-wmi: don't allow eGPU switching if
+ eGPU not connected
+
+Check the ASUS_WMI_DEVID_EGPU_CONNECTED method for eGPU connection
+before allowing the ASUS_WMI_DEVID_EGPU method to run.
+
+Signed-off-by: Luke D. Jones <luke@ljones.dev>
+---
+ drivers/platform/x86/asus-wmi.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
+index 0c8a4a46b121..821addb284d7 100644
+--- a/drivers/platform/x86/asus-wmi.c
++++ b/drivers/platform/x86/asus-wmi.c
+@@ -693,6 +693,15 @@ static ssize_t egpu_enable_store(struct device *dev,
+ if (enable > 1)
+ return -EINVAL;
+
++ err = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_EGPU_CONNECTED);
++ if (err < 0)
++ return err;
++ if (err < 1) {
++ err = -ENODEV;
++ pr_warn("Failed to set egpu disable: %d\n", err);
++ return err;
++ }
++
+ err = asus_wmi_set_devstate(ASUS_WMI_DEVID_EGPU, enable, &result);
+ if (err) {
+ pr_warn("Failed to set egpu disable: %d\n", err);
+--
+2.41.0
+