History log of /linux/sound/soc/codecs/Kconfig (Results 1 – 25 of 855)
Revision Date Author Comments
# 8d78e4f9 17-Sep-2026 Arnd Bergmann <arnd@arndb.de>

ASoC: rt766: fix HID dependency for SND_SOC_SDCA_HID

Selecting SND_SOC_SDCA_HID only works if HID is enabled:

WARNING: unmet direct dependencies detected for SND_SOC_SDCA_HID
Depends on [n]: SOUN

ASoC: rt766: fix HID dependency for SND_SOC_SDCA_HID

Selecting SND_SOC_SDCA_HID only works if HID is enabled:

WARNING: unmet direct dependencies detected for SND_SOC_SDCA_HID
Depends on [n]: SOUND [=y] && SND [=y] && SND_SOC [=y] && SND_SOC_SDCA [=y] && (HID [=n]=y [=y] || HID [=n]=SND_SOC_SDCA [=y])
Selected by [y]:
- SND_SOC_RT766_SDCA_SDW [=y] && SOUND [=y] && SND [=y] && SND_SOC [=y] && SOUNDWIRE [=y] && SND_SOC_SDCA [=y]

Change the dependency to require SND_SOC_SDCA_CLASS instead, which
solves the problem without extra selects.

Fixes: b50ecf5873df ("ASoC: rt766: add RT766/RT767 SDCA driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://patch.msgid.link/20260917135950.405423-1-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 0030f626 14-Sep-2026 Alvin Šipraga <alvin.sipraga@analog.com>

ASoC: adau1977: make the Kconfig symbols user selectable

SND_SOC_ADAU1977_{SPI,I2C} are missing Kconfig text, so they don't show
up in menuconfig and can't be selected by a user - only by another
sy

ASoC: adau1977: make the Kconfig symbols user selectable

SND_SOC_ADAU1977_{SPI,I2C} are missing Kconfig text, so they don't show
up in menuconfig and can't be selected by a user - only by another
symbol such as a machine driver. Add the text to make these symbols
selectable and usable with generic machine drivers like the simple audio
card.

Signed-off-by: Alvin Šipraga <alvin.sipraga@analog.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://patch.msgid.link/20260914-asoc-adau1977-fixes-v1-1-aa2f0cabd728@analog.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# b2b82ce1 18-Aug-2026 Takashi Iwai <tiwai@suse.de>

Merge tag 'asoc-v7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v7.3

A very busy release, a combination of a lot of new device work and more

Merge tag 'asoc-v7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v7.3

A very busy release, a combination of a lot of new device work and more
people than usual doing various subsystem wide improvements in the code.
The main subsystem level change is the work Morimoto-san has been doing
to get automatic DAI format selection more widely deployed, and even
that is largely changes in the drivers to enable use of the feature
rather than framework work.

- Conversions of a lot of drivers to use the automatic DAI format
selection code from Morimoto-san.
- Many fixes and code improvements from bui duc phuc and Morimoto-san.
- Fixes for ordering problems in register default tables from Peter
Ujfalusi.
- Changes to use auto-cleanup for firmware to improve robustness from
Takashi Iwai.
- Support for firmware on more Awinc devices.
- Many changes in the Qualcomm driver stack, mostly around new platform
support.
- Support for AMD ACP7.B/F, Cirrus Logic CS35L62, Loongson 2K0300,
Meson GX formatter and interface, Qualcomm LPI MI2S, SM8475 and
WSA855 and Realtek RT1321 VA1/2 and RT766/7.

show more ...


# 692719a9 17-Aug-2026 Takashi Iwai <tiwai@suse.de>

Merge branch 'for-next' into for-linus


# ac47e22f 14-Aug-2026 Mark Brown <broonie@kernel.org>

ASoC: cs35l56: Switch to using the IRQ from the SoundWire core

Richard Fitzgerald <rf@opensource.cirrus.com> says:

At the time the cs35l56 driver was written the only way to get interrupts
from the

ASoC: cs35l56: Switch to using the IRQ from the SoundWire core

Richard Fitzgerald <rf@opensource.cirrus.com> says:

At the time the cs35l56 driver was written the only way to get interrupts
from the SoundWire core was to implement a custom handler inside the
interrupt_callback() function.

The SoundWire core now provides a virtual IRQ for notifying ImpDef
interrupts, and switching to this simplifies the code and also makes it
more similar to the normal interrupt handling of I2C/SPI (though some
SoundWire specials are still needed).

Patches #1 and #2 do some preparatory code shuffling so that there is
less clutter in patch #4.

Patch #3 changes the SoundWire core code to create the virtual ImpDef IRQ
before calling the codec drive probe() so that the IRQ can be requested in
probe().

Link: https://patch.msgid.link/20260810104045.60701-1-rf@opensource.cirrus.com

show more ...


# 243ca1fb 10-Aug-2026 Richard Fitzgerald <rf@opensource.cirrus.com>

ASoC: cs35l56: Use IRQ provided by the SoundWire core

Replace the custom SoundWire IRQ handling with the generic nested IRQ
provided by the SoundWire core. This removes the local IRQ work function
a

ASoC: cs35l56: Use IRQ provided by the SoundWire core

Replace the custom SoundWire IRQ handling with the generic nested IRQ
provided by the SoundWire core. This removes the local IRQ work function
and the convoluted IRQ masking and pm_runtime management around it.

We still need the local functions to mask/disable and unmask/enable the
SoundWire interrupts because the devices handled by the cs35l56 driver
don't have the generic mask bit for the ImpDef1 interrupt so masking and
unmasking has to use a custom mask bit.

cs35l56_sdw_remove() doesn't need to call cs35l56_disable_sdw_interrupts()
now that there isn't a local work function to be flushed. It only masks
the custom interrupt mask bit and the rest of the handler cleanup will be
done the normal way by devm_free_irq() in cs35l56_remove().

Similar applies to cs35l56_sdw_system_suspend() - it is enough to write
the custom mask bits.

cs35l56_irq() doesn't need to be exported because cs35l56_sdw.c isn't
calling it.

Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://patch.msgid.link/20260810104045.60701-5-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 071497d2 11-Aug-2026 Mark Brown <broonie@kernel.org>

ASoC: amd: enable audio on HP OmniBook X Flip 14

Ville Saarinen <wiza@saarinenkoti.fi> says:

The HP OmniBook X Flip 14-kc0xxx (board 8EA1, Strix Point, ACP 7.2) has no
usable audio on mainline at a

ASoC: amd: enable audio on HP OmniBook X Flip 14

Ville Saarinen <wiza@saarinenkoti.fi> says:

The HP OmniBook X Flip 14-kc0xxx (board 8EA1, Strix Point, ACP 7.2) has no
usable audio on mainline at all. Its BIOS reports an ACP configuration flag
of FLAG_AMD_LEGACY_ONLY_DMIC, which binds the legacy ACP driver and
registers a PDM-only card, so the SoundWire links are never scanned. The
two TAS2783 speaker amplifiers on link 0 and the RT712-VB jack codec on
link 1 never enumerate, and the machine has no playback path whatsoever.

Patch 1 adds a DMI quirk overriding the flag so snd_pci_ps probes. Patch 2
adds the machine entry describing the link topology.

With both applied the card comes up and every path on the machine works:
internal speakers, headphone jack with detection, headset microphone and
the internal DMIC array. Two further patches are needed for the speakers
to render stereo rather than mono, and to survive a system resume; those
are in the TAS2783 codec driver and are being sent separately to the TI
maintainers, since they have no build dependency on this pair.

Related reports for the same root cause on other machines:

- kernel bugzilla #221226 (ASUS Zenbook S16)
- CachyOS linux-cachyos#820 (HP OmniBook X Flip 16, board 8EA2 -- the
sibling board, which would need its own entry; I have no access to
one and have not added it)

