diff options
author | Taijian | 2024-03-28 00:30:39 +0100 |
---|---|---|
committer | Taijian | 2024-03-28 00:30:39 +0100 |
commit | fe2ced41debb6c571d6542f71ff7bb222144c15f (patch) | |
tree | 887a20df3b7a6fd4c712786542478ba4281d2e60 /0003-platform-x86-asus-wmi-add-support-variant-of-TUF-RGB.patch | |
parent | 005a5394c20fa0495489d479c7c3a3a36172add5 (diff) | |
download | aur-fe2ced41debb6c571d6542f71ff7bb222144c15f.tar.gz |
update to 6.8.2
Diffstat (limited to '0003-platform-x86-asus-wmi-add-support-variant-of-TUF-RGB.patch')
-rw-r--r-- | 0003-platform-x86-asus-wmi-add-support-variant-of-TUF-RGB.patch | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/0003-platform-x86-asus-wmi-add-support-variant-of-TUF-RGB.patch b/0003-platform-x86-asus-wmi-add-support-variant-of-TUF-RGB.patch new file mode 100644 index 000000000000..1fd2ce721522 --- /dev/null +++ b/0003-platform-x86-asus-wmi-add-support-variant-of-TUF-RGB.patch @@ -0,0 +1,74 @@ +From 9b038d6db81b457738cf65e43f401ccb8bf505e6 Mon Sep 17 00:00:00 2001 +From: "Luke D. Jones" <luke@ljones.dev> +Date: Sun, 10 Mar 2024 17:20:02 +1300 +Subject: [PATCH 3/5] platform/x86: asus-wmi: add support variant of TUF RGB + +Adds support for a second TUF RGB wmi call that some versions of the TUF +laptop come with. Also adjusts existing support to select whichever is +available. + +Signed-off-by: Luke D. Jones <luke@ljones.dev> +--- + drivers/platform/x86/asus-wmi.c | 12 +++++++++++- + include/linux/platform_data/x86/asus-wmi.h | 1 + + 2 files changed, 12 insertions(+), 1 deletion(-) + +diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c +index b9a2fb8007c0..e1100726de53 100644 +--- a/drivers/platform/x86/asus-wmi.c ++++ b/drivers/platform/x86/asus-wmi.c +@@ -280,6 +280,7 @@ struct asus_wmi { + bool nv_temp_tgt_available; + + bool kbd_rgb_mode_available; ++ u32 kbd_rgb_dev; + bool kbd_rgb_state_available; + + bool throttle_thermal_policy_available; +@@ -870,6 +871,7 @@ static ssize_t kbd_rgb_mode_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) + { ++ struct asus_wmi *asus = dev_get_drvdata(dev); + u32 cmd, mode, r, g, b, speed; + int err; + +@@ -906,7 +908,7 @@ static ssize_t kbd_rgb_mode_store(struct device *dev, + speed = 0xeb; + } + +- err = asus_wmi_evaluate_method3(ASUS_WMI_METHODID_DEVS, ASUS_WMI_DEVID_TUF_RGB_MODE, ++ err = asus_wmi_evaluate_method3(ASUS_WMI_METHODID_DEVS, asus->kbd_rgb_dev, + cmd | (mode << 8) | (r << 16) | (g << 24), b | (speed << 8), NULL); + if (err) + return err; +@@ -4544,6 +4546,14 @@ static int asus_wmi_add(struct platform_device *pdev) + asus->gpu_mux_dev = ASUS_WMI_DEVID_GPU_MUX_VIVO; + } + ++ if (asus_wmi_dev_is_present(asus, ASUS_WMI_DEVID_TUF_RGB_MODE)) { ++ asus->kbd_rgb_mode_available = true; ++ asus->kbd_rgb_dev = ASUS_WMI_DEVID_TUF_RGB_MODE; ++ } else if (asus_wmi_dev_is_present(asus, ASUS_WMI_DEVID_TUF_RGB_MODE2)) { ++ asus->kbd_rgb_mode_available = true; ++ asus->kbd_rgb_dev = ASUS_WMI_DEVID_TUF_RGB_MODE2; ++ } ++ + err = fan_boost_mode_check_present(asus); + if (err) + goto fail_fan_boost_mode; +diff --git a/include/linux/platform_data/x86/asus-wmi.h b/include/linux/platform_data/x86/asus-wmi.h +index b48b024dd844..3e9a01467c67 100644 +--- a/include/linux/platform_data/x86/asus-wmi.h ++++ b/include/linux/platform_data/x86/asus-wmi.h +@@ -132,6 +132,7 @@ + + /* TUF laptop RGB modes/colours */ + #define ASUS_WMI_DEVID_TUF_RGB_MODE 0x00100056 ++#define ASUS_WMI_DEVID_TUF_RGB_MODE2 0x0010005A + + /* TUF laptop RGB power/state */ + #define ASUS_WMI_DEVID_TUF_RGB_STATE 0x00100057 +-- +2.44.0 + |