Alsa-devel
Threads by month
- ----- 2025 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- 20 participants
- 51308 discussions

tinycompress: add support for new SNDRV_COMPRESS_TSTAMP64 and _AVAIL64
by GitHub pull_request - opened 25 Jul '25
by GitHub pull_request - opened 25 Jul '25
25 Jul '25
alsa-project/tinycompress pull request #29 was opened from jorisverhaegen:
These 2 ioctl are under review to be added to kernel. See https://lore.kernel.org/linux-sound/20250725114249.2086974-1-verhaegen@goog…
This pull request should be merged after this kernel is available.
Request URL : https://github.com/alsa-project/tinycompress/pull/29
Patch URL : https://github.com/alsa-project/tinycompress/pull/29.patch
Repository URL: https://github.com/alsa-project/tinycompress
1
0
Hello everyone.
2 Firewire problems with ALSAfirewire.
1.
Firewire Midi was working fine with kernel 5.10 with Reaper. Then obviously a lot changed with the Firewire Stack.
The midi output from Reaper has not changed according to it's developer - Justin. The problem is direct ALSA-Midi.
We tested the midi app from www.alsa-project.org/alsa-doc/alsa-lib/_2test_2rawmidi_8c-example.html#a0 yesterday and it freezes Debian and just breaks Arch with kernel 6.15
Thread at Reaper Bugs forum:
https://forum.cockos.com/showthread.php?t=300278
Has low level ALSA-Midi API changed?
2.
If using Pipewire-Jack with ALSAfirewire the Reaper midi output works fine but unfortunately Pipewire adds 90ms delay when playing back through any Firewire interface compared with an onboard soundcard.
The pipewire dev Wim Tayman, says it's ALSAfirewire fault but I proved it is not - see thread:
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues?show=eyJpaWQiOiI0…
The ALSA recording and playback is confirmed by my tests to be working under 10ms RTT with Echo, Motu and Bebop interfaces.
Is this problem related to first?
Low level communication error?
Cheers - and let me know if I can help in any way, although I'm not a programmer.
P. S. I hope you can read my post as I loaded up K-9 eMail client so as to deliver text only.
-- Martin Armsby
2
1