Tested on the affected machine only. I do not have any other ACP 7.2
board, so the gating on patch 2 is written to be conservative rather than
broad.

Testing
=======

The hardware testing was done on v7.1.6, where an equivalent version of
this pair is what makes audio work on the machine. Against the master
commit named below, both patches have been compile-tested only (gcc, W=1,
no new warnings, no new external symbol references).

Patch 2 has been reworked slightly relative to the tested build: the
RT712-VB entry now reuses the existing jack_dmic_endpoints array, which
already describes exactly the AIF1 jack + AIF3 DMIC pairing this board
needs, instead of adding a second identical copy of it. That was a
mechanical substitution, but it has not been through hardware.

Tool disclosure, per Documentation/process/generated-content.rst
================================================================

This work was done in extended interactive sessions with Claude (Anthropic,
model claude-opus-5) acting as a coding and debugging assistant, and a
substantial amount of the analysis and of the patch text originated with
it. Both patches carry an Assisted-by tag as described in
Documentation/process/coding-assistants.rst.

The division of work:

- The assistant read the DMI data and ACP configuration flag off the
running machine, identified the flag override as the fix, derived the
SoundWire topology from the enumerated peripherals, and drafted both
patches and both changelogs.
- I ran everything that needed root or physical access, rebooted into
each build, and did the listening tests. The left/right ordering in
patch 2 is set by the order of the two amplifier entries; the first
version had the sides reversed and that was caught by ear, not by the
assistant.
- No single prompt generated these patches. The session was iterative
over roughly a day: inspect state, form a hypothesis, build, reboot,
measure, discard the hypothesis if the measurement disagreed. Several
confident intermediate conclusions were wrong and were only caught by
measurement.

