* [RFC PATCH] ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9
@ 2026-02-01 12:17 Tagir Garaev
2026-02-03 12:05 ` Mark Brown
[not found] ` <CALBQW2vDSzmzdF4vsn8SMvvwFcG4fp3_KG2oZOnJpcX0MspBEg@mail.gmail.com>
0 siblings, 2 replies; 3+ messages in thread
From: Tagir Garaev @ 2026-02-01 12:17 UTC (permalink / raw)
To: broonie; +Cc: pierre-louis.bossart, alsa-devel, linux-kernel, Tagir Garaev
Add DMI entry for Huawei Matebook D (BOD-WXX9) with HEADPHONE_GPIO
and DMIC quirks.
This device has ES8336 codec with:
- GPIO 16 (headphone-enable) for headphone amplifier control
- GPIO 17 (speakers-enable) for speaker amplifier control
- GPIO 269 for jack detection IRQ
- 2-channel DMIC
Hardware investigation shows that both GPIO 16 and 17 are required
for proper audio routing, as headphones and speakers share the same
physical output (HPOL/HPOR) and are separated only via amplifier
enable signals.
RFC: Seeking advice on GPIO control issue:
GPIO values change in driver (gpiod_get_value() shows logical value
changes) but not physically (debugfs gpio shows no change). The same
gpiod_set_value_cansleep() calls work correctly in probe context with
msleep(), but fail when called from DAPM event callbacks.
Context information from diagnostics:
- in_atomic=0, in_interrupt=0, irqs_disabled=0
- Process context: pipewire
- GPIO 17 (speakers): changes in driver, no physical change
- GPIO 16 (headphone): changes in driver, no physical change
In Windows, audio switching works without visible GPIO changes,
suggesting possible ACPI/firmware involvement.
Any suggestions on how to properly control these GPIOs from DAPM
events would be appreciated.
Signed-off-by: Tagir Garaev <tgaraev653@gmail.com>
---
sound/soc/intel/boards/sof_es8336.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/sound/soc/intel/boards/sof_es8336.c b/sound/soc/intel/boards/sof_es8336.c
index 7dd02d700d7e..8cedfce99edc 100644
--- a/sound/soc/intel/boards/sof_es8336.c
+++ b/sound/soc/intel/boards/sof_es8336.c
@@ -363,6 +363,15 @@ 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[] = {
+ {
+ .callback = sof_es8336_quirk_cb,
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "HUAWEI"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "BOD-WXX9"),
+ },
+ .driver_data = (void *)(SOF_ES8336_HEADPHONE_GPIO |
+ SOF_ES8336_ENABLE_DMIC)
+ },
{
.callback = sof_es8336_quirk_cb,
.matches = {
--
2.52.0
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [RFC PATCH] ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9
2026-02-01 12:17 [RFC PATCH] ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9 Tagir Garaev
@ 2026-02-03 12:05 ` Mark Brown
[not found] ` <CALBQW2vDSzmzdF4vsn8SMvvwFcG4fp3_KG2oZOnJpcX0MspBEg@mail.gmail.com>
1 sibling, 0 replies; 3+ messages in thread
From: Mark Brown @ 2026-02-03 12:05 UTC (permalink / raw)
To: Tagir Garaev; +Cc: alsa-devel, linux-kernel, Pierre-Louis Bossart
On Sun, 01 Feb 2026 15:17:28 +0300, Tagir Garaev wrote:
> Add DMI entry for Huawei Matebook D (BOD-WXX9) with HEADPHONE_GPIO
> and DMIC quirks.
>
> This device has ES8336 codec with:
> - GPIO 16 (headphone-enable) for headphone amplifier control
> - GPIO 17 (speakers-enable) for speaker amplifier control
> - GPIO 269 for jack detection IRQ
> - 2-channel DMIC
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/1] ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9
commit: 6b641122d31f9d33e7d60047ee0586d1659f3f54
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [RFC PATCH] ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9
[not found] ` <CALBQW2vDSzmzdF4vsn8SMvvwFcG4fp3_KG2oZOnJpcX0MspBEg@mail.gmail.com>
@ 2026-02-23 12:16 ` Mark Brown
0 siblings, 0 replies; 3+ messages in thread
From: Mark Brown @ 2026-02-23 12:16 UTC (permalink / raw)
To: Honey Tydik; +Cc: pierre-louis.bossart, alsa-devel, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1243 bytes --]
On Mon, Feb 23, 2026 at 11:40:45AM +0300, Honey Tydik wrote:
> Gentle ping on this RFC. I'm still investigating why GPIO control from
> DAPM event doesn't work on Huawei BOD-WXX9, while the same code works
> from probe context.
Please don't send content free pings and please allow a reasonable time
for review. People get busy, go on holiday, attend conferences and so
on so unless there is some reason for urgency (like critical bug fixes)
please allow at least a couple of weeks for review. If there have been
review comments then people may be waiting for those to be addressed.
Sending content free pings adds to the mail volume (if they are seen at
all) which is often the problem and since they can't be reviewed
directly if something has gone wrong you'll have to resend the patches
anyway, so sending again is generally a better approach though there are
some other maintainers who like them - if in doubt look at how patches
for the subsystem are normally handled.
Please don't top post, reply in line with needed context. This allows
readers to readily follow the flow of conversation and understand what
you are talking about and also helps ensure that everything in the
discussion is being addressed.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-02-23 12:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-02-01 12:17 [RFC PATCH] ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9 Tagir Garaev
2026-02-03 12:05 ` Mark Brown
[not found] ` <CALBQW2vDSzmzdF4vsn8SMvvwFcG4fp3_KG2oZOnJpcX0MspBEg@mail.gmail.com>
2026-02-23 12:16 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®