kernel-5.15/0425-ASoC-Intel-sof_es8336-Add-a-quirk-for-Aquarius-NS685.patch
Mikhail Novosyolov ef608f72b9 Fix detecting jack connection on Aquarius
It works correctly with such file:
$ cat /etc/modprobe.d/sof-essx8336.conf
options snd_soc_sof_es8336 quirk=0x40

Otherwise it thinks that headsphones and microphone are connected.
2022-09-12 21:46:25 +03:00

50 lines
1.8 KiB
Diff

From 00ba4607f2385a3c5cc27f3d627e454363ea61cc Mon Sep 17 00:00:00 2001
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
Date: Wed, 7 Sep 2022 14:17:35 +0300
Subject: [PATCH] ASoC: Intel: sof_es8336: Add a quirk for Aquarius NS685U R11
Sound worked with such a trick (+ changes in ALSA UCM configs):
echo "options snd_soc_sof_es8336 quirk=0x40" > /etc/modprobe.d/sof-essx8336.conf
More information about this notebook:
https://linux-hardware.org/?probe=339dc3db60&log=dmidecode
See also:
https://git.altlinux.org/gears/k/kernel-image-std-def.git?p=kernel-image-std-def.git;a=commitdiff;h=740693f7fc02612bef2036426449c575ec4f4161
---
sound/soc/intel/boards/sof_es8336.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/sound/soc/intel/boards/sof_es8336.c b/sound/soc/intel/boards/sof_es8336.c
index b7903e9b5..0a350c07d 100644
--- a/sound/soc/intel/boards/sof_es8336.c
+++ b/sound/soc/intel/boards/sof_es8336.c
@@ -303,6 +303,25 @@ static int sof_es8336_quirk_cb(const struct dmi_system_id *id)
* if the topology file is modified as well.
*/
static const struct dmi_system_id sof_es8336_quirk_table[] = {
+ /* Aquarius NS685U R11 (https://linux-hardware.org/?probe=339dc3db60) */
+ {
+ .callback = sof_es8336_quirk_cb,
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Aquarius"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "NS685U R11"),
+ },
+ .driver_data = (void *)(SOF_ES8336_JD_INVERTED)
+ },
+ /* Aquarius NS685U (https://linux-hardware.org/?probe=988e1b3035) */
+ {
+ .callback = sof_es8336_quirk_cb,
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Aquarius"),
+ /* it is not a typo! see dmidecode by the link above */
+ DMI_MATCH(DMI_PRODUCT_NAME, "win10 HOME rs10"),
+ },
+ .driver_data = (void *)(SOF_ES8336_JD_INVERTED)
+ },
{
.callback = sof_es8336_quirk_cb,
.matches = {
--
2.35.2