HDMI card is marked "off" on system resume and stays so until reset
by GitHub issues - opened 24 Jul '25
by GitHub issues - opened 24 Jul '25
24 Jul '25
alsa-project/alsa-lib issue #465 was opened from j39m:
(Continued from [Pipewire issue 4809](https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/4809).)
# Basic Symptoms
When resuming, my device often fails to continue playback over my HDMI output. Higher-level utils (`pavucontrol`, `pw-dump`, etc.) report that the corresponding "sink" is not present (until I reset the output).
Pipewire dev `@pvir` read my logs thusly:
<details>
<summary>`alsactl monitor` and `amixer`</summary>
Last state update after resume:
```
2025-07-24 22:15:16,844: alsactl
node hw:0, #7 (0,0,0,HDMI/DP,pcm=7 Jack,0) VALUE
2025-07-24 22:15:16,854: amixer
numid=7,iface=CARD,name='HDMI/DP,pcm=7 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
```
The next update then comes only when workaround is run:
```
2025-07-24 22:16:02,772: alsactl
node hw:0, #12 (3,7,0,ELD,0) VALUE INFO
2025-07-24 22:16:02,781: amixer
numid=7,iface=CARD,name='HDMI/DP,pcm=7 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=on
```
It appears there was no notification for the off->on transition, or the off->on only happens when doing the workaround cycling displays, so probably this is ALSA or HDMI bug.
</details>
I haven't tried waiting longer than this, but I assume that if ALSA thinks the card is still gone ~45s after resume, it's already a bit too far gone to be worried about exact timing.
# System readout
<details>
```
[j39m@flaglock6 ~/Downloads/tmp]
$ rpm -q alsa-lib intel-audio-firmware
alsa-lib-1.2.14-3.fc42.x86_64
intel-audio-firmware-20250708-1.fc42.noarch
[j39m@flaglock6 ~/Downloads/tmp]
$ inxi -A
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Raven/Raven2/Fenghuang HDMI/DP
Audio driver: snd_hda_intel
Device-2: Advanced Micro Devices [AMD] Audio Coprocessor
driver: snd_pci_acp3x
Device-3: Advanced Micro Devices [AMD] Family 17h/19h/1ah HD Audio
driver: snd_hda_intel
API: ALSA v: k6.15.6-200.fc42.x86_64 status: kernel-api
Server-1: PipeWire v: 1.4.6 status: active
```
</details>
Issue URL : https://github.com/alsa-project/alsa-lib/issues/465
Repository URL: https://github.com/alsa-project/alsa-lib
1
0
The following changes since commit 347e9f5043c89695b01e66b3ed111755afcf1911:
Linux 6.16-rc6 (2025-07-13 14:25:58 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git tags/asoc-v6.17
for you to fetch changes up to c58c35ef6ae62e36927f506a5afc66610b7261d9:
ASoC: qcom: sm8250: Add Fairphone 4 soundcard compatible (2025-07-23 15:09:30 +0100)
----------------------------------------------------------------
ASoC: Updates for v6.17
There's a few new drivers here and quite a lot of cleanup work from
Morimoto-san but generally this has been quite a quiet release,
resulting in a fairly small diffstat. Highlights include:
- Refactoring of the Kconfig menus to be hopefully more consistant and
easier to navigate.
- Refactoring of the DAPM code, mainly hiding functionality that
doesn't need to be exposed to drivers.
- Removal of the unused upstream weak paths DAPM functionality.
- Further work on the generic handling for SoundWire SDCA devices.
- Cleanups of our usage of the PM autosuspend functions, this pulls in
some PM core changes on a shared tag.
- Support for AMD ACP7.2 and SoundWire on ACP 7.1, Fairphone 4 & 5,
various Intel systems, Qualcomm QCS8275, Richtek RTQ9124 and TI TAS5753.
----------------------------------------------------------------
Ai Chao (3):
ASoC: renesas: Use helper function for_each_child_of_node_scoped()
ASoC: meson: Use helper function for_each_child_of_node_scoped()
ASoC: imx-card: Use helper function for_each_child_of_node_scoped()
Alexander Stein (1):
ASoC: codec: tlv320aic32x4: Fix reset GPIO check
Arnd Bergmann (2):
ASoC: ops: dynamically allocate struct snd_ctl_elem_value
ASoC: SDCA: fix HID dependency
Balamurugan C (3):
ASoC: Intel: soc-acpi: Add entry for sof_es8336 in PTL match table.
ASoC: Intel: soc-acpi: Add entry for HDMI_In capture support in PTL match table
ASoC: Intel: sof_rt5682: Add HDMI-In capture with rt5682 support for PTL.
Bard Liao (2):
ASoC: sdw_utils: add component_name string to dai_info
ASoC: sdw_utils: generate combined spk components string
Bram Vlerick (2):
ASoC: tas571x: add support for tas5753
ASoC: dt-bindings: tas57xx: add tas5753 compatibility
Brian Masney (6):
ASoC: codecs: da7219: convert from round_rate() to determine_rate()
ASoC: codecs: rt5682: convert from round_rate() to determine_rate()
ASoC: codecs: rt5682s: convert from round_rate() to determine_rate()
ASoC: qcom: qdsp6: q6dsp-lpass-clocks: convert from round_rate() to determine_rate()
ASoC: stm: stm32_i2s: convert from round_rate() to determine_rate()
ASoC: stm: stm32_sai_sub: convert from round_rate() to determine_rate()
Cezary Rojewski (2):
ASoC: codecs: rt5640: Drop dummy register names
ASoC: Intel: avs: Add rt5640 machine board
Charles Keepax (21):
HID: core: Add bus define for SoundWire bus
MAINTAINERS: Add SDCA maintainers entry
ASoC: SDCA: Add missing default in switch in entity_pde_event()
ASoC: SDCA: Fixup some kernel doc errors
ASoC: SDCA: Minor selected/detected mode control fixups
ASoC: SDCA: Add flag for unused IRQs
ASoC: SDCA: Add some initial IRQ handlers
ASoC: SDCA: Kconfig/Makefile fixups
ASoC: SDCA: Pull HID and IRQ into the primary SDCA module
ASoC: SDCA: Fix off by one error in IRQ bound check
ASoC: SDCA: Avoid use of uninitialised local name variable
ASoC: SDCA: Update memory allocations to zero initialise
ASoC: SDCA: Allow read-only controls to be deferrable
ASoC: SDCA: Remove overly chatty input pin list warning
ASoC: SDCA: Move SDCA search functions and export
ASoC: soc-dai: Add private data to snd_soc_dai
ASoC: SDCA: Add helper to add DAI constraints
ASoC: SDCA: Add a helper to get the SoundWire port number
ASoC: SDCA: Add hw_params() helper function
ASoC: SDCA: Shrink detected_mode_handler() stack frame
ASoC: SDCA: Fix implicit cast from le16
Chen Ni (1):
ASoC: tegra: AHUB: Remove unneeded semicolon
Chen-Yu Tsai (9):
ASoC: dt-bindings: Convert MT8173 AFE binding to dt-schema
ASoC: dt-bindings: mt8173-afe-pcm: Add power domain
ASoC: dt-bindings: mt8173-afe-pcm: Allow specifying reserved memory region
ASoC: dt-bindings: mt8186-afe-pcm: Allow specifying reserved memory region
ASoC: dt-bindings: mt8192-afe-pcm: Allow specifying reserved memory region
ASoC: mediatek: use reserved memory or enable buffer pre-allocation
ASoC: mediatek: mt8183-afe-pcm: Support >32 bit DMA addresses
ASoC: mediatek: mt8173-afe-pcm: use local `dev` pointer in driver callbacks
ASoC: mediatek: mt8183-afe-pcm: use local `dev` pointer in driver callbacks
ChiYuan Huang (2):
ASoC: dt-bindings: rt9123: Append RTQ9124 description
ASoC: codecs: Add support for Richtek RTQ9124
Frank Li (1):
ASoC: dt-bindings: covert mxs-audio-sgtl5000.txt to yaml format
Geert Uytterhoeven (2):
ASoC: renesas: msiof: Convert to <linux/spi/sh_msiof.h>
ASoC: img: Imagination Technologies sound should depend on MIPS
Jyri Sarha (3):
ASoC: SOF: ipc4: Add sof_ipc4_pipeline_state_str() for debugging
ASoC: SOF: ipc4-pcm: Pipe instances to dev_dbg in multi_pipeline_state()
ASoC: SOF: ipc4-pcm: Harmonize sof_ipc4_set_pipeline_state() dbg print
Krzysztof Kozlowski (20):
ASoC: codecs: Constify regmap configuration static variables
ASoC: fsl: Constify reg_default array
ASoC: codecs: wcd9335: Drop unused sido_input_src field
ASoC: codecs: wcd934x: Drop unused num_rx_port/num_tx_port fields
ASoC: codecs: wcd937x: Drop unused 'struct wcd937x_priv' fields
ASoC: codecs: wcd938x: Drop unused 'struct wcd938x_priv' fields
ASoC: codecs: wcd938x: Drop unused variant field
ASoC: codecs: wcd939x: Drop unused 'struct wcd939x_priv' fields
ASoC: codecs: wcd937x: Simplify with devm_regulator_bulk_get_enable()
ASoC: codecs: wcd938x: Simplify with devm_regulator_bulk_get_enable()
ASoC: codecs: wcd939x: Simplify with devm_regulator_bulk_get_enable()
ASoC: codecs: wcd939x: Simplify return from devm_gpiod_get() error
ASoC: dt-bindings: qcom,wcd939x: Document missing VDD_PX supply
ASoC: codecs: wcd939x: Add VDD_PX supply
ASoC: codecs: lpass: Drop unused AIF_INVALID first DAI identifier
ASoC: codecs: wcd937x: Use simple defines for chipid register value
ASoC: codecs: wcd938x: Use simple defines for chipid register value
ASoC: codecs: wcd939x: Use simple defines for chipid register value
ASoC: codecs: wcd939x: Add defines for major/minor version decoding
ASoC: dt-bindings: qcom,lpass-va-macro: Define clock-names in top-level
Kuninori Morimoto (62):
ASoC: soc-core: save ID if param was set in fmt_single_name()
ASoC: remove component->id
ASoC: hdac_hdmi: remove hdac_hdmi_jack[_port]_init()
ASoC: soc-dai: tidyup return value of snd_soc_xlate_tdm_slot_mask()
ASoC: soc-ops-test: dynamically allocate struct snd_ctl_elem_value
ASoC: ti: Standardize ASoC menu
ASoC: adi: Standardize ASoC menu
ASoC: amd: Standardize ASoC menu
ASoC: bcm: Standardize ASoC menu
ASoC: dwc: Standardize ASoC menu
ASoC: fsl: Standardize ASoC menu
ASoC: img: Standardize ASoC menu
ASoC: mxs: Standardize ASoC menu
ASoC: pxa: Standardize ASoC menu
ASoC: sti: Standardize ASoC menu
ASoC: stm: Standardize ASoC menu
ASoC: sof: Standardize ASoC menu
ASoC: au1x: Standardize ASoC menu
ASoC: sdca: Standardize ASoC menu
ASoC: sprd: Standardize ASoC menu
ASoC: qcom: Standardize ASoC menu
ASoC: meson: Standardize ASoC menu
ASoC: apple: Standardize ASoC menu
ASoC: atmel: Standardize ASoC menu
ASoC: intel: Standardize ASoC menu
ASoC: spear: Standardize ASoC menu
ASoC: sunxi: Standardize ASoC menu
ASoC: tegra: Standardize ASoC menu
ASoC: ux500: Standardize ASoC menu
ASoC: cirrus: Standardize ASoC menu
ASoC: google: Standardize ASoC menu
ASoC: jz4740: Standardize ASoC menu
ASoC: xilinx: Standardize ASoC menu
ASoC: xtensa: Standardize ASoC menu
ASoC: renesas: Standardize ASoC menu
ASoC: generic: Standardize ASoC menu
ASoC: samsung: Standardize ASoC menu
ASoC: kirkwood: Standardize ASoC menu
ASoC: loongson: Standardize ASoC menu
ASoC: mediatek: Standardize ASoC menu
ASoC: rockchip: Standardize ASoC menu
ASoC: starfive: Standardize ASoC menu
ASoC: uniphier: Standardize ASoC menu
ASoC: hisilicon: Standardize ASoC menu
ASoC: soc-dapm: remove unnecessary definition
ASoC: soc-dapm: remove EXPORT_SYMBOL_GPL() for snd_soc_dapm_free()
ASoC: soc-dapm: remove snd_soc_dapm_nc_pin[_unlocked]()
ASoC: soc-dapm: remove snd_soc_dapm_weak_routes()
ASoC: soc-dapm: reordering function definitions
ASoC: soc-dapm: reordering header definitions
ASoC: soc-dapm: use component instead of cmpnt
ASoC: soc-dapm: use common name for dapm
ASoC: soc-dapm: add prefix on dapm_mark_endpoints_dirty()
ASoC: soc-dapm: add prefix on dapm_xxx_event()
ASoC: soc-dapm: add prefix on soc_dapm_dev_attrs
ASoC: rt700: don't set dapm->bias_level
ASoC: rt715: don't set dapm->bias_level
ASoC: soc-dapm: set bias_level if snd_soc_dapm_set_bias_level() was successed
ASoC: samsung: bell: don't set dapm->bias_level directly
ASoC: samsung: speyside: don't set dapm->bias_level directly
ASoC: samsung: tobermory: don't set dapm->bias_level directly
ASoC: samsung: littlemill: don't set dapm->bias_level directly
Laurentiu Mihalcea (1):
ASoC: dt-bindings: cirrus,cs42xx8: add 'port' property
Luca Weiss (6):
ASoC: qcom: sm8250: set card driver name from match data
ASoC: qcom: sm8250: add DisplayPort Jack support
ASoC: qcom: sm8250: Add Fairphone 5 soundcard compatible
ASoC: dt-bindings: qcom,q6afe: Document q6usb subnode
ASoC: dt-bindings: qcom,sm8250: Add Fairphone 4 sound card
ASoC: qcom: sm8250: Add Fairphone 4 soundcard compatible
Mac Chiang (2):
ASoC: Intel: soc-acpi-intel-ptl-match: add support ptl-rt721-l0
ASoC: Intel: soc-acpi-intel-lnl-match: add rt1320_l12_rt714_l0 support
Maciej Strozek (1):
ASoC: SDCA: Generic interrupt support
Mark Brown (30):
ASoC: codecs: wcd93xx: Few simplifications of code and
ASoC: Intel: avs: Add rt5640 board support
Use helper function for_each_child_of_node_scoped()
ASoC: tas571x: add support for tas5753
ASoC: remove component->id
Cleanup in rockchip_sai.c
ASoC: Add Richtek RTQ9124 support
Add DisplayPort sound support for Fairphone 5
ASoC: codecs: More const and unused member cleanups
ASoC: mediatek: use reserved memory or enable
ASoC: core/topology/Intel:
ASoC: SOF: ipc4/Intel: Support for partial context
ASoC: SOF: ipc4-pcm: Harmonize set pipeline state dbg
ASoC: hdac_hdmi: Rate limit logging on connection and disconnection
ASoC: codecs: wcd93xx: Drop enums for chipid values
Add SoundWire machines for ACP7.0/ACP7.1 sof stack
ASoC: Standardize ASoC menu
ASoC: sdw_utils: generate combined spk components
ASoC: Add SDCA IRQ support and some misc fixups
Add sound card support for QCS8275
treewide: Remove redundant
ASoC: soc-dapm: cleanups
ASoC: Intel: add support for new devices
ASoC: don't set dapm->bias_level directly
ASoC: set bias_level at if
Update SDCA Kconfig
ASoC: codec: Convert to GPIO descriptors for
ASoC: convert from clk round_rate() to
SDCA Bug Fixes
Add SDCA DAI ops helpers
Pei Xiao (2):
ASOC: rockchip: fix capture stream handling in rockchip_sai_xfer_stop
ASOC: rockchip: Use helper function devm_clk_get_enabled()
Peng Fan (4):
ASoC: codec: rockchip_sai: Remove including of_gpio.h
ASoC: codec: tlv320aic32x4: Drop aic32x4_pdata usage
ASoC: codec: tlv320aic32x4: Sort headers alphabetically
ASoC: codec: tlv320aic32x4: Convert to GPIO descriptors
Peter Ujfalusi (13):
ASoC: topology: Do not call snd_soc_remove_pcm_runtime() for ignored links
ASoC: core: Check for rtd == NULL in snd_soc_remove_pcm_runtime()
ASoC: Intel: skl_hda_dsp_generic: Implement add_dai_link to filter HDMI PCMs
ASoC: Intel: sof_sdw: Implement add_dai_link to filter HDMI PCMs
ASoC: SOF: ipc4-priv: Add kernel doc for fw_context_save of sof_ipc4_fw_data
ASoC: SOF: ipc4/Intel: Add support for library restore firmware functionality
ASoC: SOF: ipc4-pcm: Look for best matching hw_config for SSP
ASoC: SOF: pcm: Remove local create_page_table() wrapper function
ASoC: SOF: topology: Parse the dapm_widget_tokens in case of DSPless mode
ASoC: SOF: pcm: Reverse check for prepared stream in sof_pcm_hw_params()
ASoC: SOF: Intel: hda: Do not probe Soundwire in nocodec mode
ASoC: SOF: ipc4-pcm: Enable delay reporting for ChainDMA streams
ASoC: sdw_utils: Add missed component_name strings for speaker amps
Prasad Kumpatla (2):
ASoC: dt-bindings: qcom,sm8250: Add QCS8275 sound card
ASoC: qcom: sc8280xp: Add support for QCS8275
Richard Fitzgerald (1):
firmware: cs_dsp: Remove unused struct list_head from cs_dsp_coeff_ctl
Rob Herring (Arm) (1):
ASoC: Use of_reserved_mem_region_to_resource() for "memory-region"
Sachin Mokashi (1):
ASoC: Intel: Replace deprecated strcpy() with strscpy()
Sakari Ailus (11):
PM: runtime: Document return values of suspend-related API functions
PM: runtime: Mark last busy stamp in pm_runtime_put_autosuspend()
PM: runtime: Mark last busy stamp in pm_runtime_put_sync_autosuspend()
PM: runtime: Mark last busy stamp in pm_runtime_autosuspend()
PM: runtime: Mark last busy stamp in pm_request_autosuspend()
Documentation: PM: *_autosuspend() functions update last busy time
ASoC: atmel: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: codecs: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: Intel: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: component: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls
Seppo Ingalsuo (1):
ASoC: SOF: ipc4-topology: Add load of ASRC component
Shenghao Ding (2):
ASoC: tas2781: Drop the unnecessary symbol imply
ASoC: tas2781: Move the "include linux/debugfs.h" into tas2781.h
Shengjiu Wang (4):
ASoC: wm8524: enable constraints when sysclk is configured.
ASoC: fsl_mqs: Distinguish different modules by system manager indices
ASoC: fsl_mqs: rename system manager indices for i.MX95
ASoC: fsl-asoc-card: add sysclk_ratio for calculate sysclk frequency
Shuming Fan (3):
ASoC: SDCA: add support for HIDE entity properties and HID descriptor/report
ASoC: SDCA: add a HID device for HIDE entity
ASoC: SDCA: add route by the number of input pins in MU entity
Srinivas Kandagatla (1):
ASoC: qcom: use drvdata instead of component to keep id
Stephen Rothwell (1):
ASoC: SDCA: Check devm_mutex_init() return value
Terry Cheong (1):
ASoC: hdmi-codec: use SND_JACK_AVOUT as jack status
Venkata Prasad Potturu (4):
ASoC: amd: acp: Fix pointer assignments for snd_soc_acpi_mach structures
ASoC: amd: acp: Add legacy driver support acp7.2 based platforms
ASoC: amd: acp: Enable I2S support for acp7.2 based platforms
ASoC: amd: acp: Enable acp7.2 platform based DMIC support in machine driver
Vijendar Mukunda (2):
ASoC: amd: acp: add soundwire machine for ACP7.0 and ACP7.1 sof stack
ASoC: SOF: amd: add alternate machines for ACP7.0 and ACP7.1 platforms
Weidong Wang (1):
ASoC: codecs: Add calibration function to aw88399 chip
Xinxin Wan (1):
ASoC: codecs: rt5640: Retry DEVICE_ID verification
.../devicetree/bindings/sound/cirrus,cs42xx8.yaml | 4 +
.../bindings/sound/fsl,mxs-audio-sgtl5000.yaml | 81 ++
.../bindings/sound/mediatek,mt8173-afe-pcm.yaml | 98 ++
.../devicetree/bindings/sound/mt8186-afe-pcm.yaml | 5 +
.../devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +
.../devicetree/bindings/sound/mtk-afe-pcm.txt | 45 -
.../bindings/sound/mxs-audio-sgtl5000.txt | 42 -
.../bindings/sound/qcom,lpass-va-macro.yaml | 28 +-
.../devicetree/bindings/sound/qcom,q6afe.yaml | 13 +
.../devicetree/bindings/sound/qcom,sm8250.yaml | 2 +
.../devicetree/bindings/sound/qcom,wcd939x.yaml | 3 +
.../devicetree/bindings/sound/richtek,rt9123.yaml | 9 +-
.../devicetree/bindings/sound/ti,tas57xx.yaml | 2 +
Documentation/power/runtime_pm.rst | 50 +-
MAINTAINERS | 11 +
arch/mips/configs/generic/board-marduk.config | 1 -
drivers/firmware/cirrus/cs_dsp.c | 45 +-
drivers/hid/hid-core.c | 3 +
include/linux/firmware/cirrus/cs_dsp.h | 2 -
include/linux/firmware/imx/sm.h | 20 +-
include/linux/pm_runtime.h | 187 +++-
include/sound/sdca_asoc.h | 19 +
include/sound/sdca_function.h | 71 ++
include/sound/sdca_hid.h | 25 +
include/sound/sdca_interrupts.h | 78 ++
include/sound/soc-component.h | 1 -
include/sound/soc-dai.h | 3 +
include/sound/soc-dapm.h | 236 +++--
include/sound/soc_sdw_utils.h | 1 +
include/sound/sof/ipc4/header.h | 2 +
include/sound/tas2781.h | 4 +
include/sound/tlv320aic32x4.h | 9 -
include/uapi/linux/input.h | 1 +
sound/soc/Kconfig | 8 +-
sound/soc/adi/Kconfig | 9 +-
sound/soc/amd/Kconfig | 3 +
sound/soc/amd/acp/Kconfig | 1 +
sound/soc/amd/acp/acp-i2s.c | 3 +
sound/soc/amd/acp/acp-legacy-common.c | 2 +
sound/soc/amd/acp/acp-mach-common.c | 1 +
sound/soc/amd/acp/acp-pci.c | 9 +-
sound/soc/amd/acp/acp-platform.c | 2 +
sound/soc/amd/acp/acp70.c | 1 +
sound/soc/amd/acp/acp_common.h | 1 +
sound/soc/amd/acp/amd-acp70-acpi-match.c | 12 +
sound/soc/amd/acp/amd-acpi-mach.c | 4 +-
sound/soc/amd/acp/amd.h | 8 +-
sound/soc/amd/mach-config.h | 1 +
sound/soc/apple/Kconfig | 4 +
sound/soc/atmel/Kconfig | 11 +-
sound/soc/atmel/mchp-spdifrx.c | 6 -
sound/soc/au1x/Kconfig | 4 +
sound/soc/bcm/Kconfig | 4 +
sound/soc/cirrus/Kconfig | 3 +
sound/soc/codecs/Kconfig | 12 +-
sound/soc/codecs/Makefile | 4 +-
sound/soc/codecs/arizona-jack.c | 2 -
sound/soc/codecs/aw88395/aw88395_device.h | 21 +
sound/soc/codecs/aw88399.c | 440 ++++++++-
sound/soc/codecs/aw88399.h | 34 +
sound/soc/codecs/cros_ec_codec.c | 30 +-
sound/soc/codecs/cs35l36.c | 2 +-
sound/soc/codecs/cs35l41.c | 2 -
sound/soc/codecs/cs35l45.c | 1 -
sound/soc/codecs/cs35l56-sdw.c | 1 -
sound/soc/codecs/cs35l56.c | 1 -
sound/soc/codecs/cs42l42.c | 1 -
sound/soc/codecs/cs42l43-jack.c | 5 -
sound/soc/codecs/cs42l43.c | 2 -
sound/soc/codecs/cs48l32.c | 1 -
sound/soc/codecs/da7218.c | 2 +-
sound/soc/codecs/da7219.c | 68 +-
sound/soc/codecs/es8375.c | 2 +-
sound/soc/codecs/hda.c | 3 -
sound/soc/codecs/hdac_hdmi.c | 307 +-----
sound/soc/codecs/hdac_hdmi.h | 10 -
sound/soc/codecs/hdmi-codec.c | 6 +-
sound/soc/codecs/lpass-rx-macro.c | 1 -
sound/soc/codecs/lpass-tx-macro.c | 1 -
sound/soc/codecs/lpass-va-macro.c | 1 -
sound/soc/codecs/lpass-wsa-macro.c | 1 -
sound/soc/codecs/max98363.c | 3 +-
sound/soc/codecs/max98373-i2c.c | 2 +-
sound/soc/codecs/max98373-sdw.c | 3 +-
sound/soc/codecs/max98388.c | 2 +-
sound/soc/codecs/max98390.c | 2 +-
sound/soc/codecs/max98396.c | 4 +-
sound/soc/codecs/max98504.c | 2 +-
sound/soc/codecs/max98520.c | 2 +-
sound/soc/codecs/max98927.c | 2 +-
sound/soc/codecs/rt1017-sdca-sdw.c | 1 -
sound/soc/codecs/rt1308-sdw.c | 1 -
sound/soc/codecs/rt1316-sdw.c | 1 -
sound/soc/codecs/rt1318-sdw.c | 1 -
sound/soc/codecs/rt1320-sdw.c | 1 -
sound/soc/codecs/rt5640.c | 43 +-
sound/soc/codecs/rt5640.h | 6 +-
sound/soc/codecs/rt5682-sdw.c | 1 -
sound/soc/codecs/rt5682.c | 26 +-
sound/soc/codecs/rt5682s.c | 26 +-
sound/soc/codecs/rt700.c | 4 +-
sound/soc/codecs/rt711-sdca.c | 2 -
sound/soc/codecs/rt711.c | 2 -
sound/soc/codecs/rt712-sdca-dmic.c | 1 -
sound/soc/codecs/rt712-sdca.c | 2 -
sound/soc/codecs/rt715-sdca.c | 1 -
sound/soc/codecs/rt715.c | 3 +-
sound/soc/codecs/rt721-sdca.c | 2 -
sound/soc/codecs/rt722-sdca-sdw.c | 2 +-
sound/soc/codecs/rt722-sdca.c | 2 -
sound/soc/codecs/rt9123.c | 3 -
sound/soc/codecs/rtq9124.c | 543 +++++++++++
sound/soc/codecs/tas2552.c | 1 -
sound/soc/codecs/tas2781-i2c.c | 3 -
sound/soc/codecs/tas571x.c | 52 +
sound/soc/codecs/tlv320aic32x4.c | 53 +-
sound/soc/codecs/wcd-mbhc-v2.c | 2 -
sound/soc/codecs/wcd9335.c | 5 -
sound/soc/codecs/wcd934x.c | 4 -
sound/soc/codecs/wcd937x.c | 38 +-
sound/soc/codecs/wcd937x.h | 1 -
sound/soc/codecs/wcd938x.c | 64 +-
sound/soc/codecs/wcd939x.c | 69 +-
sound/soc/codecs/wm8524.c | 55 +-
sound/soc/codecs/wsa881x.c | 5 +-
sound/soc/codecs/wsa883x.c | 3 +-
sound/soc/codecs/wsa884x.c | 3 +-
sound/soc/dwc/Kconfig | 3 +
sound/soc/fsl/Kconfig | 2 +-
sound/soc/fsl/fsl-asoc-card.c | 13 +-
sound/soc/fsl/fsl_asrc.c | 2 +-
sound/soc/fsl/fsl_mqs.c | 11 +-
sound/soc/fsl/fsl_sai.c | 4 +-
sound/soc/fsl/imx-card.c | 13 +-
sound/soc/generic/Kconfig | 4 +
sound/soc/google/Kconfig | 3 +
sound/soc/hisilicon/Kconfig | 4 +
sound/soc/img/Kconfig | 14 +-
sound/soc/intel/Kconfig | 4 +
sound/soc/intel/atom/sst/sst_pvt.c | 1 -
sound/soc/intel/avs/board_selection.c | 27 +
sound/soc/intel/avs/boards/Kconfig | 12 +
sound/soc/intel/avs/boards/Makefile | 2 +
sound/soc/intel/avs/boards/rt5640.c | 270 ++++++
sound/soc/intel/avs/core.c | 1 -
sound/soc/intel/avs/debugfs.c | 2 -
sound/soc/intel/avs/ipc.c | 1 -
sound/soc/intel/avs/pcm.c | 1 -
sound/soc/intel/boards/cht_bsw_rt5672.c | 3 +-
sound/soc/intel/boards/skl_hda_dsp_generic.c | 13 +
sound/soc/intel/boards/sof_es8336.c | 10 +
sound/soc/intel/boards/sof_rt5682.c | 7 +
sound/soc/intel/boards/sof_sdw.c | 14 +
sound/soc/intel/catpt/pcm.c | 6 -
sound/soc/intel/catpt/sysfs.c | 1 -
sound/soc/intel/common/soc-acpi-intel-lnl-match.c | 34 +
sound/soc/intel/common/soc-acpi-intel-ptl-match.c | 57 ++
sound/soc/jz4740/Kconfig | 4 +
sound/soc/kirkwood/Kconfig | 3 +
sound/soc/loongson/Kconfig | 2 +-
sound/soc/mediatek/Kconfig | 4 +
.../soc/mediatek/common/mtk-afe-platform-driver.c | 4 +-
sound/soc/mediatek/common/mtk-base-afe.h | 1 +
sound/soc/mediatek/mt8173/mt8173-afe-pcm.c | 66 +-
sound/soc/mediatek/mt8183/mt8183-afe-pcm.c | 56 +-
sound/soc/mediatek/mt8186/mt8186-afe-pcm.c | 7 +
sound/soc/mediatek/mt8188/mt8188-mt6359.c | 4 +-
sound/soc/mediatek/mt8192/mt8192-afe-pcm.c | 7 +
sound/soc/meson/Kconfig | 2 +-
sound/soc/meson/axg-card.c | 3 +-
sound/soc/meson/meson-card-utils.c | 16 +-
sound/soc/mxs/Kconfig | 2 +-
sound/soc/pxa/Kconfig | 4 +
sound/soc/qcom/Kconfig | 2 +-
sound/soc/qcom/lpass-platform.c | 27 +-
sound/soc/qcom/qdsp6/q6dsp-lpass-clocks.c | 8 +-
sound/soc/qcom/sc8280xp.c | 1 +
sound/soc/qcom/sm8250.c | 28 +-
sound/soc/renesas/Kconfig | 2 +-
sound/soc/renesas/rcar/core.c | 35 +-
sound/soc/renesas/rcar/ctu.c | 8 +-
sound/soc/renesas/rcar/dma.c | 4 +-
sound/soc/renesas/rcar/dvc.c | 8 +-
sound/soc/renesas/rcar/mix.c | 8 +-
sound/soc/renesas/rcar/msiof.c | 94 +-
sound/soc/renesas/rcar/src.c | 10 +-
sound/soc/renesas/rcar/ssi.c | 18 +-
sound/soc/renesas/rcar/ssiu.c | 7 +-
sound/soc/rockchip/Kconfig | 23 +-
sound/soc/rockchip/rockchip_sai.c | 52 +-
sound/soc/samsung/Kconfig | 2 +-
sound/soc/samsung/bells.c | 2 -
sound/soc/samsung/littlemill.c | 2 -
sound/soc/samsung/speyside.c | 2 -
sound/soc/samsung/tobermory.c | 2 -
sound/soc/sdca/Kconfig | 20 +
sound/soc/sdca/Makefile | 6 +-
sound/soc/sdca/sdca_asoc.c | 469 +++++++--
sound/soc/sdca/sdca_functions.c | 165 +++-
sound/soc/sdca/sdca_hid.c | 127 +++
sound/soc/sdca/sdca_interrupts.c | 444 +++++++++
sound/soc/sdw_utils/soc_sdw_cs_amp.c | 10 -
sound/soc/sdw_utils/soc_sdw_maxim.c | 9 -
sound/soc/sdw_utils/soc_sdw_rt_amp.c | 6 -
sound/soc/sdw_utils/soc_sdw_rt_mf_sdca.c | 7 -
sound/soc/sdw_utils/soc_sdw_utils.c | 38 +
sound/soc/soc-component.c | 1 -
sound/soc/soc-core.c | 25 +-
sound/soc/soc-dai.c | 16 +-
sound/soc/soc-dapm.c | 1018 +++++++++-----------
sound/soc/soc-ops-test.c | 29 +-
sound/soc/soc-ops.c | 26 +-
sound/soc/soc-topology.c | 7 +-
sound/soc/sof/Kconfig | 2 +-
sound/soc/sof/amd/pci-acp70.c | 1 +
sound/soc/sof/control.c | 1 -
sound/soc/sof/debug.c | 1 -
sound/soc/sof/imx/imx-common.c | 36 +-
sound/soc/sof/intel/hda-loader.c | 7 +-
sound/soc/sof/intel/hda.c | 5 +
sound/soc/sof/ipc3-dtrace.c | 1 -
sound/soc/sof/ipc4-loader.c | 7 +-
sound/soc/sof/ipc4-pcm.c | 137 ++-
sound/soc/sof/ipc4-priv.h | 6 +
sound/soc/sof/ipc4-topology.c | 94 +-
sound/soc/sof/ipc4-topology.h | 25 +
sound/soc/sof/ipc4.c | 39 +-
sound/soc/sof/mediatek/mt8186/mt8186.c | 11 +-
sound/soc/sof/mediatek/mt8195/mt8195.c | 11 +-
sound/soc/sof/pcm.c | 27 +-
sound/soc/sof/sof-client-ipc-flood-test.c | 1 -
sound/soc/sof/sof-client-ipc-kernel-injector.c | 1 -
sound/soc/sof/sof-client-ipc-msg-injector.c | 1 -
sound/soc/sof/sof-client-probes.c | 3 -
sound/soc/sof/topology.c | 15 +-
sound/soc/spear/Kconfig | 4 +
sound/soc/sprd/Kconfig | 4 +
sound/soc/starfive/Kconfig | 12 +-
sound/soc/sti/Kconfig | 2 +-
sound/soc/stm/Kconfig | 2 +-
sound/soc/stm/stm32_i2s.c | 21 +-
sound/soc/stm/stm32_sai_sub.c | 14 +-
sound/soc/sunxi/Kconfig | 2 +-
sound/soc/tegra/Kconfig | 4 +
sound/soc/tegra/tegra210_ahub.c | 2 +-
sound/soc/ti/Kconfig | 2 +-
sound/soc/uniphier/Kconfig | 14 +-
sound/soc/ux500/Kconfig | 2 +-
sound/soc/xilinx/Kconfig | 4 +
sound/soc/xtensa/Kconfig | 4 +
250 files changed, 4999 insertions(+), 2236 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/fsl,mxs-audio-sgtl5000.yaml
create mode 100644 Documentation/devicetree/bindings/sound/mediatek,mt8173-afe-pcm.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/mtk-afe-pcm.txt
delete mode 100644 Documentation/devicetree/bindings/sound/mxs-audio-sgtl5000.txt
create mode 100644 include/sound/sdca_hid.h
create mode 100644 include/sound/sdca_interrupts.h
delete mode 100644 sound/soc/codecs/hdac_hdmi.h
create mode 100644 sound/soc/codecs/rtq9124.c
create mode 100644 sound/soc/intel/avs/boards/rt5640.c
create mode 100644 sound/soc/sdca/sdca_hid.c
create mode 100644 sound/soc/sdca/sdca_interrupts.c
2
1
The following changes since commit 347e9f5043c89695b01e66b3ed111755afcf1911:
Linux 6.16-rc6 (2025-07-13 14:25:58 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git tags/asoc-v6.18
for you to fetch changes up to c58c35ef6ae62e36927f506a5afc66610b7261d9:
ASoC: qcom: sm8250: Add Fairphone 4 soundcard compatible (2025-07-23 15:09:30 +0100)
----------------------------------------------------------------
ASoC: Updates for v6.18
There's a few new drivers here and quite a lot of cleanup work from
Morimoto-san but generally this has been quite a quiet release,
resulting in a fairly small diffstat. Highlights include:
- Refactoring of the Kconfig menus to be hopefully more consistant and
easier to navigate.
- Refactoring of the DAPM code, mainly hiding functionality that
doesn't need to be exposed to drivers.
- Removal of the unused upstream weak paths DAPM functionality.
- Further work on the generic handling for SoundWire SDCA devices.
- Cleanups of our usage of the PM autosuspend functions, this pulls in
some PM core changes on a shared tag.
- Support for AMD ACP7.2 and SoundWire on ACP 7.1, Fairphone 4 & 5,
various Intel systems, Qualcomm QCS8275, Richtek RTQ9124 and TI TAS5753.
----------------------------------------------------------------
Ai Chao (3):
ASoC: renesas: Use helper function for_each_child_of_node_scoped()
ASoC: meson: Use helper function for_each_child_of_node_scoped()
ASoC: imx-card: Use helper function for_each_child_of_node_scoped()
Alexander Stein (1):
ASoC: codec: tlv320aic32x4: Fix reset GPIO check
Arnd Bergmann (2):
ASoC: ops: dynamically allocate struct snd_ctl_elem_value
ASoC: SDCA: fix HID dependency
Balamurugan C (3):
ASoC: Intel: soc-acpi: Add entry for sof_es8336 in PTL match table.
ASoC: Intel: soc-acpi: Add entry for HDMI_In capture support in PTL match table
ASoC: Intel: sof_rt5682: Add HDMI-In capture with rt5682 support for PTL.
Bard Liao (2):
ASoC: sdw_utils: add component_name string to dai_info
ASoC: sdw_utils: generate combined spk components string
Bram Vlerick (2):
ASoC: tas571x: add support for tas5753
ASoC: dt-bindings: tas57xx: add tas5753 compatibility
Brian Masney (6):
ASoC: codecs: da7219: convert from round_rate() to determine_rate()
ASoC: codecs: rt5682: convert from round_rate() to determine_rate()
ASoC: codecs: rt5682s: convert from round_rate() to determine_rate()
ASoC: qcom: qdsp6: q6dsp-lpass-clocks: convert from round_rate() to determine_rate()
ASoC: stm: stm32_i2s: convert from round_rate() to determine_rate()
ASoC: stm: stm32_sai_sub: convert from round_rate() to determine_rate()
Cezary Rojewski (2):
ASoC: codecs: rt5640: Drop dummy register names
ASoC: Intel: avs: Add rt5640 machine board
Charles Keepax (21):
HID: core: Add bus define for SoundWire bus
MAINTAINERS: Add SDCA maintainers entry
ASoC: SDCA: Add missing default in switch in entity_pde_event()
ASoC: SDCA: Fixup some kernel doc errors
ASoC: SDCA: Minor selected/detected mode control fixups
ASoC: SDCA: Add flag for unused IRQs
ASoC: SDCA: Add some initial IRQ handlers
ASoC: SDCA: Kconfig/Makefile fixups
ASoC: SDCA: Pull HID and IRQ into the primary SDCA module
ASoC: SDCA: Fix off by one error in IRQ bound check
ASoC: SDCA: Avoid use of uninitialised local name variable
ASoC: SDCA: Update memory allocations to zero initialise
ASoC: SDCA: Allow read-only controls to be deferrable
ASoC: SDCA: Remove overly chatty input pin list warning
ASoC: SDCA: Move SDCA search functions and export
ASoC: soc-dai: Add private data to snd_soc_dai
ASoC: SDCA: Add helper to add DAI constraints
ASoC: SDCA: Add a helper to get the SoundWire port number
ASoC: SDCA: Add hw_params() helper function
ASoC: SDCA: Shrink detected_mode_handler() stack frame
ASoC: SDCA: Fix implicit cast from le16
Chen Ni (1):
ASoC: tegra: AHUB: Remove unneeded semicolon
Chen-Yu Tsai (9):
ASoC: dt-bindings: Convert MT8173 AFE binding to dt-schema
ASoC: dt-bindings: mt8173-afe-pcm: Add power domain
ASoC: dt-bindings: mt8173-afe-pcm: Allow specifying reserved memory region
ASoC: dt-bindings: mt8186-afe-pcm: Allow specifying reserved memory region
ASoC: dt-bindings: mt8192-afe-pcm: Allow specifying reserved memory region
ASoC: mediatek: use reserved memory or enable buffer pre-allocation
ASoC: mediatek: mt8183-afe-pcm: Support >32 bit DMA addresses
ASoC: mediatek: mt8173-afe-pcm: use local `dev` pointer in driver callbacks
ASoC: mediatek: mt8183-afe-pcm: use local `dev` pointer in driver callbacks
ChiYuan Huang (2):
ASoC: dt-bindings: rt9123: Append RTQ9124 description
ASoC: codecs: Add support for Richtek RTQ9124
Frank Li (1):
ASoC: dt-bindings: covert mxs-audio-sgtl5000.txt to yaml format
Geert Uytterhoeven (2):
ASoC: renesas: msiof: Convert to <linux/spi/sh_msiof.h>
ASoC: img: Imagination Technologies sound should depend on MIPS
Jyri Sarha (3):
ASoC: SOF: ipc4: Add sof_ipc4_pipeline_state_str() for debugging
ASoC: SOF: ipc4-pcm: Pipe instances to dev_dbg in multi_pipeline_state()
ASoC: SOF: ipc4-pcm: Harmonize sof_ipc4_set_pipeline_state() dbg print
Krzysztof Kozlowski (20):
ASoC: codecs: Constify regmap configuration static variables
ASoC: fsl: Constify reg_default array
ASoC: codecs: wcd9335: Drop unused sido_input_src field
ASoC: codecs: wcd934x: Drop unused num_rx_port/num_tx_port fields
ASoC: codecs: wcd937x: Drop unused 'struct wcd937x_priv' fields
ASoC: codecs: wcd938x: Drop unused 'struct wcd938x_priv' fields
ASoC: codecs: wcd938x: Drop unused variant field
ASoC: codecs: wcd939x: Drop unused 'struct wcd939x_priv' fields
ASoC: codecs: wcd937x: Simplify with devm_regulator_bulk_get_enable()
ASoC: codecs: wcd938x: Simplify with devm_regulator_bulk_get_enable()
ASoC: codecs: wcd939x: Simplify with devm_regulator_bulk_get_enable()
ASoC: codecs: wcd939x: Simplify return from devm_gpiod_get() error
ASoC: dt-bindings: qcom,wcd939x: Document missing VDD_PX supply
ASoC: codecs: wcd939x: Add VDD_PX supply
ASoC: codecs: lpass: Drop unused AIF_INVALID first DAI identifier
ASoC: codecs: wcd937x: Use simple defines for chipid register value
ASoC: codecs: wcd938x: Use simple defines for chipid register value
ASoC: codecs: wcd939x: Use simple defines for chipid register value
ASoC: codecs: wcd939x: Add defines for major/minor version decoding
ASoC: dt-bindings: qcom,lpass-va-macro: Define clock-names in top-level
Kuninori Morimoto (62):
ASoC: soc-core: save ID if param was set in fmt_single_name()
ASoC: remove component->id
ASoC: hdac_hdmi: remove hdac_hdmi_jack[_port]_init()
ASoC: soc-dai: tidyup return value of snd_soc_xlate_tdm_slot_mask()
ASoC: soc-ops-test: dynamically allocate struct snd_ctl_elem_value
ASoC: ti: Standardize ASoC menu
ASoC: adi: Standardize ASoC menu
ASoC: amd: Standardize ASoC menu
ASoC: bcm: Standardize ASoC menu
ASoC: dwc: Standardize ASoC menu
ASoC: fsl: Standardize ASoC menu
ASoC: img: Standardize ASoC menu
ASoC: mxs: Standardize ASoC menu
ASoC: pxa: Standardize ASoC menu
ASoC: sti: Standardize ASoC menu
ASoC: stm: Standardize ASoC menu
ASoC: sof: Standardize ASoC menu
ASoC: au1x: Standardize ASoC menu
ASoC: sdca: Standardize ASoC menu
ASoC: sprd: Standardize ASoC menu
ASoC: qcom: Standardize ASoC menu
ASoC: meson: Standardize ASoC menu
ASoC: apple: Standardize ASoC menu
ASoC: atmel: Standardize ASoC menu
ASoC: intel: Standardize ASoC menu
ASoC: spear: Standardize ASoC menu
ASoC: sunxi: Standardize ASoC menu
ASoC: tegra: Standardize ASoC menu
ASoC: ux500: Standardize ASoC menu
ASoC: cirrus: Standardize ASoC menu
ASoC: google: Standardize ASoC menu
ASoC: jz4740: Standardize ASoC menu
ASoC: xilinx: Standardize ASoC menu
ASoC: xtensa: Standardize ASoC menu
ASoC: renesas: Standardize ASoC menu
ASoC: generic: Standardize ASoC menu
ASoC: samsung: Standardize ASoC menu
ASoC: kirkwood: Standardize ASoC menu
ASoC: loongson: Standardize ASoC menu
ASoC: mediatek: Standardize ASoC menu
ASoC: rockchip: Standardize ASoC menu
ASoC: starfive: Standardize ASoC menu
ASoC: uniphier: Standardize ASoC menu
ASoC: hisilicon: Standardize ASoC menu
ASoC: soc-dapm: remove unnecessary definition
ASoC: soc-dapm: remove EXPORT_SYMBOL_GPL() for snd_soc_dapm_free()
ASoC: soc-dapm: remove snd_soc_dapm_nc_pin[_unlocked]()
ASoC: soc-dapm: remove snd_soc_dapm_weak_routes()
ASoC: soc-dapm: reordering function definitions
ASoC: soc-dapm: reordering header definitions
ASoC: soc-dapm: use component instead of cmpnt
ASoC: soc-dapm: use common name for dapm
ASoC: soc-dapm: add prefix on dapm_mark_endpoints_dirty()
ASoC: soc-dapm: add prefix on dapm_xxx_event()
ASoC: soc-dapm: add prefix on soc_dapm_dev_attrs
ASoC: rt700: don't set dapm->bias_level
ASoC: rt715: don't set dapm->bias_level
ASoC: soc-dapm: set bias_level if snd_soc_dapm_set_bias_level() was successed
ASoC: samsung: bell: don't set dapm->bias_level directly
ASoC: samsung: speyside: don't set dapm->bias_level directly
ASoC: samsung: tobermory: don't set dapm->bias_level directly
ASoC: samsung: littlemill: don't set dapm->bias_level directly
Laurentiu Mihalcea (1):
ASoC: dt-bindings: cirrus,cs42xx8: add 'port' property
Luca Weiss (6):
ASoC: qcom: sm8250: set card driver name from match data
ASoC: qcom: sm8250: add DisplayPort Jack support
ASoC: qcom: sm8250: Add Fairphone 5 soundcard compatible
ASoC: dt-bindings: qcom,q6afe: Document q6usb subnode
ASoC: dt-bindings: qcom,sm8250: Add Fairphone 4 sound card
ASoC: qcom: sm8250: Add Fairphone 4 soundcard compatible
Mac Chiang (2):
ASoC: Intel: soc-acpi-intel-ptl-match: add support ptl-rt721-l0
ASoC: Intel: soc-acpi-intel-lnl-match: add rt1320_l12_rt714_l0 support
Maciej Strozek (1):
ASoC: SDCA: Generic interrupt support
Mark Brown (30):
ASoC: codecs: wcd93xx: Few simplifications of code and
ASoC: Intel: avs: Add rt5640 board support
Use helper function for_each_child_of_node_scoped()
ASoC: tas571x: add support for tas5753
ASoC: remove component->id
Cleanup in rockchip_sai.c
ASoC: Add Richtek RTQ9124 support
Add DisplayPort sound support for Fairphone 5
ASoC: codecs: More const and unused member cleanups
ASoC: mediatek: use reserved memory or enable
ASoC: core/topology/Intel:
ASoC: SOF: ipc4/Intel: Support for partial context
ASoC: SOF: ipc4-pcm: Harmonize set pipeline state dbg
ASoC: hdac_hdmi: Rate limit logging on connection and disconnection
ASoC: codecs: wcd93xx: Drop enums for chipid values
Add SoundWire machines for ACP7.0/ACP7.1 sof stack
ASoC: Standardize ASoC menu
ASoC: sdw_utils: generate combined spk components
ASoC: Add SDCA IRQ support and some misc fixups
Add sound card support for QCS8275
treewide: Remove redundant
ASoC: soc-dapm: cleanups
ASoC: Intel: add support for new devices
ASoC: don't set dapm->bias_level directly
ASoC: set bias_level at if
Update SDCA Kconfig
ASoC: codec: Convert to GPIO descriptors for
ASoC: convert from clk round_rate() to
SDCA Bug Fixes
Add SDCA DAI ops helpers
Pei Xiao (2):
ASOC: rockchip: fix capture stream handling in rockchip_sai_xfer_stop
ASOC: rockchip: Use helper function devm_clk_get_enabled()
Peng Fan (4):
ASoC: codec: rockchip_sai: Remove including of_gpio.h
ASoC: codec: tlv320aic32x4: Drop aic32x4_pdata usage
ASoC: codec: tlv320aic32x4: Sort headers alphabetically
ASoC: codec: tlv320aic32x4: Convert to GPIO descriptors
Peter Ujfalusi (13):
ASoC: topology: Do not call snd_soc_remove_pcm_runtime() for ignored links
ASoC: core: Check for rtd == NULL in snd_soc_remove_pcm_runtime()
ASoC: Intel: skl_hda_dsp_generic: Implement add_dai_link to filter HDMI PCMs
ASoC: Intel: sof_sdw: Implement add_dai_link to filter HDMI PCMs
ASoC: SOF: ipc4-priv: Add kernel doc for fw_context_save of sof_ipc4_fw_data
ASoC: SOF: ipc4/Intel: Add support for library restore firmware functionality
ASoC: SOF: ipc4-pcm: Look for best matching hw_config for SSP
ASoC: SOF: pcm: Remove local create_page_table() wrapper function
ASoC: SOF: topology: Parse the dapm_widget_tokens in case of DSPless mode
ASoC: SOF: pcm: Reverse check for prepared stream in sof_pcm_hw_params()
ASoC: SOF: Intel: hda: Do not probe Soundwire in nocodec mode
ASoC: SOF: ipc4-pcm: Enable delay reporting for ChainDMA streams
ASoC: sdw_utils: Add missed component_name strings for speaker amps
Prasad Kumpatla (2):
ASoC: dt-bindings: qcom,sm8250: Add QCS8275 sound card
ASoC: qcom: sc8280xp: Add support for QCS8275
Richard Fitzgerald (1):
firmware: cs_dsp: Remove unused struct list_head from cs_dsp_coeff_ctl
Rob Herring (Arm) (1):
ASoC: Use of_reserved_mem_region_to_resource() for "memory-region"
Sachin Mokashi (1):
ASoC: Intel: Replace deprecated strcpy() with strscpy()
Sakari Ailus (11):
PM: runtime: Document return values of suspend-related API functions
PM: runtime: Mark last busy stamp in pm_runtime_put_autosuspend()
PM: runtime: Mark last busy stamp in pm_runtime_put_sync_autosuspend()
PM: runtime: Mark last busy stamp in pm_runtime_autosuspend()
PM: runtime: Mark last busy stamp in pm_request_autosuspend()
Documentation: PM: *_autosuspend() functions update last busy time
ASoC: atmel: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: codecs: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: Intel: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: component: Remove redundant pm_runtime_mark_last_busy() calls
ASoC: SOF: Remove redundant pm_runtime_mark_last_busy() calls
Seppo Ingalsuo (1):
ASoC: SOF: ipc4-topology: Add load of ASRC component
Shenghao Ding (2):
ASoC: tas2781: Drop the unnecessary symbol imply
ASoC: tas2781: Move the "include linux/debugfs.h" into tas2781.h
Shengjiu Wang (4):
ASoC: wm8524: enable constraints when sysclk is configured.
ASoC: fsl_mqs: Distinguish different modules by system manager indices
ASoC: fsl_mqs: rename system manager indices for i.MX95
ASoC: fsl-asoc-card: add sysclk_ratio for calculate sysclk frequency
Shuming Fan (3):
ASoC: SDCA: add support for HIDE entity properties and HID descriptor/report
ASoC: SDCA: add a HID device for HIDE entity
ASoC: SDCA: add route by the number of input pins in MU entity
Srinivas Kandagatla (1):
ASoC: qcom: use drvdata instead of component to keep id
Stephen Rothwell (1):
ASoC: SDCA: Check devm_mutex_init() return value
Terry Cheong (1):
ASoC: hdmi-codec: use SND_JACK_AVOUT as jack status
Venkata Prasad Potturu (4):
ASoC: amd: acp: Fix pointer assignments for snd_soc_acpi_mach structures
ASoC: amd: acp: Add legacy driver support acp7.2 based platforms
ASoC: amd: acp: Enable I2S support for acp7.2 based platforms
ASoC: amd: acp: Enable acp7.2 platform based DMIC support in machine driver
Vijendar Mukunda (2):
ASoC: amd: acp: add soundwire machine for ACP7.0 and ACP7.1 sof stack
ASoC: SOF: amd: add alternate machines for ACP7.0 and ACP7.1 platforms
Weidong Wang (1):
ASoC: codecs: Add calibration function to aw88399 chip
Xinxin Wan (1):
ASoC: codecs: rt5640: Retry DEVICE_ID verification
.../devicetree/bindings/sound/cirrus,cs42xx8.yaml | 4 +
.../bindings/sound/fsl,mxs-audio-sgtl5000.yaml | 81 ++
.../bindings/sound/mediatek,mt8173-afe-pcm.yaml | 98 ++
.../devicetree/bindings/sound/mt8186-afe-pcm.yaml | 5 +
.../devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +
.../devicetree/bindings/sound/mtk-afe-pcm.txt | 45 -
.../bindings/sound/mxs-audio-sgtl5000.txt | 42 -
.../bindings/sound/qcom,lpass-va-macro.yaml | 28 +-
.../devicetree/bindings/sound/qcom,q6afe.yaml | 13 +
.../devicetree/bindings/sound/qcom,sm8250.yaml | 2 +
.../devicetree/bindings/sound/qcom,wcd939x.yaml | 3 +
.../devicetree/bindings/sound/richtek,rt9123.yaml | 9 +-
.../devicetree/bindings/sound/ti,tas57xx.yaml | 2 +
Documentation/power/runtime_pm.rst | 50 +-
MAINTAINERS | 11 +
arch/mips/configs/generic/board-marduk.config | 1 -
drivers/firmware/cirrus/cs_dsp.c | 45 +-
drivers/hid/hid-core.c | 3 +
include/linux/firmware/cirrus/cs_dsp.h | 2 -
include/linux/firmware/imx/sm.h | 20 +-
include/linux/pm_runtime.h | 187 +++-
include/sound/sdca_asoc.h | 19 +
include/sound/sdca_function.h | 71 ++
include/sound/sdca_hid.h | 25 +
include/sound/sdca_interrupts.h | 78 ++
include/sound/soc-component.h | 1 -
include/sound/soc-dai.h | 3 +
include/sound/soc-dapm.h | 236 +++--
include/sound/soc_sdw_utils.h | 1 +
include/sound/sof/ipc4/header.h | 2 +
include/sound/tas2781.h | 4 +
include/sound/tlv320aic32x4.h | 9 -
include/uapi/linux/input.h | 1 +
sound/soc/Kconfig | 8 +-
sound/soc/adi/Kconfig | 9 +-
sound/soc/amd/Kconfig | 3 +
sound/soc/amd/acp/Kconfig | 1 +
sound/soc/amd/acp/acp-i2s.c | 3 +
sound/soc/amd/acp/acp-legacy-common.c | 2 +
sound/soc/amd/acp/acp-mach-common.c | 1 +
sound/soc/amd/acp/acp-pci.c | 9 +-
sound/soc/amd/acp/acp-platform.c | 2 +
sound/soc/amd/acp/acp70.c | 1 +
sound/soc/amd/acp/acp_common.h | 1 +
sound/soc/amd/acp/amd-acp70-acpi-match.c | 12 +
sound/soc/amd/acp/amd-acpi-mach.c | 4 +-
sound/soc/amd/acp/amd.h | 8 +-
sound/soc/amd/mach-config.h | 1 +
sound/soc/apple/Kconfig | 4 +
sound/soc/atmel/Kconfig | 11 +-
sound/soc/atmel/mchp-spdifrx.c | 6 -
sound/soc/au1x/Kconfig | 4 +
sound/soc/bcm/Kconfig | 4 +
sound/soc/cirrus/Kconfig | 3 +
sound/soc/codecs/Kconfig | 12 +-
sound/soc/codecs/Makefile | 4 +-
sound/soc/codecs/arizona-jack.c | 2 -
sound/soc/codecs/aw88395/aw88395_device.h | 21 +
sound/soc/codecs/aw88399.c | 440 ++++++++-
sound/soc/codecs/aw88399.h | 34 +
sound/soc/codecs/cros_ec_codec.c | 30 +-
sound/soc/codecs/cs35l36.c | 2 +-
sound/soc/codecs/cs35l41.c | 2 -
sound/soc/codecs/cs35l45.c | 1 -
sound/soc/codecs/cs35l56-sdw.c | 1 -
sound/soc/codecs/cs35l56.c | 1 -
sound/soc/codecs/cs42l42.c | 1 -
sound/soc/codecs/cs42l43-jack.c | 5 -
sound/soc/codecs/cs42l43.c | 2 -
sound/soc/codecs/cs48l32.c | 1 -
sound/soc/codecs/da7218.c | 2 +-
sound/soc/codecs/da7219.c | 68 +-
sound/soc/codecs/es8375.c | 2 +-
sound/soc/codecs/hda.c | 3 -
sound/soc/codecs/hdac_hdmi.c | 307 +-----
sound/soc/codecs/hdac_hdmi.h | 10 -
sound/soc/codecs/hdmi-codec.c | 6 +-
sound/soc/codecs/lpass-rx-macro.c | 1 -
sound/soc/codecs/lpass-tx-macro.c | 1 -
sound/soc/codecs/lpass-va-macro.c | 1 -
sound/soc/codecs/lpass-wsa-macro.c | 1 -
sound/soc/codecs/max98363.c | 3 +-
sound/soc/codecs/max98373-i2c.c | 2 +-
sound/soc/codecs/max98373-sdw.c | 3 +-
sound/soc/codecs/max98388.c | 2 +-
sound/soc/codecs/max98390.c | 2 +-
sound/soc/codecs/max98396.c | 4 +-
sound/soc/codecs/max98504.c | 2 +-
sound/soc/codecs/max98520.c | 2 +-
sound/soc/codecs/max98927.c | 2 +-
sound/soc/codecs/rt1017-sdca-sdw.c | 1 -
sound/soc/codecs/rt1308-sdw.c | 1 -
sound/soc/codecs/rt1316-sdw.c | 1 -
sound/soc/codecs/rt1318-sdw.c | 1 -
sound/soc/codecs/rt1320-sdw.c | 1 -
sound/soc/codecs/rt5640.c | 43 +-
sound/soc/codecs/rt5640.h | 6 +-
sound/soc/codecs/rt5682-sdw.c | 1 -
sound/soc/codecs/rt5682.c | 26 +-
sound/soc/codecs/rt5682s.c | 26 +-
sound/soc/codecs/rt700.c | 4 +-
sound/soc/codecs/rt711-sdca.c | 2 -
sound/soc/codecs/rt711.c | 2 -
sound/soc/codecs/rt712-sdca-dmic.c | 1 -
sound/soc/codecs/rt712-sdca.c | 2 -
sound/soc/codecs/rt715-sdca.c | 1 -
sound/soc/codecs/rt715.c | 3 +-
sound/soc/codecs/rt721-sdca.c | 2 -
sound/soc/codecs/rt722-sdca-sdw.c | 2 +-
sound/soc/codecs/rt722-sdca.c | 2 -
sound/soc/codecs/rt9123.c | 3 -
sound/soc/codecs/rtq9124.c | 543 +++++++++++
sound/soc/codecs/tas2552.c | 1 -
sound/soc/codecs/tas2781-i2c.c | 3 -
sound/soc/codecs/tas571x.c | 52 +
sound/soc/codecs/tlv320aic32x4.c | 53 +-
sound/soc/codecs/wcd-mbhc-v2.c | 2 -
sound/soc/codecs/wcd9335.c | 5 -
sound/soc/codecs/wcd934x.c | 4 -
sound/soc/codecs/wcd937x.c | 38 +-
sound/soc/codecs/wcd937x.h | 1 -
sound/soc/codecs/wcd938x.c | 64 +-
sound/soc/codecs/wcd939x.c | 69 +-
sound/soc/codecs/wm8524.c | 55 +-
sound/soc/codecs/wsa881x.c | 5 +-
sound/soc/codecs/wsa883x.c | 3 +-
sound/soc/codecs/wsa884x.c | 3 +-
sound/soc/dwc/Kconfig | 3 +
sound/soc/fsl/Kconfig | 2 +-
sound/soc/fsl/fsl-asoc-card.c | 13 +-
sound/soc/fsl/fsl_asrc.c | 2 +-
sound/soc/fsl/fsl_mqs.c | 11 +-
sound/soc/fsl/fsl_sai.c | 4 +-
sound/soc/fsl/imx-card.c | 13 +-
sound/soc/generic/Kconfig | 4 +
sound/soc/google/Kconfig | 3 +
sound/soc/hisilicon/Kconfig | 4 +
sound/soc/img/Kconfig | 14 +-
sound/soc/intel/Kconfig | 4 +
sound/soc/intel/atom/sst/sst_pvt.c | 1 -
sound/soc/intel/avs/board_selection.c | 27 +
sound/soc/intel/avs/boards/Kconfig | 12 +
sound/soc/intel/avs/boards/Makefile | 2 +
sound/soc/intel/avs/boards/rt5640.c | 270 ++++++
sound/soc/intel/avs/core.c | 1 -
sound/soc/intel/avs/debugfs.c | 2 -
sound/soc/intel/avs/ipc.c | 1 -
sound/soc/intel/avs/pcm.c | 1 -
sound/soc/intel/boards/cht_bsw_rt5672.c | 3 +-
sound/soc/intel/boards/skl_hda_dsp_generic.c | 13 +
sound/soc/intel/boards/sof_es8336.c | 10 +
sound/soc/intel/boards/sof_rt5682.c | 7 +
sound/soc/intel/boards/sof_sdw.c | 14 +
sound/soc/intel/catpt/pcm.c | 6 -
sound/soc/intel/catpt/sysfs.c | 1 -
sound/soc/intel/common/soc-acpi-intel-lnl-match.c | 34 +
sound/soc/intel/common/soc-acpi-intel-ptl-match.c | 57 ++
sound/soc/jz4740/Kconfig | 4 +
sound/soc/kirkwood/Kconfig | 3 +
sound/soc/loongson/Kconfig | 2 +-
sound/soc/mediatek/Kconfig | 4 +
.../soc/mediatek/common/mtk-afe-platform-driver.c | 4 +-
sound/soc/mediatek/common/mtk-base-afe.h | 1 +
sound/soc/mediatek/mt8173/mt8173-afe-pcm.c | 66 +-
sound/soc/mediatek/mt8183/mt8183-afe-pcm.c | 56 +-
sound/soc/mediatek/mt8186/mt8186-afe-pcm.c | 7 +
sound/soc/mediatek/mt8188/mt8188-mt6359.c | 4 +-
sound/soc/mediatek/mt8192/mt8192-afe-pcm.c | 7 +
sound/soc/meson/Kconfig | 2 +-
sound/soc/meson/axg-card.c | 3 +-
sound/soc/meson/meson-card-utils.c | 16 +-
sound/soc/mxs/Kconfig | 2 +-
sound/soc/pxa/Kconfig | 4 +
sound/soc/qcom/Kconfig | 2 +-
sound/soc/qcom/lpass-platform.c | 27 +-
sound/soc/qcom/qdsp6/q6dsp-lpass-clocks.c | 8 +-
sound/soc/qcom/sc8280xp.c | 1 +
sound/soc/qcom/sm8250.c | 28 +-
sound/soc/renesas/Kconfig | 2 +-
sound/soc/renesas/rcar/core.c | 35 +-
sound/soc/renesas/rcar/ctu.c | 8 +-
sound/soc/renesas/rcar/dma.c | 4 +-
sound/soc/renesas/rcar/dvc.c | 8 +-
sound/soc/renesas/rcar/mix.c | 8 +-
sound/soc/renesas/rcar/msiof.c | 94 +-
sound/soc/renesas/rcar/src.c | 10 +-
sound/soc/renesas/rcar/ssi.c | 18 +-
sound/soc/renesas/rcar/ssiu.c | 7 +-
sound/soc/rockchip/Kconfig | 23 +-
sound/soc/rockchip/rockchip_sai.c | 52 +-
sound/soc/samsung/Kconfig | 2 +-
sound/soc/samsung/bells.c | 2 -
sound/soc/samsung/littlemill.c | 2 -
sound/soc/samsung/speyside.c | 2 -
sound/soc/samsung/tobermory.c | 2 -
sound/soc/sdca/Kconfig | 20 +
sound/soc/sdca/Makefile | 6 +-
sound/soc/sdca/sdca_asoc.c | 469 +++++++--
sound/soc/sdca/sdca_functions.c | 165 +++-
sound/soc/sdca/sdca_hid.c | 127 +++
sound/soc/sdca/sdca_interrupts.c | 444 +++++++++
sound/soc/sdw_utils/soc_sdw_cs_amp.c | 10 -
sound/soc/sdw_utils/soc_sdw_maxim.c | 9 -
sound/soc/sdw_utils/soc_sdw_rt_amp.c | 6 -
sound/soc/sdw_utils/soc_sdw_rt_mf_sdca.c | 7 -
sound/soc/sdw_utils/soc_sdw_utils.c | 38 +
sound/soc/soc-component.c | 1 -
sound/soc/soc-core.c | 25 +-
sound/soc/soc-dai.c | 16 +-
sound/soc/soc-dapm.c | 1018 +++++++++-----------
sound/soc/soc-ops-test.c | 29 +-
sound/soc/soc-ops.c | 26 +-
sound/soc/soc-topology.c | 7 +-
sound/soc/sof/Kconfig | 2 +-
sound/soc/sof/amd/pci-acp70.c | 1 +
sound/soc/sof/control.c | 1 -
sound/soc/sof/debug.c | 1 -
sound/soc/sof/imx/imx-common.c | 36 +-
sound/soc/sof/intel/hda-loader.c | 7 +-
sound/soc/sof/intel/hda.c | 5 +
sound/soc/sof/ipc3-dtrace.c | 1 -
sound/soc/sof/ipc4-loader.c | 7 +-
sound/soc/sof/ipc4-pcm.c | 137 ++-
sound/soc/sof/ipc4-priv.h | 6 +
sound/soc/sof/ipc4-topology.c | 94 +-
sound/soc/sof/ipc4-topology.h | 25 +
sound/soc/sof/ipc4.c | 39 +-
sound/soc/sof/mediatek/mt8186/mt8186.c | 11 +-
sound/soc/sof/mediatek/mt8195/mt8195.c | 11 +-
sound/soc/sof/pcm.c | 27 +-
sound/soc/sof/sof-client-ipc-flood-test.c | 1 -
sound/soc/sof/sof-client-ipc-kernel-injector.c | 1 -
sound/soc/sof/sof-client-ipc-msg-injector.c | 1 -
sound/soc/sof/sof-client-probes.c | 3 -
sound/soc/sof/topology.c | 15 +-
sound/soc/spear/Kconfig | 4 +
sound/soc/sprd/Kconfig | 4 +
sound/soc/starfive/Kconfig | 12 +-
sound/soc/sti/Kconfig | 2 +-
sound/soc/stm/Kconfig | 2 +-
sound/soc/stm/stm32_i2s.c | 21 +-
sound/soc/stm/stm32_sai_sub.c | 14 +-
sound/soc/sunxi/Kconfig | 2 +-
sound/soc/tegra/Kconfig | 4 +
sound/soc/tegra/tegra210_ahub.c | 2 +-
sound/soc/ti/Kconfig | 2 +-
sound/soc/uniphier/Kconfig | 14 +-
sound/soc/ux500/Kconfig | 2 +-
sound/soc/xilinx/Kconfig | 4 +
sound/soc/xtensa/Kconfig | 4 +
250 files changed, 4999 insertions(+), 2236 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/fsl,mxs-audio-sgtl5000.yaml
create mode 100644 Documentation/devicetree/bindings/sound/mediatek,mt8173-afe-pcm.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/mtk-afe-pcm.txt
delete mode 100644 Documentation/devicetree/bindings/sound/mxs-audio-sgtl5000.txt
create mode 100644 include/sound/sdca_hid.h
create mode 100644 include/sound/sdca_interrupts.h
delete mode 100644 sound/soc/codecs/hdac_hdmi.h
create mode 100644 sound/soc/codecs/rtq9124.c
create mode 100644 sound/soc/intel/avs/boards/rt5640.c
create mode 100644 sound/soc/sdca/sdca_hid.c
create mode 100644 sound/soc/sdca/sdca_interrupts.c
2
1
The following changes since commit 7bab1bd9fdf15b9fa7e6a4b0151deab93df3c80d:
ASoC: amd: yc: Add DMI quirk for HP Laptop 17 cp-2033dx (2025-07-16 11:50:33 +0100)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git tags/asoc-fix-v6.16-rc7
for you to fetch changes up to 696e123aa36bf0bc72bda98df96dd8f379a6e854:
ASoC: mediatek: common: fix device and OF node leak (2025-07-23 13:03:57 +0100)
----------------------------------------------------------------
ASoC: Fixes for v6.16
A few device specific fixes, none especially remarkable though all
useful.
----------------------------------------------------------------
Derek Fang (1):
ASoC: rt5650: Eliminate the high frequency glitch
Guoqing Jiang (1):
ASoC: mediatek: mt8365-dai-i2s: pass correct size to mt8365_dai_set_priv
Johan Hovold (1):
ASoC: mediatek: common: fix device and OF node leak
Ranjani Sridharan (1):
ASoC: SOF: Intel: PTL: Add the sdw_process_wakeen op
Shuming Fan (1):
ASoC: SDCA: correct the calculation of the maximum init table size
sound/soc/codecs/rt5645.c | 1 +
sound/soc/mediatek/common/mtk-soundcard-driver.c | 4 ++++
sound/soc/mediatek/mt8365/mt8365-dai-i2s.c | 3 +--
sound/soc/sdca/sdca_functions.c | 2 +-
sound/soc/sof/intel/ptl.c | 1 +
5 files changed, 8 insertions(+), 3 deletions(-)
2
1
alsa-project/alsa-lib issue #462 was reopened from Carlisle96:
I am not sure where to ask or how to report this:
There was a new card released ESI-Audio Juli@ eX
https://www.esi-audio.com/products/juliaex/
I am wondering if this is supported or planned to be supported.
It is not yet listed here: https://www.alsa-project.org/wiki/Matrix:Vendor-ESI
Issue URL : https://github.com/alsa-project/alsa-lib/issues/462
Repository URL: https://github.com/alsa-project/alsa-lib
1
0
كل ما تحتاج معرفته حول شهادة الأبوة بالمغرب
يمكنك تحميل الطلب من خلال الرابط المباشر
https://www.targir.com/2025/04/blog-post_14.html
معلومات شاملة لاستخراج شهادة الأبوة والإجراءات القانونية المرتبطة بها
ما هي شهادة الأبوة في المغرب؟
شهادة الأبوة وثيقة قانونية تصدر بناءً على حكم قضائي، وتُثبت العلاقة البنوية
بين الطفل ووالده البيولوجي، في حال عدم وجود عقد زواج رسمي أو تسجيل سابق.
تُعَد هذه الشهادة جزءًا من الإجراءات القضائية التي تدخل ضمن قضايا الحالة
المدنية.
الحالات التي تستوجب استخراج شهادة الأبوة
1. الأطفال غير المسجلين في الحالة المدنية
عندما يولد طفل خارج إطار الزواج أو لم يُسجَّل بصفة قانونية في دفتر الحالة
المدنية، يحتاج الأب إلى رفع دعوى للحصول على شهادة الأبوة.
2. إثبات النسب في غياب عقد زواج
في حالات عدم توفر وثيقة الزواج بين الأبوين، يُلجأ إلى المحكمة لتقديم
التصريح بالأبوة.
إجراءات الحصول على شهادة الأبوة
أولا: رفع دعوى أمام المحكمة
يتوجب على الأب أو ولي أمر الطفل تقديم طلب إلى المحكمة الابتدائية التي يقع
فيها مقر سكن الطفل أو الأب، وذلك من أجل إصدار حكم قضائي بإثبات الأبوة.
ثانياً: الوثائق المطلوبة
نسخة من بطاقة التعريف الوطنية
عقد الازدياد الخاص بالطفل (إن وُجد)
شهادة طبية للولادة
شهادة السكنى
وثائق أو إثباتات تدعم علاقة الأب بالطفل
نموذج شهادة الأبوة pdf
تتيح بعض المواقع الإلكترونية تحميل نموذج شهادة الأبوة PDF قابل للطباعة، غير
أن إصدارها الرسمي لا يتم إلا بعد حكم قضائي، ويتم توجيهها لمصلحة الحالة
المدنية لتسجيل الطفل.
الأسئلة الشائعة حول شهادة الأبوة
هل يمكن تقديم طلب شهادة الأبوة إلكترونياً؟
لا، المسطرة تظل قضائية وتتطلب الحضور أمام المحكمة.
ما هي مدة الحصول على شهادة الأبوة؟
قد تختلف المدة حسب عدد الجلسات، ولكن عادة ما تستغرق بين شهر إلى ثلاثة أشهر،
حسب تعقيد الملف.
صلة بين شهادة الأبوة وبعض التصاريح القانونية الأخرى
تم الربط ضمن هذا الدليل بين شهادة الأبوة وبعض المفاهيم القانونية الأخرى
التي يبحث عنها الكثير، مثل:
1. التصريح الأمني وتصريح السفر
غالباً ما يُطلب في بعض الحالات القانونية توفير تصريح أمني عند استخراج أوراق
ثبوتية، كما هو الحال في:
الأوراق المطلوبة لاستخراج تصريح السفر من منطقة التجنيد
تصريح أمني مستعجل
التصريح الأمني الإلكتروني
2. استبدال التصريح برخصة قيادة
في حالات مثل شروط إصدار رخصة قيادة بعد التصريح أو تجديد التصريح إلى رخصة،
من المهم التأكد من إثبات الهوية القانونية، وهو ما يجعل شهادة الأبوة ضرورية
في بعض الحالات القانونية الخاصة.
شهادة الأبوة
الغاية من هذه الوثيقة هي إثبات علاقة الأبوة بالابن سواء كان راشدا أم قاصرا
وغالبا ما تطلب في بعض المساطر الإدارية.
صاحب الطلب
المغربي المقيم بالخارج
الوثائق المطلوبة
بالنسبة للراشد :
· بطاقة التسجيل ؛
· الدفتر العائلي
بالنسبة للقاصر :
· بطاقة تسجيل الأب ؛
· الدفتر العائلي .
المصلحة المكلفة باستلام الوثائق المطلوبة
المصالح القنصلية التابعة لمحل إقامة صاحب الطلب
المصلحة المكلفة بتقديم الخدمة
المصالح القنصلية التابعة لمحل إقامة صاحب الطلب
في حالة تعذر الحصول على الخدمة
مؤسسة الوسيط
لأجل الاتصال
وزارة الشؤون الخارجية والتعاون
مصدر المعلومات (الإدارة المعنية)
وزارة الشؤون الخارجية والتعاون_أرشيف
يمكنك تحميل الطلب من خلال الرابط المباشر
نموذج شهادة الأبوة بالمغرب
محكمة الأسرة بـ: [اسم المدينة]
رقم الملف: [يُترك للمحكمة]
رقم القضية: [يُترك للمحكمة]
بيان تصريح بالأبوة
أنا الموقع أسفله:
الاسم الكامل: [الاسم الكامل للأب]
رقم بطاقة التعريف الوطنية: [رقم CIN]
تاريخ ومكان الازدياد: [تاريخ ومكان ولادة الأب]
العنوان الكامل: [عنوان الإقامة]
المهنة: [المهنة الحالية]
أُصرّح بموجب هذا، وبكامل قواي العقلية والقانونية، بما يلي:
أن الطفل (ة) المسمى (ة): [اسم الطفل/ة]
المولود (ة) بتاريخ: [تاريخ الولادة]
بـ: [مكان الولادة]
هو(هي) ابني/ابنتي البيولوجي(ة)، وقد وُلد(ت) نتيجة علاقة أبوية قائمة بيني
وبين السيدة:
[اسم الأم]، المولودة بتاريخ: [تاريخ ميلاد الأم]، والحاملة لرقم بطاقة
التعريف الوطنية: [رقم CIN الأم].
وأتحمل كامل المسؤولية القانونية والأبوية تجاه هذا الطفل/ة، وأطلب من المحكمة
الموقرة إصدار حكم قضائي يثبت نسب الطفل لي، وتمكينه من التسجيل في الحالة
المدنية.
الإمضاء
الإسم الكامل: _____________________
التوقيع: ___________________________
التاريخ: ____ / ____ / ________
ملاحظات :
يُرفق هذا النموذج بالوثائق الداعمة كـ: نسخة البطاقة الوطنية، شهادة السكنى،
شهادة الولادة، وغيرها.
يُودَع لدى كتابة ضبط المحكمة الابتدائية (قسم قضاء الأسرة) التي يقع ضمن
اختصاصها محل ولادة الطفل أو محل سكن الأب.
1
0
Add TAS2770 support in TI's HDA driver. And add hda_chip_id for
more products. Distinguish DSP and non-DSP in firmware
loading function.
Signed-off-by: Baojun Xu <baojun.xu(a)ti.com>
---
v2:
- Rewrite the patch description
- Move registers define for TAS2770 from tas2781.h to tas2770-tlv.h
- Add new chip ID define for HDA
- Add digital volume control in tas2770_snd_controls
- Change public kcontrol name from tas27xx_ to tasdevice_
- Create new function for kcontrol adding
- Create new function for DSP binary loading
- Rename chip_id to hda_chip_id in i2c_probe for the supported devices
---
include/sound/tas2770-tlv.h | 23 +++
.../hda/codecs/side-codecs/tas2781_hda_i2c.c | 161 +++++++++++-------
2 files changed, 127 insertions(+), 57 deletions(-)
create mode 100644 include/sound/tas2770-tlv.h
diff --git a/include/sound/tas2770-tlv.h b/include/sound/tas2770-tlv.h
new file mode 100644
index 000000000000..c0bd495b4a07
--- /dev/null
+++ b/include/sound/tas2770-tlv.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+//
+// ALSA SoC Texas Instruments TAS2770 Audio Smart Amplifier
+//
+// Copyright (C) 2025 Texas Instruments Incorporated
+// https://www.ti.com
+//
+// The TAS2770 hda driver implements for one, two, or even multiple
+// TAS2770 chips.
+//
+// Author: Baojun Xu <baojun.xu(a)ti.com>
+//
+
+#ifndef __TAS2770_TLV_H__
+#define __TAS2770_TLV_H__
+
+#define TAS2770_DVC_LEVEL TASDEVICE_REG(0x0, 0x0, 0x17)
+#define TAS2770_AMP_LEVEL TASDEVICE_REG(0x0, 0x0, 0x03)
+
+static const __maybe_unused DECLARE_TLV_DB_SCALE(tas2770_dvc_tlv, 1650, 50, 0);
+static const __maybe_unused DECLARE_TLV_DB_SCALE(tas2770_amp_tlv, 1100, 50, 0);
+
+#endif
diff --git a/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c b/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
index bacc3f6ed4bd..65a48326f5b9 100644
--- a/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
+++ b/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c
@@ -24,6 +24,7 @@
#include <sound/tas2781.h>
#include <sound/tas2781-comlib-i2c.h>
#include <sound/tlv.h>
+#include <sound/tas2770-tlv.h>
#include <sound/tas2781-tlv.h>
#include "hda_local.h"
@@ -45,9 +46,18 @@
#define TAS2563_CAL_TLIM TASDEVICE_REG(0, 0x10, 0x14)
#define TAS2563_CAL_R0 TASDEVICE_REG(0, 0x0f, 0x34)
+enum device_chip_id {
+ HDA_TAS2563,
+ HDA_TAS2770,
+ HDA_TAS2781,
+ HDA_OTHERS
+};
+
struct tas2781_hda_i2c_priv {
struct snd_kcontrol *snd_ctls[2];
int (*save_calibration)(struct tas2781_hda *h);
+
+ int hda_chip_id;
};
static int tas2781_get_i2c_res(struct acpi_resource *ares, void *data)
@@ -245,6 +255,15 @@ static int tas2781_force_fwload_put(struct snd_kcontrol *kcontrol,
return change;
}
+static const struct snd_kcontrol_new tas2770_snd_controls[] = {
+ ACARD_SINGLE_RANGE_EXT_TLV("Speaker Analog Volume", TAS2770_AMP_LEVEL,
+ 0, 0, 20, 0, tas2781_amp_getvol,
+ tas2781_amp_putvol, tas2770_amp_tlv),
+ ACARD_SINGLE_RANGE_EXT_TLV("Speaker Digital Volume", TAS2770_DVC_LEVEL,
+ 0, 0, 31, 0, tas2781_amp_getvol,
+ tas2781_amp_putvol, tas2770_dvc_tlv),
+};
+
static const struct snd_kcontrol_new tas2781_snd_controls[] = {
ACARD_SINGLE_RANGE_EXT_TLV("Speaker Analog Gain", TAS2781_AMP_LEVEL,
1, 0, 20, 0, tas2781_amp_getvol,
@@ -253,7 +272,7 @@ static const struct snd_kcontrol_new tas2781_snd_controls[] = {
tas2781_force_fwload_get, tas2781_force_fwload_put),
};
-static const struct snd_kcontrol_new tas2781_prof_ctrl = {
+static const struct snd_kcontrol_new tasdevice_prof_ctrl = {
.name = "Speaker Profile Id",
.iface = SNDRV_CTL_ELEM_IFACE_CARD,
.info = tasdevice_info_profile,
@@ -261,7 +280,7 @@ static const struct snd_kcontrol_new tas2781_prof_ctrl = {
.put = tasdevice_set_profile_id,
};
-static const struct snd_kcontrol_new tas2781_dsp_prog_ctrl = {
+static const struct snd_kcontrol_new tasdevice_dsp_prog_ctrl = {
.name = "Speaker Program Id",
.iface = SNDRV_CTL_ELEM_IFACE_CARD,
.info = tasdevice_info_programs,
@@ -269,7 +288,7 @@ static const struct snd_kcontrol_new tas2781_dsp_prog_ctrl = {
.put = tasdevice_program_put,
};
-static const struct snd_kcontrol_new tas2781_dsp_conf_ctrl = {
+static const struct snd_kcontrol_new tasdevice_dsp_conf_ctrl = {
.name = "Speaker Config Id",
.iface = SNDRV_CTL_ELEM_IFACE_CARD,
.info = tasdevice_info_config,
@@ -378,44 +397,34 @@ static void tas2781_hda_remove_controls(struct tas2781_hda *tas_hda)
snd_ctl_remove(codec->card, tas_hda->prof_ctl);
}
-static void tasdev_fw_ready(const struct firmware *fmw, void *context)
+static void tasdev_add_kcontrols(struct tasdevice_priv *tas_priv,
+ struct snd_kcontrol **ctls, struct hda_codec *codec,
+ const struct snd_kcontrol_new *tas_snd_ctrls, int num_ctls)
{
- struct tasdevice_priv *tas_priv = context;
- struct tas2781_hda *tas_hda = dev_get_drvdata(tas_priv->dev);
- struct tas2781_hda_i2c_priv *hda_priv = tas_hda->hda_priv;
- struct hda_codec *codec = tas_priv->codec;
- int i, ret, spk_id;
-
- pm_runtime_get_sync(tas_priv->dev);
- mutex_lock(&tas_priv->codec_lock);
+ int i, ret;
- ret = tasdevice_rca_parser(tas_priv, fmw);
- if (ret)
- goto out;
-
- tas_hda->prof_ctl = snd_ctl_new1(&tas2781_prof_ctrl, tas_priv);
- ret = snd_ctl_add(codec->card, tas_hda->prof_ctl);
- if (ret) {
- dev_err(tas_priv->dev,
- "Failed to add KControl %s = %d\n",
- tas2781_prof_ctrl.name, ret);
- goto out;
- }
-
- for (i = 0; i < ARRAY_SIZE(tas2781_snd_controls); i++) {
- hda_priv->snd_ctls[i] = snd_ctl_new1(&tas2781_snd_controls[i],
- tas_priv);
- ret = snd_ctl_add(codec->card, hda_priv->snd_ctls[i]);
+ for (i = 0; i < num_ctls; i++) {
+ ctls[i] = snd_ctl_new1(
+ &tas_snd_ctrls[i], tas_priv);
+ ret = snd_ctl_add(codec->card, ctls[i]);
if (ret) {
dev_err(tas_priv->dev,
"Failed to add KControl %s = %d\n",
- tas2781_snd_controls[i].name, ret);
- goto out;
+ tas_snd_ctrls[i].name, ret);
+ break;
}
}
+}
- tasdevice_dsp_remove(tas_priv);
+static void tasdevice_dspfw_init(void *context)
+{
+ struct tasdevice_priv *tas_priv = context;
+ struct tas2781_hda *tas_hda = dev_get_drvdata(tas_priv->dev);
+ struct tas2781_hda_i2c_priv *hda_priv = tas_hda->hda_priv;
+ struct hda_codec *codec = tas_priv->codec;
+ int ret, spk_id;
+ tasdevice_dsp_remove(tas_priv);
tas_priv->fw_state = TASDEVICE_DSP_FW_PENDING;
if (tas_priv->speaker_id != NULL) {
// Speaker id need to be checked for ASUS only.
@@ -441,28 +450,12 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context)
dev_err(tas_priv->dev, "dspfw load %s error\n",
tas_priv->coef_binaryname);
tas_priv->fw_state = TASDEVICE_DSP_FW_FAIL;
- goto out;
- }
-
- tas_hda->dsp_prog_ctl = snd_ctl_new1(&tas2781_dsp_prog_ctrl,
- tas_priv);
- ret = snd_ctl_add(codec->card, tas_hda->dsp_prog_ctl);
- if (ret) {
- dev_err(tas_priv->dev,
- "Failed to add KControl %s = %d\n",
- tas2781_dsp_prog_ctrl.name, ret);
- goto out;
- }
-
- tas_hda->dsp_conf_ctl = snd_ctl_new1(&tas2781_dsp_conf_ctrl,
- tas_priv);
- ret = snd_ctl_add(codec->card, tas_hda->dsp_conf_ctl);
- if (ret) {
- dev_err(tas_priv->dev,
- "Failed to add KControl %s = %d\n",
- tas2781_dsp_conf_ctrl.name, ret);
- goto out;
+ return;
}
+ tasdev_add_kcontrols(tas_priv, &tas_hda->dsp_prog_ctl, codec,
+ &tasdevice_dsp_prog_ctrl, 1);
+ tasdev_add_kcontrols(tas_priv, &tas_hda->dsp_conf_ctl, codec,
+ &tasdevice_dsp_conf_ctrl, 1);
tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
tasdevice_prmg_load(tas_priv, 0);
@@ -475,9 +468,45 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context)
* calibrated data inside algo.
*/
hda_priv->save_calibration(tas_hda);
+}
+
+static void tasdev_fw_ready(const struct firmware *fmw, void *context)
+{
+ struct tasdevice_priv *tas_priv = context;
+ struct tas2781_hda *tas_hda = dev_get_drvdata(tas_priv->dev);
+ struct tas2781_hda_i2c_priv *hda_priv = tas_hda->hda_priv;
+ struct hda_codec *codec = tas_priv->codec;
+ int ret;
+
+ pm_runtime_get_sync(tas_priv->dev);
+ mutex_lock(&tas_priv->codec_lock);
+
+ ret = tasdevice_rca_parser(tas_priv, fmw);
+ if (ret)
+ goto out;
- tasdevice_tuning_switch(tas_hda->priv, 0);
- tas_hda->priv->playback_started = true;
+ tas_priv->fw_state = TASDEVICE_RCA_FW_OK;
+ tasdev_add_kcontrols(tas_priv, &tas_hda->prof_ctl, codec,
+ &tasdevice_prof_ctrl, 1);
+
+ switch (hda_priv->hda_chip_id) {
+ case HDA_TAS2770:
+ tasdev_add_kcontrols(tas_priv, hda_priv->snd_ctls, codec,
+ &tas2770_snd_controls[0],
+ ARRAY_SIZE(tas2770_snd_controls));
+ break;
+ case HDA_TAS2781:
+ tasdev_add_kcontrols(tas_priv, hda_priv->snd_ctls, codec,
+ &tas2781_snd_controls[0],
+ ARRAY_SIZE(tas2781_snd_controls));
+ tasdevice_dspfw_init(context);
+ break;
+ case HDA_TAS2563:
+ tasdevice_dspfw_init(context);
+ break;
+ default:
+ break;
+ }
out:
mutex_unlock(&tas_hda->priv->codec_lock);
@@ -581,16 +610,33 @@ static int tas2781_hda_i2c_probe(struct i2c_client *clt)
return -ENOMEM;
if (strstr(dev_name(&clt->dev), "TIAS2781")) {
- device_name = "TIAS2781";
+ /*
+ * TAS2781, integrated on-chip DSP with
+ * global I2C address supported.
+ */
+ device_name = "TIAS2781";
+ hda_priv->hda_chip_id = HDA_TAS2781;
hda_priv->save_calibration = tas2781_save_calibration;
tas_hda->priv->global_addr = TAS2781_GLOBAL_ADDR;
+ } else if (strstarts(dev_name(&clt->dev), "i2c-TXNW2770")) {
+ /*
+ * TAS2770, has no on-chip DSP, so no calibration data
+ * required; has no global I2C address supported.
+ */
+ device_name = "TXNW2770";
+ hda_priv->hda_chip_id = HDA_TAS2770;
} else if (strstarts(dev_name(&clt->dev),
"i2c-TXNW2781:00-tas2781-hda.0")) {
device_name = "TXNW2781";
hda_priv->save_calibration = tas2781_save_calibration;
tas_hda->priv->global_addr = TAS2781_GLOBAL_ADDR;
} else if (strstr(dev_name(&clt->dev), "INT8866")) {
- device_name = "INT8866";
+ /*
+ * TAS2563, integrated on-chip DSP with
+ * global I2C address supported.
+ */
+ device_name = "INT8866";
+ hda_priv->hda_chip_id = HDA_TAS2563;
hda_priv->save_calibration = tas2563_save_calibration;
tas_hda->priv->global_addr = TAS2563_GLOBAL_ADDR;
} else {
@@ -727,6 +773,7 @@ static const struct i2c_device_id tas2781_hda_i2c_id[] = {
static const struct acpi_device_id tas2781_acpi_hda_match[] = {
{"INT8866", 0 },
{"TIAS2781", 0 },
+ {"TXNW2770", 0 },
{"TXNW2781", 0 },
{}
};
--
2.43.0
1
0

22 Jul '25
alsa-project/alsa-utils issue #305 was opened from rubin55:
When running `alsactl restore` on an RME HDSPe AIO Pro (using the `snd-hdspe` kernel module), I get the following error:
```
# alsactl restore -U
Found hardware: "HDSPe" "RME HDSPe" "" "0x0000" "0x0000"
Hardware is initialized using a generic method
alsactl: set_control:1494: Cannot write control 'numid=11,iface=HWDEP,name='DDS'' : Invalid argument
```
This seems to prevent systemd's `alsa-restore` oneshot from working, although I don't really understand why; running `alsactl store/restore -U` from command line shows the same error, but *does* store/restore volume levels. The same via systemd, logs the errors in `systemd status alsa-restore` but volume levels are never restored.
Issue URL : https://github.com/alsa-project/alsa-utils/issues/305
Repository URL: https://github.com/alsa-project/alsa-utils
1
0