From: nickel@altlinux.org
To: devel-kernel@lists.altlinux.org
Cc: Vasily Vinogradov <v.vinogradov@aq.ru>
Subject: [d-kernel] [PATCH v2 2/9] ASoC: Intel: sof_es8336: Add quirk for inverted jack detect
Date: Thu, 7 Apr 2022 14:15:10 +0300
Message-ID: <20220407111517.1567092-2-nickel@altlinux.org> (raw)
In-Reply-To: <20220407111517.1567092-1-nickel@altlinux.org>
From: Vasily Vinogradov <v.vinogradov@aq.ru>
Backport from 5.17
Based on upstream commit 8e5db49182415b8bfce3b5843fc87e49c83c02aa
Link: https://lore.kernel.org/r/20220308192610.392950-18-pierre-louis.bossart@linux.intel.com
Signed-off-by: Vasily Vinogradov <v.vinogradov@aq.ru>
Signed-off-by: Nikolai Kostrigin <nickel@altlinux.org>
---
sound/soc/intel/boards/sof_es8336.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/sound/soc/intel/boards/sof_es8336.c b/sound/soc/intel/boards/sof_es8336.c
index 20d577eaab6d..7966a61b22c8 100644
--- a/sound/soc/intel/boards/sof_es8336.c
+++ b/sound/soc/intel/boards/sof_es8336.c
@@ -26,6 +26,7 @@
#define SOF_ES8336_TGL_GPIO_QUIRK BIT(4)
#define SOF_ES8336_ENABLE_DMIC BIT(5)
+#define SOF_ES8336_JD_INVERTED BIT(6)
static unsigned long quirk;
@@ -33,6 +34,9 @@ static int quirk_override = -1;
module_param_named(quirk, quirk_override, int, 0444);
MODULE_PARM_DESC(quirk, "Board-specific quirk override");
+/* jd-inv + terminating entry */
+#define SOF_ES8336_PROPS_MAX 2
+
struct sof_es8336_private {
struct device *codec_dev;
struct gpio_desc *gpio_pa;
@@ -64,6 +68,8 @@ static const struct acpi_gpio_mapping *gpio_mapping = acpi_es8336_gpios;
static void log_quirks(struct device *dev)
{
dev_info(dev, "quirk SSP%ld", SOF_ES8336_SSP_CODEC(quirk));
+ dev_info(dev, "quirk JD_INVERTED %s\n",
+ (quirk & SOF_ES8336_JD_INVERTED) ? "enabled" : "disabled");
}
static int sof_es8316_speaker_power_event(struct snd_soc_dapm_widget *w,
@@ -459,6 +465,8 @@ static int sof_es8336_probe(struct platform_device *pdev)
struct acpi_device *adev;
struct snd_soc_dai_link *dai_links;
struct device *codec_dev;
+ struct property_entry props[SOF_ES8336_PROPS_MAX] = {};
+ unsigned int cnt = 0;
int dmic_be_num = 0;
int hdmi_num = 3;
int ret;
@@ -511,6 +519,18 @@ static int sof_es8336_probe(struct platform_device *pdev)
if (!codec_dev)
return -EPROBE_DEFER;
+ if (quirk & SOF_ES8336_JD_INVERTED)
+ props[cnt++] = PROPERTY_ENTRY_BOOL("everest,jack-detect-inverted");
+
+ if (cnt) {
+ ret = device_add_properties(codec_dev, props);
+ if (ret) {
+ dev_err(codec_dev, "%s, could not add properties: %d\n",
+ __func__, ret);
+ goto err;
+ }
+ }
+
ret = devm_acpi_dev_add_driver_gpios(codec_dev, gpio_mapping);
if (ret)
dev_warn(codec_dev, "unable to add GPIO mapping table\n");
--
2.33.0
next prev parent reply other threads:[~2022-04-07 11:15 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-04 6:28 [d-kernel] [PATCH 0/9] *** backport support for ES83x6 codec in I2S mode for CML/CNL platforms to 5.15.x *** nickel
2022-04-04 6:28 ` [d-kernel] (no subject) nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 1/9] commit 0b220578c2aab3d5ac6b693117e8c5d22e8c2b34 nickel
2022-04-04 14:48 ` Vitaly Chikunov
2022-04-04 15:16 ` Nikolai Kostrigin
2022-04-07 11:15 ` [d-kernel] [PATCH v2 1/9] ASoC: Intel: add machine driver for SOF+ES8336 nickel
2022-04-07 11:15 ` nickel [this message]
2022-04-07 11:15 ` [d-kernel] [PATCH v2 3/9] ASoC: es8316: Add power management nickel
2022-04-07 11:15 ` [d-kernel] [PATCH v2 4/9] ASoC: es8316: Use increased GPIO debounce time nickel
2022-04-07 11:15 ` [d-kernel] [PATCH v2 5/9] ASoC: codec: es8326: New codec driver nickel
2022-04-07 11:15 ` [d-kernel] [PATCH v2 6/9] ALSA: intel-dspconfig: add ES8336 support for CNL nickel
2022-04-07 11:15 ` [d-kernel] [PATCH v2 7/9] ASoC: Intel: soc-acpi: add ESSX8336 support on Cannon Lake machines nickel
2022-04-07 11:15 ` [d-kernel] [PATCH v2 8/9] config: CONFIG_SND_SOC_INTEL_SOF_ES8336_MACH=m nickel
2022-04-07 11:15 ` [d-kernel] [PATCH v2 9/9] ASoC: Intel: sof_es8336: add DMI info based pa-enable lookup quirk for CNL-LP models nickel
2022-04-07 19:32 ` [d-kernel] [PATCH v2 1/9] ASoC: Intel: add machine driver for SOF+ES8336 Vitaly Chikunov
2022-04-12 14:34 ` Nikolai Kostrigin
2022-04-14 8:43 ` Vitaly Chikunov
2022-04-14 8:48 ` Антон Мидюков
2022-04-14 8:52 ` Vitaly Chikunov
2022-04-14 8:55 ` Nikolai Kostrigin
2022-04-04 6:28 ` [d-kernel] [PATCH 2/9] commit 79b5808491cf152b808c51fecdafb221fa270cf1 nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 3/9] commit 8143959d503dd6b3c8b9802cee0f1eba82e8d844 nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 4/9] commit 796f9b0189299a221d4c822be216165dd2371852 nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 5/9] commit f6a1611f744dcdd55c5adaf02f193083286dac34 nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 6/9] ALSA: intel-dspconfig: add ES8336 support for CNL nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 7/9] ASoC: Intel: soc-acpi: add ESSX8336 support on Cannon Lake machines nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 8/9] config: CONFIG_SND_SOC_INTEL_SOF_ES8336_MACH=m nickel
2022-04-04 6:28 ` [d-kernel] [PATCH 9/9] ASoC: Intel: sof_es8336: add DMI info based pa-enable lookup quirk for CNL-LP models nickel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220407111517.1567092-2-nickel@altlinux.org \
--to=nickel@altlinux.org \
--cc=devel-kernel@lists.altlinux.org \
--cc=v.vinogradov@aq.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux kernel packages development
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \
devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com
public-inbox-index devel-kernel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git