diff options
author | dragonn | 2021-02-24 23:55:09 +0100 |
---|---|---|
committer | dragonn | 2021-02-25 00:00:19 +0100 |
commit | 4f0de187d88ec51406490bb68232bf8d372cbec2 (patch) | |
tree | 027e899d39f43bf0c7fca05c968b49c708335dc3 | |
parent | 2aef7061df1142a05c0d9058b1660d37e4e395cd (diff) | |
download | aur-4f0de187d88ec51406490bb68232bf8d372cbec2.tar.gz |
5.10.16
8 files changed, 384 insertions, 34 deletions
@@ -1,6 +1,6 @@ pkgbase = linux-g14 pkgdesc = Linux - pkgver = 5.10.7.arch1 + pkgver = 5.10.16.arch1 pkgrel = 1 url = https://lab.retarded.farm/zappel/asus-rog-zephyrus-g14/ arch = x86_64 @@ -12,11 +12,15 @@ pkgbase = linux-g14 makedepends = xmlto makedepends = git options = !strip - source = archlinux-linux::git+https://git.archlinux.org/linux.git?signed#tag=v5.10.7-arch1 + source = archlinux-linux::git+https://git.archlinux.org/linux.git?signed#tag=v5.10.16-arch1 source = config source = sys-kernel_arch-sources-g14_files_0002-asus-nb-wmi-add-support-for-GU502DU.patch source = sys-kernel_arch-sources-g14_files_0003-i8042-dmiids.patch source = sys-kernel_arch-sources-g14_files_0004-hid-asus-n-key.patch + source = sys-kernel_arch-sources-g14_files_6006-cpufreq_fix_boost_freq.patch + source = sys-kernel_arch-sources-g14_files_6007-HID-asus-Add-support-for-2021-ASUS-N-Key-keyboard.patch + source = sys-kernel_arch-sources-g14_files_6008-HID-asus-Filter-keyboard-EC-for-old-ROG-keyboard.patch + source = sys-kernel_arch-sources-g14_files_6009-WMI-asus-Reduce-G14-and-G15-match-to-min-product-nam.patch validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886 validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E validpgpkeys = A2FF3A36AAA56654109064AB19802F8B0D70FC30 @@ -25,6 +29,10 @@ pkgbase = linux-g14 sha256sums = e924edb045476201968eb76157a72ddae7dac18932e54f0e3d32eeed98d2b2c6 sha256sums = 7c9bff35d0bde9b4250137ea9e5292a103ecbc1fe68a753688541d22be27fa29 sha256sums = f934eb199172e3a16658eb0c66ee7a0ca37c69a9dd1ee4d20a37f89bd3c53288 + sha256sums = a27e273e5cb81deb5a0d5a09d1f596bc821b65825089407ac90ac91eeef698fa + sha256sums = 2edfb8dbb0fe7202191c51a5f645559c5da9f800e8aad2f8a4fd2731092138ff + sha256sums = d9f5742fed4406396698897aa042d4d5fdbfd7c51add7483a777f9ab41901aac + sha256sums = eec1d016c5f53f1d808701b6c038db2e73a61310713f859d99bf97b9c793cefe pkgname = linux-g14 pkgdesc = The Linux kernel and modules @@ -1,7 +1,7 @@ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> pkgbase=linux-g14 -pkgver=5.10.7.arch1 +pkgver=5.10.16.arch1 pkgrel=1 pkgdesc='Linux' _srctag=v${pkgver%.*}-${pkgver##*.} @@ -22,6 +22,10 @@ source=( "sys-kernel_arch-sources-g14_files_0002-asus-nb-wmi-add-support-for-GU502DU.patch" "sys-kernel_arch-sources-g14_files_0003-i8042-dmiids.patch" "sys-kernel_arch-sources-g14_files_0004-hid-asus-n-key.patch" + "sys-kernel_arch-sources-g14_files_6006-cpufreq_fix_boost_freq.patch" + "sys-kernel_arch-sources-g14_files_6007-HID-asus-Add-support-for-2021-ASUS-N-Key-keyboard.patch" + "sys-kernel_arch-sources-g14_files_6008-HID-asus-Filter-keyboard-EC-for-old-ROG-keyboard.patch" + "sys-kernel_arch-sources-g14_files_6009-WMI-asus-Reduce-G14-and-G15-match-to-min-product-nam.patch" ) validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds @@ -33,8 +37,11 @@ sha256sums=('SKIP' 'cf69b81648a07ebedb274ed26bed3c4d2ff75c6665ecaca0a724b148c70c9c7c' 'e924edb045476201968eb76157a72ddae7dac18932e54f0e3d32eeed98d2b2c6' '7c9bff35d0bde9b4250137ea9e5292a103ecbc1fe68a753688541d22be27fa29' - 'f934eb199172e3a16658eb0c66ee7a0ca37c69a9dd1ee4d20a37f89bd3c53288') - + 'f934eb199172e3a16658eb0c66ee7a0ca37c69a9dd1ee4d20a37f89bd3c53288' + 'a27e273e5cb81deb5a0d5a09d1f596bc821b65825089407ac90ac91eeef698fa' + '2edfb8dbb0fe7202191c51a5f645559c5da9f800e8aad2f8a4fd2731092138ff' + 'd9f5742fed4406396698897aa042d4d5fdbfd7c51add7483a777f9ab41901aac' + 'eec1d016c5f53f1d808701b6c038db2e73a61310713f859d99bf97b9c793cefe') export KBUILD_BUILD_HOST=archlinux export KBUILD_BUILD_USER=$pkgbase diff --git a/sys-kernel_arch-sources-g14_files-6005-alsa-hda-ga401-ga502-experimental.patch b/sys-kernel_arch-sources-g14_files-6005-alsa-hda-ga401-ga502-experimental.patch index e6d45fec39ea..d2df68c4e217 100644 --- a/sys-kernel_arch-sources-g14_files-6005-alsa-hda-ga401-ga502-experimental.patch +++ b/sys-kernel_arch-sources-g14_files-6005-alsa-hda-ga401-ga502-experimental.patch @@ -1,30 +1,31 @@ ---- a/sound/pci/hda/patch_realtek.c 2020-10-10 19:26:27.026289289 +0200 -+++ b/sound/pci/hda/patch_realtek.c 2020-10-10 19:28:24.502830780 +0200 -@@ -6235,7 +6235,9 @@ +diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c +index 8616c5624870..f0d08502e7ee 100644 +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -6349,6 +6349,8 @@ enum { ALC269VC_FIXUP_ACER_HEADSET_MIC, ALC269VC_FIXUP_ACER_MIC_NO_PRESENCE, ALC289_FIXUP_ASUS_GA401, -- ALC289_FIXUP_ASUS_GA502, + ALC289_FIXUP_ASUS_GA401_SPK, + ALC289_FIXUP_ASUS_GA401_HP_MIC, -+ ALC294_FIXUP_ASUS_GA502, + ALC289_FIXUP_ASUS_GA502, ALC256_FIXUP_ACER_MIC_NO_PRESENCE, ALC285_FIXUP_HP_GPIO_AMP_INIT, - ALC269_FIXUP_CZC_B20, -@@ -7496,14 +7498,33 @@ +@@ -7616,14 +7618,34 @@ static const struct hda_fixup alc269_fixups[] = { + }, [ALC289_FIXUP_ASUS_GA401] = { - .type = HDA_FIXUP_PINS, - .v.pins = (const struct hda_pintbl[]) { -- { 0x19, 0x03a11020 }, /* headset mic with jack detect */ + .type = HDA_FIXUP_FUNC, +- .v.func = alc289_fixup_asus_ga401, ++ .v.pins = (const struct hda_pintbl[]) { + { 0x17, 0x90170130 }, /* bass speaker */ + { 0x19, 0x03a11050 }, /* headphone mic with jack detect */ + { 0x21, 0x03211430 }, /* headphone playback */ - { } - }, -+ .chained = true, -+ .chain_id = ALC289_FIXUP_ASUS_GA401_SPK - }, -- [ALC289_FIXUP_ASUS_GA502] = { ++ { } ++ }, + .chained = true, +- .chain_id = ALC289_FIXUP_ASUS_GA502, ++ .chain_id = ALC289_FIXUP_ASUS_GA401_SPK, ++ }, + [ALC289_FIXUP_ASUS_GA401_SPK] = { + .type = HDA_FIXUP_FUNC, + .v.func = alc295_fixup_disable_dac3, @@ -39,8 +40,8 @@ + { 0x20, AC_VERB_SET_PROC_COEF, 0x5289 }, + { } + }, -+ }, -+ [ALC294_FIXUP_ASUS_GA502] = { + }, + [ALC289_FIXUP_ASUS_GA502] = { .type = HDA_FIXUP_PINS, .v.pins = (const struct hda_pintbl[]) { - { 0x19, 0x03a11020 }, /* headset mic with jack detect */ @@ -48,13 +49,12 @@ { } }, }, -@@ -7889,7 +7908,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { +@@ -7978,7 +8000,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x1043, 0x1c23, "Asus X55U", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), SND_PCI_QUIRK(0x1043, 0x1ccd, "ASUS X555UB", ALC256_FIXUP_ASUS_MIC), SND_PCI_QUIRK(0x1043, 0x1d4e, "ASUS TM420", ALC256_FIXUP_ASUS_HPE), - SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502), -+ SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC294_FIXUP_ASUS_GA502), ++ SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502), SND_PCI_QUIRK(0x1043, 0x1f11, "ASUS Zephyrus G14", ALC289_FIXUP_ASUS_GA401), SND_PCI_QUIRK(0x1043, 0x1881, "ASUS Zephyrus S/M", ALC294_FIXUP_ASUS_GX502_PINS), SND_PCI_QUIRK(0x1043, 0x3030, "ASUS ZN270IE", ALC256_FIXUP_ASUS_AIO_GPIO2), - diff --git a/sys-kernel_arch-sources-g14_files_0007-snd-hda-realtek-g401-ga502.patch b/sys-kernel_arch-sources-g14_files_0007-snd-hda-realtek-g401-ga502.patch index f1ff2418b149..8f8e43ae62ca 100644 --- a/sys-kernel_arch-sources-g14_files_0007-snd-hda-realtek-g401-ga502.patch +++ b/sys-kernel_arch-sources-g14_files_0007-snd-hda-realtek-g401-ga502.patch @@ -1,6 +1,8 @@ ---- a/sound/pci/hda/patch_realtek.c 2020-09-27 19:57:22.699000000 +0200 -+++ b/sound/pci/hda/patch_realtek.c 2020-09-27 22:06:26.887560162 +0200 -@@ -6004,6 +6004,28 @@ +diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c +index 6899089d132e..2f61667bf001 100644 +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -6051,6 +6051,28 @@ static void alc_fixup_disable_mic_vref(struct hda_codec *codec, snd_hda_codec_set_pin_target(codec, 0x19, PIN_VREFHIZ); } @@ -29,7 +31,7 @@ static void alc294_gx502_toggle_output(struct hda_codec *codec, struct hda_jack_callback *cb) -@@ -6218,6 +6240,7 @@ +@@ -6276,6 +6298,7 @@ enum { ALC285_FIXUP_THINKPAD_HEADSET_JACK, ALC294_FIXUP_ASUS_HPE, ALC294_FIXUP_ASUS_COEF_1B, @@ -37,7 +39,7 @@ ALC294_FIXUP_ASUS_GX502_HP, ALC294_FIXUP_ASUS_GX502_PINS, ALC294_FIXUP_ASUS_GX502_VERBS, -@@ -6230,7 +6253,6 @@ +@@ -6288,7 +6311,6 @@ enum { ALC269VC_FIXUP_ACER_HEADSET_MIC, ALC269VC_FIXUP_ACER_MIC_NO_PRESENCE, ALC289_FIXUP_ASUS_GA401, @@ -45,7 +47,7 @@ ALC256_FIXUP_ACER_MIC_NO_PRESENCE, ALC285_FIXUP_HP_GPIO_AMP_INIT, ALC269_FIXUP_CZC_B20, -@@ -7483,16 +7505,13 @@ +@@ -7550,16 +7572,13 @@ static const struct hda_fixup alc269_fixups[] = { .chain_id = ALC269_FIXUP_HEADSET_MIC }, [ALC289_FIXUP_ASUS_GA401] = { @@ -66,10 +68,10 @@ { } }, }, -@@ -7795,7 +7814,7 @@ - SND_PCI_QUIRK(0x1043, 0x1bbd, "ASUS Z550MA", ALC255_FIXUP_ASUS_MIC_NO_PRESENCE), +@@ -7889,7 +7908,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x1043, 0x1c23, "Asus X55U", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), SND_PCI_QUIRK(0x1043, 0x1ccd, "ASUS X555UB", ALC256_FIXUP_ASUS_MIC), + SND_PCI_QUIRK(0x1043, 0x1d4e, "ASUS TM420", ALC256_FIXUP_ASUS_HPE), - SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502), + SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC294_FIXUP_ASUS_GA502), SND_PCI_QUIRK(0x1043, 0x1f11, "ASUS Zephyrus G14", ALC289_FIXUP_ASUS_GA401), diff --git a/sys-kernel_arch-sources-g14_files_6006-cpufreq_fix_boost_freq.patch b/sys-kernel_arch-sources-g14_files_6006-cpufreq_fix_boost_freq.patch new file mode 100644 index 000000000000..e405460c1caa --- /dev/null +++ b/sys-kernel_arch-sources-g14_files_6006-cpufreq_fix_boost_freq.patch @@ -0,0 +1,150 @@ +diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c +index 1e4fbb002a31..a5facc6cad16 100644 +--- a/drivers/cpufreq/acpi-cpufreq.c ++++ b/drivers/cpufreq/acpi-cpufreq.c +@@ -26,6 +26,7 @@ + #include <linux/uaccess.h> + + #include <acpi/processor.h> ++#include <acpi/cppc_acpi.h> + + #include <asm/msr.h> + #include <asm/processor.h> +@@ -628,11 +629,57 @@ static int acpi_cpufreq_blacklist(struct cpuinfo_x86 *c) + } + #endif + ++#ifdef CONFIG_ACPI_CPPC_LIB ++static bool amd_max_boost(unsigned int max_freq, ++ unsigned int *max_boost) ++{ ++ struct cppc_perf_caps perf_caps; ++ u64 highest_perf, nominal_perf, perf_ratio; ++ int ret; ++ ++ ret = cppc_get_perf_caps(0, &perf_caps); ++ if (ret) { ++ pr_debug("Could not retrieve perf counters (%d)\n", ret); ++ return false; ++ } ++ ++ highest_perf = perf_caps.highest_perf; ++ nominal_perf = perf_caps.nominal_perf; ++ ++ if (!highest_perf || !nominal_perf) { ++ pr_debug("Could not retrieve highest or nominal performance\n"); ++ return false; ++ } ++ ++ perf_ratio = div_u64(highest_perf * SCHED_CAPACITY_SCALE, nominal_perf); ++ if (perf_ratio <= SCHED_CAPACITY_SCALE) { ++ pr_debug("Either perf_ratio is 0, or nominal >= highest performance\n"); ++ return false; ++ } ++ ++ *max_boost = max_freq * perf_ratio >> SCHED_CAPACITY_SHIFT; ++ if (!*max_boost) { ++ pr_debug("max_boost seems to be zero\n"); ++ return false; ++ } ++ ++ return true; ++} ++#else ++static bool amd_max_boost(unsigned int max_freq, ++ unsigned int *max_boost) ++{ ++ return false; ++} ++#endif ++ + static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy) + { + unsigned int i; + unsigned int valid_states = 0; + unsigned int cpu = policy->cpu; ++ unsigned int freq, max_freq = 0; ++ unsigned int max_boost; + struct acpi_cpufreq_data *data; + unsigned int result = 0; + struct cpuinfo_x86 *c = &cpu_data(policy->cpu); +@@ -779,15 +826,25 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy) + freq_table[valid_states-1].frequency / 1000) + continue; + ++ freq = perf->states[i].core_frequency * 1000; + freq_table[valid_states].driver_data = i; +- freq_table[valid_states].frequency = +- perf->states[i].core_frequency * 1000; ++ freq_table[valid_states].frequency = freq; ++ ++ if (freq > max_freq) ++ max_freq = freq; ++ + valid_states++; + } + freq_table[valid_states].frequency = CPUFREQ_TABLE_END; + policy->freq_table = freq_table; + perf->state = 0; + ++ if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD && ++ amd_max_boost(max_freq, &max_boost)) { ++ policy->cpuinfo.max_boost = max_boost; ++ static_branch_enable(&cpufreq_amd_max_boost); ++ } ++ + switch (perf->control_register.space_id) { + case ACPI_ADR_SPACE_SYSTEM_IO: + /* +diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c +index d0a3525ce27f..b96677f6b57e 100644 +--- a/drivers/cpufreq/cpufreq.c ++++ b/drivers/cpufreq/cpufreq.c +@@ -2721,6 +2721,9 @@ int cpufreq_boost_enabled(void) + } + EXPORT_SYMBOL_GPL(cpufreq_boost_enabled); + ++DEFINE_STATIC_KEY_FALSE(cpufreq_amd_max_boost); ++EXPORT_SYMBOL_GPL(cpufreq_amd_max_boost); ++ + /********************************************************************* + * REGISTER / UNREGISTER CPUFREQ DRIVER * + *********************************************************************/ +diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h +index 9c8b7437b6cd..341cac76d254 100644 +--- a/include/linux/cpufreq.h ++++ b/include/linux/cpufreq.h +@@ -40,9 +40,14 @@ enum cpufreq_table_sorting { + CPUFREQ_TABLE_SORTED_DESCENDING + }; + ++DECLARE_STATIC_KEY_FALSE(cpufreq_amd_max_boost); ++ ++#define cpufreq_driver_has_max_boost() static_branch_unlikely(&cpufreq_amd_max_boost) ++ + struct cpufreq_cpuinfo { + unsigned int max_freq; + unsigned int min_freq; ++ unsigned int max_boost; + + /* in 10^(-9) s = nanoseconds */ + unsigned int transition_latency; +diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c +index 6931f0cdeb80..541f3db3f576 100644 +--- a/kernel/sched/cpufreq_schedutil.c ++++ b/kernel/sched/cpufreq_schedutil.c +@@ -159,8 +159,12 @@ static unsigned int get_next_freq(struct sugov_policy *sg_policy, + unsigned long util, unsigned long max) + { + struct cpufreq_policy *policy = sg_policy->policy; +- unsigned int freq = arch_scale_freq_invariant() ? +- policy->cpuinfo.max_freq : policy->cur; ++ unsigned int freq, max_freq; ++ ++ max_freq = cpufreq_driver_has_max_boost() ? ++ policy->cpuinfo.max_boost : policy->cpuinfo.max_freq; ++ ++ freq = arch_scale_freq_invariant() ? max_freq : policy->cur; + + freq = map_util_freq(util, freq, max); + diff --git a/sys-kernel_arch-sources-g14_files_6007-HID-asus-Add-support-for-2021-ASUS-N-Key-keyboard.patch b/sys-kernel_arch-sources-g14_files_6007-HID-asus-Add-support-for-2021-ASUS-N-Key-keyboard.patch new file mode 100644 index 000000000000..f729fc0d73e6 --- /dev/null +++ b/sys-kernel_arch-sources-g14_files_6007-HID-asus-Add-support-for-2021-ASUS-N-Key-keyboard.patch @@ -0,0 +1,44 @@ +From d875a55692d7c4752147bff2deb81aba7183d1b4 Mon Sep 17 00:00:00 2001 +From: Luke D Jones <luke@ljones.dev> +Date: Fri, 19 Feb 2021 09:51:26 +1300 +Subject: [PATCH] HID: asus: Add support for 2021 ASUS N-Key keyboard + +Some new 2021 version of ASUS gamer laptops are using an updated +N-Key keyboard with the PID of 0x19b6. This version is using the +same init sequence and brightness control as the 0x1866 keyboard. + +Signed-off-by: Luke D Jones <luke@ljones.dev> +--- + drivers/hid/hid-asus.c | 3 +++ + drivers/hid/hid-ids.h | 1 + + 2 files changed, 4 insertions(+) + +diff --git a/drivers/hid/hid-asus.c b/drivers/hid/hid-asus.c +index 1dfe184ebf5a..2ab22b925941 100644 +--- a/drivers/hid/hid-asus.c ++++ b/drivers/hid/hid-asus.c +@@ -1221,6 +1221,9 @@ static const struct hid_device_id asus_devices[] = { + { HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK, + USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD), + QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK, ++ USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD2), ++ QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD }, + { HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK, + USB_DEVICE_ID_ASUSTEK_T100TA_KEYBOARD), + QUIRK_T100_KEYBOARD | QUIRK_NO_CONSUMER_USAGES }, +diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h +index 5ba0aa1d2335..b64d3eb5367c 100644 +--- a/drivers/hid/hid-ids.h ++++ b/drivers/hid/hid-ids.h +@@ -191,6 +191,7 @@ + #define USB_DEVICE_ID_ASUSTEK_ROG_KEYBOARD2 0x1837 + #define USB_DEVICE_ID_ASUSTEK_ROG_KEYBOARD3 0x1822 + #define USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD 0x1866 ++#define USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD2 0x19b6 + #define USB_DEVICE_ID_ASUSTEK_FX503VD_KEYBOARD 0x1869 + + #define USB_VENDOR_ID_ATEN 0x0557 +-- +2.30.0 + diff --git a/sys-kernel_arch-sources-g14_files_6008-HID-asus-Filter-keyboard-EC-for-old-ROG-keyboard.patch b/sys-kernel_arch-sources-g14_files_6008-HID-asus-Filter-keyboard-EC-for-old-ROG-keyboard.patch new file mode 100644 index 000000000000..3beb53d9ea4f --- /dev/null +++ b/sys-kernel_arch-sources-g14_files_6008-HID-asus-Filter-keyboard-EC-for-old-ROG-keyboard.patch @@ -0,0 +1,32 @@ +From 20c82cdae05f6ffe8405cc32cfa94551f596b05c Mon Sep 17 00:00:00 2001 +From: Luke D Jones <luke@ljones.dev> +Date: Fri, 19 Feb 2021 10:33:03 +1300 +Subject: [PATCH] HID: asus: Filter keyboard EC for old ROG keyboard + +Older ROG keyboards emit a similar stream of bytes to the new +N-Key keyboards and require filtering to prevent a lot of +unmapped key warnings showing. As all the ROG keyboards use +QUIRK_USE_KBD_BACKLIGHT this is now used to branch to filtering +in asus_raw_event. + +Signed-off-by: Luke D Jones <luke@ljones.dev> +--- + drivers/hid/hid-asus.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/hid/hid-asus.c b/drivers/hid/hid-asus.c +index 2ab22b925941..1ed1c05c3d54 100644 +--- a/drivers/hid/hid-asus.c ++++ b/drivers/hid/hid-asus.c +@@ -335,7 +335,7 @@ static int asus_raw_event(struct hid_device *hdev, + if (drvdata->quirks & QUIRK_MEDION_E1239T) + return asus_e1239t_event(drvdata, data, size); + +- if (drvdata->quirks & QUIRK_ROG_NKEY_KEYBOARD) { ++ if (drvdata->quirks & QUIRK_USE_KBD_BACKLIGHT) { + /* + * Skip these report ID, the device emits a continuous stream associated + * with the AURA mode it is in which looks like an 'echo'. +-- +2.30.1 + diff --git a/sys-kernel_arch-sources-g14_files_6009-WMI-asus-Reduce-G14-and-G15-match-to-min-product-nam.patch b/sys-kernel_arch-sources-g14_files_6009-WMI-asus-Reduce-G14-and-G15-match-to-min-product-nam.patch new file mode 100644 index 000000000000..d2d78d6c5c5f --- /dev/null +++ b/sys-kernel_arch-sources-g14_files_6009-WMI-asus-Reduce-G14-and-G15-match-to-min-product-nam.patch @@ -0,0 +1,107 @@ +From 9a8bf4421fd85356e7f200f720b109f70860c219 Mon Sep 17 00:00:00 2001 +From: Luke D Jones <luke@ljones.dev> +Date: Fri, 19 Feb 2021 16:28:47 +1300 +Subject: [PATCH] WMI: asus: Reduce G14 and G15 match to min product name + +This patch reduces the product match for GA401 series laptops to +the minimum string required. + +The GA401 series of laptops has a lengthy list of product +variations in the 2020 series and the 2021 series refresh +is using the same base product ID of GA401. + +The same is also true for the GA502 series, and the new GA503 +series which is added in this patch as a variant of the G15. + +Signed-off-by: Luke D Jones <luke@ljones.dev> +--- + drivers/platform/x86/asus-nb-wmi.c | 57 ++++-------------------------- + 1 file changed, 6 insertions(+), 51 deletions(-) + +diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c +index d41d7ad14be0..f4db67c3eba2 100644 +--- a/drivers/platform/x86/asus-nb-wmi.c ++++ b/drivers/platform/x86/asus-nb-wmi.c +@@ -427,73 +427,28 @@ static const struct dmi_system_id asus_quirks[] = { + }, + { + .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA401IH", ++ .ident = "ASUSTeK COMPUTER INC. GA401", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA401IH"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "GA401"), + }, + .driver_data = &quirk_asus_vendor_backlight, + }, + { + .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA401II", ++ .ident = "ASUSTeK COMPUTER INC. GA502", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA401II"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "GA502"), + }, + .driver_data = &quirk_asus_vendor_backlight, + }, + { + .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA401IU", ++ .ident = "ASUSTeK COMPUTER INC. GA503", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA401IU"), +- }, +- .driver_data = &quirk_asus_vendor_backlight, +- }, +- { +- .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA401IV", +- .matches = { +- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA401IV"), +- }, +- .driver_data = &quirk_asus_vendor_backlight, +- }, +- { +- .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA401IVC", +- .matches = { +- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA401IVC"), +- }, +- .driver_data = &quirk_asus_vendor_backlight, +- }, +- { +- .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA502II", +- .matches = { +- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA502II"), +- }, +- .driver_data = &quirk_asus_vendor_backlight, +- }, +- { +- .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA502IU", +- .matches = { +- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA502IU"), +- }, +- .driver_data = &quirk_asus_vendor_backlight, +- }, +- { +- .callback = dmi_matched, +- .ident = "ASUSTeK COMPUTER INC. GA502IV", +- .matches = { +- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), +- DMI_MATCH(DMI_PRODUCT_NAME, "GA502IV"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "GA503"), + }, + .driver_data = &quirk_asus_vendor_backlight, + }, +-- +2.30.1 + |