I have reviewed both patches, I understand what they do, and I take
responsibility for them.

Link: https://patch.msgid.link/20260809101439.4798-1-wiza@saarinenkoti.fi

show more ...


# 78983d82 07-Aug-2026 Niranjan H Y <niranjan.hy@ti.com>

ASoC: tac5xx2-sdw: select REGMAP_SOUNDWIRE_MBQ

"select REGMAP_SOUNDWIRE_MBQ" to fix build error:
ERROR: modpost: "__devm_regmap_init_sdw_mbq"
[sound/soc/codecs/snd-soc-tac5xx2-sdw.ko] undefined!

ASoC: tac5xx2-sdw: select REGMAP_SOUNDWIRE_MBQ

"select REGMAP_SOUNDWIRE_MBQ" to fix build error:
ERROR: modpost: "__devm_regmap_init_sdw_mbq"
[sound/soc/codecs/snd-soc-tac5xx2-sdw.ko] undefined!

Signed-off-by: Niranjan H Y <niranjan.hy@ti.com>
Link: https://patch.msgid.link/20260807151623.3005-1-niranjan.hy@ti.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# b50ecf58 04-Aug-2026 Shuming Fan <shumingf@realtek.com>

ASoC: rt766: add RT766/RT767 SDCA driver

This patch adds the initial SDCA multi-function codec driver for the RT766 and RT767.

Signed-off-by: Shuming Fan <shumingf@realtek.com>
Reviewed-by: Charles

ASoC: rt766: add RT766/RT767 SDCA driver

This patch adds the initial SDCA multi-function codec driver for the RT766 and RT767.

Signed-off-by: Shuming Fan <shumingf@realtek.com>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://patch.msgid.link/20260804104828.557228-1-shumingf@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 58885264 03-Aug-2026 Rudi Heitbaum <rudi@heitbaum.com>

ASoC: rt5645: Make the Kconfig symbol user selectable

SND_SOC_RT5645 has no prompt, so it can only be turned on by a machine
driver that selects it. Every such driver is x86, MediaTek or Rockchip,
w

ASoC: rt5645: Make the Kconfig symbol user selectable

SND_SOC_RT5645 has no prompt, so it can only be turned on by a machine
driver that selects it. Every such driver is x86, MediaTek or Rockchip,
which leaves the codec unreachable on any other platform.

The part has a devicetree binding of its own,
Documentation/devicetree/bindings/sound/realtek,rt5645.yaml, and nothing
in the driver is machine specific, so a board that describes it with
simple-audio-card or audio-graph-card should be able to build it. Today
there is no configuration in which that is possible.

Give the symbol a prompt, matching SND_SOC_RT5640 immediately above it.
The machine drivers that select it are unaffected.

Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
Link: https://patch.msgid.link/anCcciWmO6QOLTsl@5e001e58230e
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# dbc2afea 01-Aug-2026 Mark Brown <broonie@kernel.org>

ASoC: Add support for the Qualcomm WSA885X Stereo smart speaker amplifier

Prasad Kumpatla <prasad.kumpatla@oss.qualcomm.com> says:

The series first documents the WSA885X devicetree binding,
includi

ASoC: Add support for the Qualcomm WSA885X Stereo smart speaker amplifier

Prasad Kumpatla <prasad.kumpatla@oss.qualcomm.com> says:

The series first documents the WSA885X devicetree binding,
including supplies, GPIOs, Interrupt and battery configuration.

It then adds the ASoC codec driver with register programming, serial
interface setup, clock handling, mute and gain control, reset handling,
interrupt support, runtime TDM slot-count configuration, and stream-time
power-state sequencing.

validated speaker playback on Shikra and Hawi platforms.

Link: https://patch.msgid.link/20260715115220.3093799-1-prasad.kumpatla@oss.qualcomm.com

show more ...


# 1d0368c9 15-Jul-2026 Prasad Kumpatla <prasad.kumpatla@oss.qualcomm.com>

ASoC: codecs: add Qualcomm WSA885X codec driver

Add an ASoC codec driver for the Qualcomm WSA885X stereo smart speaker
amplifier.

The driver programs the register map, handles reset and interrupt s

ASoC: codecs: add Qualcomm WSA885X codec driver

Add an ASoC codec driver for the Qualcomm WSA885X stereo smart speaker
amplifier.

The driver programs the register map, handles reset and interrupt support,
exposes DAI operations for PCM/TDM playback, and provides mixer controls
for usage mode, speaker volume and RX slot mask.

Keep stream-time power-state sequencing in the DAI callbacks and use regmap
for the control path.

Signed-off-by: Prasad Kumpatla <prasad.kumpatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20260715115220.3093799-3-prasad.kumpatla@oss.qualcomm.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 18a44e70 21-Jul-2026 Mark Brown <broonie@kernel.org>

ALSA: hda: Add AW88399 HDA side codec driver for Lenovo Legion

Marco Giunta <marco_giunta@outlook.it> says:

Several Lenovo Legion laptops (Pro 7i 16IAX10H, Y9000P IAX10,
Pro 7 16AFR10H, R9000P ADR1

ALSA: hda: Add AW88399 HDA side codec driver for Lenovo Legion

Marco Giunta <marco_giunta@outlook.it> says:

Several Lenovo Legion laptops (Pro 7i 16IAX10H, Y9000P IAX10,
Pro 7 16AFR10H, R9000P ADR10) use AWINIC AW88399 smart amplifiers
to drive their bass woofers, connected via I2C as side codecs
to a Realtek ALC287 HDA codec.

Without a driver for these amplifiers, only the tweeters produce
sound, resulting in quiet and tinny audio.

An ASoC driver for the AW88399 already exists in-tree
(sound/soc/codecs/aw88399.c), contributed by AWINIC, but it targets
ASoC topologies and cannot drive the chip when it sits behind an
HDA controller. This series adds a proper HDA side codec driver,
following the established pattern used by the CS35L41, CS35L56,
and TAS2781 drivers.

Patch 1 extracts the device-level functions from the existing ASoC
driver into a shared library module (SND_SOC_AW88399_LIB) with a
shared header at include/sound/aw88399.h, following the CS35L41
precedent (SND_SOC_CS35L41_LIB / include/sound/cs35l41.h). This
avoids a build-time dependency on the full ASoC codec module and
ensures clean separation between the ASoC and HDA drivers.

Patches 2 through 5 prepare the shared library for use on ACPI-based
HDA systems: patch 2 extends channel assignment to work without
Device Tree properties, patch 3 adds a per-instance flag to bypass
an unreliable hardware status bit on certain boards, patch 4 adds
a firmware reload flag so that the HDA driver can signal that DSP
firmware needs to be re-uploaded after system sleep, and patch 5
adds a channel setter so that the HDA driver can configure the
amplifier without depending on ASoC-internal device headers.

NOTE ON FIRMWARE: This driver requires the firmware file
aw88399_acf.bin, which uses the same format and request path as the
existing ASoC driver. This firmware is not yet available in the
linux-firmware repository. We intend to coordinate with the AWINIC
maintainers (CC'd) to arrange its inclusion. In the meantime, users
can extract the firmware from the Windows driver and place it in
/lib/firmware/.

This work builds on the initial driver development by Yakov Till
("Lyapsus") and the bounty effort organized by Nadim Kobeissi:
https://github.com/nadimkobeissi/16iax10h-linux-sound-saga

Link: https://patch.msgid.link/DS7PR19MB77247D9AD698CF0FF37DB58BFCC62@DS7PR19MB7724.namprd19.prod.outlook.com

show more ...


# 7fa44519 17-Jul-2026 Marco Giunta <marco_giunta@outlook.it>

ASoC: aw88399: extract shared device library

Extract the device-level functions from aw88399.c into a new shared
library module (aw88399-lib.c) with a shared header at
include/sound/aw88399.h, follo

ASoC: aw88399: extract shared device library

Extract the device-level functions from aw88399.c into a new shared
library module (aw88399-lib.c) with a shared header at
include/sound/aw88399.h, following the pattern established by CS35L41
(cs35l41-lib.c / include/sound/cs35l41.h) for chips that need both
ASoC and HDA drivers.

The shared header at include/sound/aw88399.h contains the register
definitions, bit-field masks, hardware constants, device enums, the
struct aw88399 definition, and the library function declarations.
The ASoC-private header at sound/soc/codecs/aw88399.h is reduced to
ASoC-specific definitions (PCM formats/rates, ALSA kcontrol helpers,
calibration constants) and includes the shared header.

The library contains the chip initialization, firmware loading,
playback start/stop sequences, and all their internal dependencies
(PLL checks, DSP management, volume control, calibration, CRC
verification, etc.). The ASoC codec driver retains the ALSA controls,
DAPM widgets, codec probe/remove, calibration service, and I2C bus
driver registration.

A new Kconfig symbol SND_SOC_AW88399_LIB is introduced.
SND_SOC_AW88399 (the existing ASoC codec) selects it, ensuring no
change for current users. The HDA side codec driver (introduced
later in this series) selects the library without pulling in the
full ASoC codec module. This avoids a build-time dependency on the
full ASoC driver and follows the established pattern used by CS35L41
(SND_SOC_CS35L41_LIB) for chips with both ASoC and HDA drivers.

Some library functions (DSP control, volume setting, mute,
calibration updates, profile management, and status helpers) are
used internally by the library's start/stop sequences but are also
called directly by the ASoC driver's remaining code.
These are exported from the library so the ASoC module can access them.

This is a pure code movement with no functional changes. The moved
functions are identical to their originals in aw88399.c.

Tested-by: Nadim Kobeissi <nadim@symbolic.software>
Tested-by: Xia Yun'an <imitoy@imitoy.top>
Tested-by: Munzir Taha <munzirtaha@gmail.com>
Signed-off-by: Marco Giunta <marco_giunta@outlook.it>
Link: https://patch.msgid.link/DS7PR19MB772415C485FAF74297673FD7FCC62@DS7PR19MB7724.namprd19.prod.outlook.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# a5ee3180 10-Jul-2026 Mark Brown <broonie@kernel.org>

ASoC: codecs: lpass-{tx,rx}-macro: switch to PM clock framework

Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com> says:

Convert the LPASS TX and RX macro codec drivers to runtime PM clock
management

ASoC: codecs: lpass-{tx,rx}-macro: switch to PM clock framework

Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com> says:

Convert the LPASS TX and RX macro codec drivers to runtime PM clock
management using the PM clock framework, completing the LPASS macro PM
clock migration started with the WSA/VA macros [1].

The conversion follows the same pattern established in the WSA/VA series:
- PM clocks created and populated from DT via devm_pm_clk_create() +
of_pm_clk_add_clks(), inlined in probe (no helper wrapper).
- Runtime PM enabled via devm_pm_runtime_enable() with 100 ms autosuspend.
- runtime_suspend: regcache_cache_only first, pm_clk_suspend, then
regcache_mark_dirty only on success; rollback on failure.
- runtime_resume: pm_clk_resume with regcache unwind, regcache_sync with
full unwind on failure.
- SWR clock gate prepare/unprepare routed through pm_runtime_resume_and_get
/ pm_runtime_put_autosuspend.
- Probe error paths tightened with dev_warn on PM put failures.
- Empty remove callbacks dropped (devm handles cleanup).
- PM_CLK Kconfig dependency added.

Patch 3 adds clk_set_rate() return value checking as suggested by Konrad.

[1] https://lore.kernel.org/linux-arm-msm/20260629-xo-sd-codec-v7-b4-v7-0-fb37ce457c42@oss.qualcomm.com/

Link: https://patch.msgid.link/20260707-xo-sd-codec-tx-rx-v2-0-f61b4622f97f@oss.qualcomm.com

show more ...


# b9b23e72 07-Jul-2026 Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>

ASoC: codecs: lpass-tx-macro: switch to PM clock framework for runtime PM

Convert the LPASS TX macro codec driver to runtime PM clock management
using the PM clock framework.

Replace manual macro/d

ASoC: codecs: lpass-tx-macro: switch to PM clock framework for runtime PM

Convert the LPASS TX macro codec driver to runtime PM clock management
using the PM clock framework.

Replace manual macro/dcodec/mclk/npl/fsgen clock toggling with PM clock
helpers and runtime PM callbacks. Keep the SWR gate runtime PM reference
from SWR clock enable until disable so autosuspend does not gate clocks
while SWR is still prepared.

Set autosuspend delay to 100 ms so PM-clock-managed votes are dropped soon
after idle while still avoiding suspend/resume churn on short gaps.

Add a PM_CLK dependency to SND_SOC_LPASS_TX_MACRO since this patch
introduces PM clock APIs.

Tighten error unwind by checking pm_runtime_put_sync_suspend() in probe
and by restoring regcache state if pm_clk_resume()/regcache_sync() fails.

Co-developed-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
Signed-off-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
Signed-off-by: Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>
Link: https://patch.msgid.link/20260707-xo-sd-codec-tx-rx-v2-1-f61b4622f97f@oss.qualcomm.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 4119e9b3 03-Jul-2026 Mark Brown <broonie@kernel.org>

ASoC: qcom: lpass: Switch VA/WSA macros to PM clock framework

Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com> says:

This series converts the LPASS WSA and VA macro codec drivers to the
PM clock fr

ASoC: qcom: lpass: Switch VA/WSA macros to PM clock framework

Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com> says:

This series converts the LPASS WSA and VA macro codec drivers to the
PM clock framework for runtime PM clock handling.

The runtime clock enable/disable sequencing is moved to PM clock helpers
for clocks described in device tree, while regcache state handling remains
in the codec runtime PM callbacks. This keeps register cache synchronization
explicit in the driver and lets runtime PM drop codec clock votes when the
macros are idle.

The series also keeps WSA MCLK-output clock registration resource-managed
by switching it to devm_clk_hw_register(), which allows the empty WSA remove
callback to be dropped.

Link: https://patch.msgid.link/20260702-xo-sd-codec-v7-b4-v8-0-d39d0fdb7859@oss.qualcomm.com

show more ...


# eb667d0f 01-Jul-2026 Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>

ASoC: codecs: lpass-va-macro: Switch to PM clock framework for runtime PM

Convert the LPASS VA macro codec driver to runtime PM clock management by
using the PM clock framework.

Replace manual macr

ASoC: codecs: lpass-va-macro: Switch to PM clock framework for runtime PM

Convert the LPASS VA macro codec driver to runtime PM clock management by
using the PM clock framework.

Replace manual macro/dcodec/mclk/npl clock handling with PM clock helpers
and runtime PM callbacks, and keep runtime PM references around fsgen clock
gating so PM-clock-managed clocks remain active while fsgen is enabled.

Set autosuspend delay to 100 ms so PM-clock-managed votes are dropped soon
after idle while still avoiding suspend/resume churn on short gaps.

Add a PM_CLK dependency to SND_SOC_LPASS_VA_MACRO since this patch
introduces PM clock APIs.

Improve failure unwind paths: handle runtime PM put errors in probe/fsgen
paths and restore regcache state correctly on resume failure.

Suggested-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://patch.msgid.link/20260702-xo-sd-codec-v7-b4-v8-2-d39d0fdb7859@oss.qualcomm.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# cd054a6e 01-Jul-2026 Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>

ASoC: codecs: lpass-wsa-macro: Switch to PM clock framework for runtime PM

Convert the LPASS WSA macro codec driver to runtime PM clock management by
using the PM clock framework.

Replace manual ma

ASoC: codecs: lpass-wsa-macro: Switch to PM clock framework for runtime PM

Convert the LPASS WSA macro codec driver to runtime PM clock management by
using the PM clock framework.

Replace manual macro/dcodec/mclk/npl/fsgen clock toggling with PM clock
helpers and runtime PM callbacks. Keep the SWR gate runtime PM reference
from SWR clock enable until disable so autosuspend does not gate clocks
while SWR is still prepared.

Set autosuspend delay to 100 ms so PM-clock-managed votes are dropped soon
after idle while still avoiding suspend/resume churn on short gaps.

Add a PM_CLK dependency to SND_SOC_LPASS_WSA_MACRO since this patch
introduces PM clock APIs.

Tighten error unwind by checking pm_runtime_put_sync_suspend() in probe and
by restoring regcache state if pm_clk_resume()/regcache_sync() fails.

Suggested-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20260702-xo-sd-codec-v7-b4-v8-1-d39d0fdb7859@oss.qualcomm.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 2f82d58a 30-Jun-2026 Julian Braha <julianbraha@gmail.com>

ASoC: codecs: cleanup kconfig indentations

Cleanup various bad indentations in the kconfig:
1. spaces instead of tabs (this file mostly uses tabs)
2. too much indentation
3. not enough indentation

ASoC: codecs: cleanup kconfig indentations

Cleanup various bad indentations in the kconfig:
1. spaces instead of tabs (this file mostly uses tabs)
2. too much indentation
3. not enough indentation

Signed-off-by: Julian Braha <julianbraha@gmail.com>
Link: https://patch.msgid.link/20260630085249.380365-1-julianbraha@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# a5edc45d 20-Jun-2026 Diogo Ivo <diogo.ivo@bootlin.com>

ASoC: rt5677: Enable standalone compilation for generic card use

Add a prompt string to make the RT5677 driver user-selectable, allowing
it to be built independently for use with generic sound card

ASoC: rt5677: Enable standalone compilation for generic card use

Add a prompt string to make the RT5677 driver user-selectable, allowing
it to be built independently for use with generic sound card bindings.

Signed-off-by: Diogo Ivo <diogo.ivo@bootlin.com>
Link: https://patch.msgid.link/20260620-smaug-audio-v1-2-e318acdf5abd@bootlin.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 19b79397 03-Jun-2026 Mark Brown <broonie@kernel.org>

ASoC: cs42xx8: Add SPI bus support for CS42448/CS42888 codec

Chancel Liu <chancel.liu@nxp.com> says:

The existing cs42xx8 driver only supported I2C control interface.
Add SPI bus support for the Ci

ASoC: cs42xx8: Add SPI bus support for CS42448/CS42888 codec

Chancel Liu <chancel.liu@nxp.com> says:

The existing cs42xx8 driver only supported I2C control interface.
Add SPI bus support for the Cirrus Logic CS42448/CS42888 Audio CODEC.

Link: https://patch.msgid.link/20260603095041.3906558-1-chancel.liu@oss.nxp.com

show more ...


# 3158f585 03-Jun-2026 Chancel Liu <chancel.liu@nxp.com>

ASoC: cs42xx8: Add SPI bus support for CS42448/CS42888 codec

The existing cs42xx8 driver only supported I2C control interface.
Add SPI bus support for the Cirrus Logic CS42448/CS42888 Audio CODEC.

ASoC: cs42xx8: Add SPI bus support for CS42448/CS42888 codec

The existing cs42xx8 driver only supported I2C control interface.
Add SPI bus support for the Cirrus Logic CS42448/CS42888 Audio CODEC.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://patch.msgid.link/20260603095041.3906558-3-chancel.liu@oss.nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# 74baa9df 26-May-2026 Nathan Chancellor <nathan@kernel.org>

ASoC: es9356-sdca: Depend on CONFIG_SND_SOC_SDCA

When building without CONFIG_SND_SOC_SDCA, there is an error at link
time when building the es9356-sdca driver:

ERROR: modpost: "sdca_asoc_q78_get

ASoC: es9356-sdca: Depend on CONFIG_SND_SOC_SDCA

When building without CONFIG_SND_SOC_SDCA, there is an error at link
time when building the es9356-sdca driver:

ERROR: modpost: "sdca_asoc_q78_get_volsw" [sound/soc/codecs/snd-soc-es9356.ko] undefined!
ERROR: modpost: "sdca_asoc_q78_put_volsw" [sound/soc/codecs/snd-soc-es9356.ko] undefined!

Add an explicit dependency on CONFIG_SND_SOC_SDCA to ensure these
symbols are always present when building the driver.

Fixes: 5d9cb740cd38 ("ASoC: es9356-sdca: Add ES9356 SDCA driver")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20260526-es9356-dep-fixes-v1-3-39ac16f43d54@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


# bf6dfd0e 26-May-2026 Nathan Chancellor <nathan@kernel.org>

ASoC: codecs: Adjust indentation in CONFIG_SND_SOC_ES9356 definition

The indentation of CONFIG_SND_SOC_ES9356 uses spaces, instead of the
Kconfig standard using tabs. Adjust it.

Signed-off-by: Nath

ASoC: codecs: Adjust indentation in CONFIG_SND_SOC_ES9356 definition

The indentation of CONFIG_SND_SOC_ES9356 uses spaces, instead of the
Kconfig standard using tabs. Adjust it.

Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20260526-es9356-dep-fixes-v1-2-39ac16f43d54@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>

show more ...


12345678910>>...35