2021-11-03 10:26:55

by Takashi Iwai

[permalink] [raw]
Subject: [GIT PULL] sound updates for 5.16-rc1

Linus,

please pull sound updates for v5.16-rc1 from:

git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1

The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67

----------------------------------------------------------------

sound updates for 5.16-rc1

Lots of code development have been see in ASoC side as usual, while
the continued development on memalloc helper and USB-audio low-
latency support are found in the rest. Note that a few changes in the
unusual places like arch/sh are included, which are a part of ASoC DAI
format cleanups.

ALSA core:
- Continued memallloc helper updates and cleanups, now supporting
non-coherent and non-contiguous pages
- Fixes for races in mixer OSS layer

ASoC:
- A new version of the audio graph card which supports a wider range
of systems
- Several conversions to YAML DT bindings
- Continuing cleanups to the SOF and Intel code
- Move of the Cirrus DSP framework into drivers/firmware to allow for
future use by non-audio DSPs
- An overhaul of the cs42l42 driver, correcting many problems
- DAI format terminology conversions over many drivers for cleanups
- Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
RT5682S, and RT9120 and Rockchip RV1126 and RK3568

USB-audio:
- Continued improvements on low-latency playback
- Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14

HD-audio:
- Reduce excessive udelay() calls on Intel platforms; this should
reduce the CPU load with PulseAudio
- Quirks for HP and Clevo laptops

FireWire:
- Support for meter information on MOTU

----------------------------------------------------------------

Ajit Kumar Pandey (10):
ASoC: amd: Kconfig: Select fch clock support with machine driver
ASoC: amd: Add common framework to support I2S on ACP SOC
ASoC: amd: acp: Add I2S support on Renoir platform
ASoC: amd: acp: Add callback for machine driver on ACP
ASoC: amd: acp: Add generic machine driver support for ACP cards
ASoC: amd: acp: Add legacy sound card support for Chrome audio
ASoC: amd: acp: Add SOF audio support on Chrome board
ASoC: amd: acp: Add support for Maxim amplifier codec
ASoC: amd: acp: Add support for RT5682-VS codec
ASoC: amd: acp: Add acp_machine struct for renoir platform.

Alejandro Tafalla (2):
ASoC: max98927: Handle reset gpio when probing i2c
ASoC: max98927: Add reset-gpios optional property

Alexander Stein (1):
ASoC: meson: t9015: Add missing AVDD-supply property

Alexander Tsoy (1):
ALSA: usb-audio: Add registration quirk for JBL Quantum 400

Amadeusz Sławiński (5):
ASoC: core: Remove invalid snd_soc_component_set_jack call
ASoC: topology: Check for dapm widget completeness
ASoC: topology: Use correct device for prints
ASoC: topology: Change topology device to card device
ASoC: Stop dummy from overriding hwparams

Andy Shevchenko (12):
ASoC: Intel: bytcht_es8316: Get platform data via dev_get_platdata()
ASoC: Intel: bytcht_es8316: Use temporary variable for struct device
ASoC: Intel: bytcht_es8316: Switch to use gpiod_get_optional()
ASoC: Intel: bytcht_es8316: Utilize dev_err_probe() to avoid log saturation
ASoC: Intel: bytcr_rt5640: Get platform data via dev_get_platdata()
ASoC: Intel: bytcr_rt5640: Use temporary variable for struct device
ASoC: Intel: bytcr_rt5640: use devm_clk_get_optional() for mclk
ASoC: Intel: bytcr_rt5640: Utilize dev_err_probe() to avoid log saturation
ASoC: Intel: bytcr_rt5651: Get platform data via dev_get_platdata()
ASoC: Intel: bytcr_rt5651: Use temporary variable for struct device
ASoC: Intel: bytcr_rt5651: use devm_clk_get_optional() for mclk
ASoC: Intel: bytcr_rt5651: Utilize dev_err_probe() to avoid log saturation

AngeloGioacchino Del Regno (1):
ASoC: rt5682-i2c: Use devm_clk_get_optional for optional clock

Arnd Bergmann (3):
ASoC: samsung: add missing "fallthrough;"
ASoC: amd: acp: fix Kconfig dependencies
ASoC: amd: acp: select CONFIG_SND_SOC_ACPI

Bard Liao (1):
ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK/BCLK_ES bits

Bixuan Cui (1):
ASoC: mediatek: mt8195: Add missing of_node_put()

Brent Lu (9):
ASoC: Intel: sof_rt5682: support ALC5682I-VS codec
ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015p board
ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015 board
ASoC: intel: sof_rt5682: support jsl_rt5682s_mx98360a board
ASoC: intel: sof_rt5682: update platform device name for Maxim amplifier
ASoC: Intel: glk_rt5682_max98357a: support ALC5682I-VS codec
ASoC: soc-acpi: add comp_ids field for machine driver matching
ASoC: Intel: sof_rt5682: detect codec variant in probe function
ASoC: Intel: sof_rt5682: use comp_ids to enumerate rt5682s

Bud Liviu-Alexandru (1):
ASoC: SOF: Make Intel IPC stream ops generic

Cai Huoqing (1):
ASoC: mediatek: mt8195: Make use of the helper function devm_platform_ioremap_resource()

Cezary Rojewski (1):
ASoC: topology: Add header payload_size verification

Charles Keepax (10):
ASoC: cs35l41: Fix use of an uninitialised variable
ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot
ASoC: cs35l41: Combine adjacent register writes
ASoC: cs35l41: Don't overwrite returned error code
ASoC: cs35l41: Fixup the error messages
ASoC: cs35l41: Fix a bunch of trivial code formating/style issues
misc: cs35l41: Remove unused pdn variable
ASoC: wm_adsp: Move check for control existence
ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed buffers
ASoC: wm_adsp: Move sys_config_size to wm_adsp

Chengfeng Ye (2):
ALSA: gus: fix null pointer dereference on pointer block
ALSA: usb-audio: fix null pointer dereference on pointer cs_desc

ChiYuan Huang (4):
ASoC: dt-bindings: rt9120: Add initial bindings
ASoC: rt9120: Add rt9210 audio amplifier support
ASoC: dt-bindings: rt9120: Add initial bindings
ASoC: rt9120: Add rt9210 audio amplifier support

Christian Hewitt (1):
ASoC: meson: implement driver_name for snd_soc_card in meson-card-utils

Christophe JAILLET (1):
ASoC: rsnd: Fix an error handling path in 'rsnd_node_count()'

Colin Ian King (7):
ASoC: mediatek: mt8195: Fix unused initialization of pointer etdm_data
ASoC: mediatek: mt8195: make array adda_dai_list static const
ASoC: qdsp6: q6afe-dai: Fix spelling mistake "Fronend" -> "Frontend"
ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported"
ASoC: meson: aiu: Fix spelling mistake "Unsupport" -> "Unsupported"
ASoC: rockchip: i2s-tdm: Remove call to rockchip_i2s_ch_to_io
ASoC: rockchip: i2s-tdm: Fix error handling on i2s_tdm_prepare_enable_mclk failure

Daniel Baluta (4):
ASoC: SOF: OF: Add fw_path and tplg_path parameters
ASoC: SOF: Introduce snd_sof_mailbox_read / snd_sof_mailbox_write callbacks
ASoC: SOF: imx: Use newly introduced generic IPC stream ops
ASoC: SOF: Introduce fragment elapsed notification API

David Lin (2):
ASoC: nau8825: add set_jack coponment support
ASoC: nau8825: add clock management for power saving

David Rhodes (3):
ASoC: cs35l41: CS35L41 Boosted Smart Amplifier
ASoC: cs35l41: Add bindings for CS35L41
ASoC: cs35l41: Binding fixes

Derek Fang (11):
ASoC: rt5682s: Add driver for ALC5682I-VS codec
ASoC: dt-bindings: rt5682s: add bindings for rt5682s
ASoC: rt5682s: Remove the volatile SW reset register from reg_default
ASoC: rt5682s: Use dev_dbg instead of pr_debug
ASoC: rt5682s: Revise the macro RT5682S_PLLB_SRC_MASK
ASoC: dt-bindings: rt5682s: fix the device-tree schema errors
ASoC: rt5682s: Enable ASRC auto-disable to fix pop during jack plug-in while playback
ASoC: rt5682s: Fix HP noise caused by SAR mode switch when the system resumes
ASoC: rt5682s: Fix hp pop produced immediately after resuming
ASoC: rt5682: fix a little pop while playback
ASoC: rt5682s: Downsizing the DAC volume scale

Dmitry Osipenko (2):
ASoC: tegra: Restore AC97 support
ASoC: tegra: Set default card name for Trimslice

Geert Uytterhoeven (7):
ASoC: dt-bindings: wlf,wm8978: Fix I2C address in example
ASoC: dt-bindings: rockchip: i2s-tdm: Fix rockchip,i2s-[rt]x-route
ASoC: wm8962: Convert to devm_clk_get_optional()
ASoC: dt-bindings: wlf,wm8962: Convert to json-schema
ASoC: amd: acp: Wrap AMD Audio ACP components in SND_SOC_AMD_ACP_COMMON
ASoC: amd: acp: SND_SOC_AMD_{LEGACY_MACH,SOF_MACH} should depend on X86 && PCI && I2C
ASoC: amd: acp: SND_SOC_AMD_ACP_COMMON should depend on X86 && PCI

George Song (2):
ASoC: dt-bindings: max98520: add initial bindings
ASoC: max98520: add max98520 audio amplifier driver

Geraldo Nascimento (2):
ALSA: usb-audio: fix comment reference in __uac_clock_find_source
ALSA: usb-audio: disable implicit feedback sync for Behringer UFX1204 and UFX1604

Guennadi Liakhovetski (1):
ASoC: SOF: add error handling to snd_sof_ipc_msg_data()

Guenter Roeck (1):
spi: tegra20-slink: Declare runtime suspend and resume functions conditionally

Guo Zhengkui (1):
ASoC: wm_adsp: remove a repeated including

Gustavo A. R. Silva (1):
ALSA: virtio: Replace zero-length array with flexible-array member

Hans de Goede (6):
ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ
ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ
ASoC: nau8824: Fix NAU8824_JACK_LOGIC define
ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect
ASoC: nau8824: Add a nau8824_components() helper
ASoC: Intel: cht_bsw_nau8824: Set card.components string

Jack Yu (2):
ASoC: rt1011: add i2s reference control for rt1011
ASoC: rt5682: move clk related code to rt5682_i2c_probe

Jason Ormes (1):
ALSA: usb-audio: Line6 HX-Stomp XL USB_ID for 48k-fixed quirk

Jerome Brunet (2):
ASoC: meson: axg-card: make links nonatomic
ASoC: meson: axg-tdm-interface: manage formatters in trigger

Jiapeng Chong (1):
ASoC: rt5682s: make rt5682s_aif2_dai_ops and rt5682s_soc_component_dev

Johan Hovold (3):
ALSA: 6fire: fix control and bulk message timeouts
ALSA: line6: fix control and interrupt message timeouts
ALSA: ua101: fix division by zero at probe

John Keeping (1):
ASoC: doc: update codec example code

Johnathon Clark (1):
ALSA: hda/realtek: Fix mic mute LED for the HP Spectre x360 14

Julian Braha (4):
ASoC: fix unmet dependency on GPIOLIB
ASoC: fix unmet dependency on GPIOLIB for SND_SOC_MAX98357A
ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_DMIC
ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_RT1015P

Krzysztof Kozlowski (1):
ASoC: dt-bindings: rt5682s: correct several errors

Kunihiko Hayashi (1):
ASoC: dt-bindings: uniphier: Add description of each port number

Kuninori Morimoto (21):
ASoC: test-component: add Test Component YAML bindings
ASoC: test-component: add Test Component for Sound debug/test
ASoC: simple-card-utils: add asoc_graph_is_ports0()
ASoC: simple-card-utils: add codec2codec support
ASoC: add Audio Graph Card2 driver
ASoC: audio-graph-card2: add Multi CPU/Codec support
ASoC: audio-graph-card2: add DPCM support
ASoC: audio-graph-card2: add Codec2Codec support
ASoC: add Audio Graph Card2 Yaml Document
ASoC: add Audio Graph Card2 Custom Sample
ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Single)
ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Nulti)
ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Single)
ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Multi)
ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Single)
ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Multi)
ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step1
ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step2
ASoC: soc-component: add snd_soc_component_is_codec()
ASoC: soc-core: tidyup empty function
ASoC: soc-core: accept zero format at snd_soc_runtime_set_dai_fmt()

Len Baker (1):
ALSA: usx2y: Prefer struct_size over open coded arithmetic

Malik_Hsu (1):
ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp

Marc Herbert (1):
ASoC: SOF: prefix some terse and cryptic dev_dbg() with __func__

Mark Brown (46):
ASoC: atmel: Convert to new style DAI format definitions
ASoC: au1x: Convert to modern terminology for DAI clocking
ASoC: 88pm860x: Update to modern clocking terminology
ASoC: ab8500: Update to modern clocking terminology
ASoC: Drop mistakenly applied SPI patch
ASoC: cros_ec_codec: Use modern ASoC DAI format terminology
ASoC: eureka-tlv320: Update to modern clocking terminology
ASoC: fsl-asoc-card: Update to modern clocking terminology
ASoC: fsl-audmix: Update to modern clocking terminology
ASoC: fsl-esai: Update to modern clocking terminology
ASoC: fsl-mqs: Update to modern clocking terminology
ASoC: fsl_sai: Update to modern clocking terminology
ASoC: fsl_ssi: Update to modern clocking terminology
ASoC: imx-audmix: Update to modern clocking terminology
ASoC: imx-card: Update to modern clocking terminology
ASoC: imx-es8328: Update to modern clocking terminology
ASoC: imx-hdmi: Update to modern clocking terminology
ASoC: imx-rpmsg: Update to modern clocking terminology
ASoC: imx-sgtl5000: Update to modern clocking terminology
ASoC: mpc8610_hpcd: Update to modern clocking terminology
ASoC: pl1022_ds: Update to modern clocking terminology
ASoC: pl1022_rdk: Update to modern clocking terminology
ASoC: zl38060: Update to modern clocking terminology
ASoC: ak4118: Update to modern clocking terminology
ASoC: ak4104: Update to modern clocking terminology
ASoC: alc5632: Use modern ASoC DAI format terminology
ASoC: ak4642: Use modern ASoC DAI format terminology
ASoC: ep93xx: Convert to modern clocking terminology
ASoC: ad1836: Update to modern clocking terminology
ASoC: adau1372: Update to modern clocking terminology
ASoC: adau1373: Update to modern clocking terminology
ASoC: adau1701: Update to modern clocking terminology
ASoC: adau17x1: Update to modern clocking terminology
ASoC: adau1977: Update to modern clocking terminology
ASoC: adav80x: Update to modern clocking terminology
ASoC: ad193x: Update to modern clocking terminology
ASoC: cpcap: Use modern ASoC DAI format terminology
ASoC: bcm: Convert to modern clocking terminology
ASoC: alc5623: Use modern ASoC DAI format terminology
ASoC: ak4671: Use modern ASoC DAI format terminology
ASoC: dwc-i2s: Update to modern clocking terminology
ASoC: ak5558: Use modern ASoC DAI format terminology
ASoC: ak4458: Use modern ASoC DAI format terminology
sh: Use modern ASoC DAI format terminology
ASoC: rt9120: Drop rt9210 audio amplifier support
ASoC: topology: Fix stub for snd_soc_tplg_component_remove()

Masahiro Yamada (1):
ASoC: ti: rename CONFIG_SND_SOC_DM365_VOICE_CODEC_MODULE

Masanari Iida (1):
ASoC: q6afe: q6asm: Fix typos in qcom,q6afe.txt and qcom,q6asm.txt

Maxime Ripard (4):
ASoC: dt-bindings: Add WM8978 Binding
ASoC: dt-bindings: Convert Bluetooth SCO Link binding to a schema
ASoC: dt-bindings: Convert SPDIF Transmitter binding to a schema
ASoC: dt-bindings: Convert Simple Amplifier binding to a schema

Nathan Chancellor (1):
ASoC: qdsp6: audioreach: Fix clang -Wimplicit-fallthrough

Nicolas Frattaroli (5):
ASoC: rockchip: add support for i2s-tdm controller
ASoC: dt-bindings: rockchip: add i2s-tdm bindings
ASoC: rockchip: i2s-tdm: Strip out direct CRU use
ASoC: dt-bindings: rockchip: i2s-tdm: Drop rockchip,cru property
ASoC: rockchip: i2s-tdm: Fix refcount test

Pavel Skripkin (1):
ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume

Peter Ujfalusi (56):
ASoC: soc-topology: Move template info print soc_tplg_dapm_widget_create()
ASoC: SOF: Handle control change notification from firmware
ASoC: SOF: intel: Do no initialize resindex_dma_base
ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from sof_dev_desc
ASoC: SOF: Intel: hda-dsp: Declare locally used functions as static
ASoC: SOF: Intel: hda: Remove boot_firmware skl and iccmax_icl declarations
ASoC: SOF: Intel: hda: Relocate inline definitions from hda.h to hda.c for sdw
ASoC: SOF: loader: load_firmware callback is mandatory, treat it like that
ASoC: SOF: Intel: bdw: Set the mailbox offset directly in bdw_probe
ASoC: SOF: ipc: Remove snd_sof_dsp_mailbox_init()
ASoC: SOF: imx: Do not initialize the snd_sof_dsp_ops.read64
ASoC: SOF: loader: No need to export snd_sof_fw_parse_ext_data()
ASoC: SOF: core: Do not use 'bar' as parameter for block_read/write
ASoC: SOF: debug: Add generic API and ops for DSP regions
ASoC: SOF: imx: Provide debugfs_add_region_item ops for core
ASoC: SOF: Intel: Provide debugfs_add_region_item ops for core
ASoC: SOF: loader: Use the generic ops for region debugfs handling
ASoC: SOF: debug: No need to export the snd_sof_debugfs_io_item()
ASoC: SOF: ipc: Add probe message logging to ipc_log_header()
ASoC: SOF: pcm: Remove non existent CONFIG_SND_SOC_SOF_COMPRESS reference
ASoC: SOF: probe: Merge and clean up the probe and compress files
ASoC: SOF: Intel: Rename hda-compress.c to hda-probes.c
ASoC: SOF: sof-probes: Correct the function names used for snd_soc_cdai_ops
ASoC: SOF: core: Move probe work related code under a single if () branch
ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message()
ASoC: SOF: ipc: Print 0x prefix for errors in ipc_trace/stream_message()
ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked
ASoC: SOF: Rename sof_arch_ops to dsp_arch_ops
ASoC: soc-component: Convert the mark_module to void*
ASoC: compress/component: Use module_get_when_open/put_when_close for cstream
ASoC: SOF: Remove struct sof_ops_table and sof_get_ops() macro
ASoC: Intel: boards: Update to modern clocking terminology
ASoC: SOF: Intel: hda-stream: Print stream name on STREAM_SD_OFFSET timeout
ASoC: SOF: ipc: Make the error prints consistent in tx_wait_done()
ASoC: SOF: Change SND_SOC_SOF_TOPLEVEL from config to menuconfig
ASoC: SOF: debug: Swap the dsp_dump and ipc_dump sequence for fw_exception
ASoC: SOF: ipc and dsp dump: Add markers for better visibility
ASoC: SOF: Print the dbg_dump and ipc_dump once to reduce kernel log noise
ASoC: SOF: loader: Print the DSP dump if boot fails
ASoC: SOF: intel: atom: No need to do a DSP dump in atom_run()
ASoC: SOF: debug/ops: Move the IPC and DSP dump functions out from the header
ASoC: SOF: debug: Add SOF_DBG_DUMP_OPTIONAL flag for DSP dumping
ASoC: SOF: intel: hda-loader: Use snd_sof_dsp_dbg_dump() for DSP dump
ASoC: SOF: Drop SOF_DBG_DUMP_FORCE_ERR_LEVEL and sof_dev_dbg_or_err
ASoC: SOF: debug: Print out the fw_state along with the DSP dump
ASoC: SOF: ipc: Re-enable dumps after successful IPC tx
ASoC: SOF: ops: Force DSP panic dumps to be printed
ASoC: SOF: Introduce macro to set the firmware state
ASoC: SOF: intel: hda: Drop 'error' prefix from error dump functions
ASoC: SOF: core: Clean up snd_sof_get_status() prints
ASoC: SOF: loader: Drop SOF_DBG_DUMP_REGS flag when firmware start fails
ASoC: SOF: Intel: hda-loader: Drop SOF_DBG_DUMP_REGS flag from dbg_dump calls
ASoC: SOF: Intel: hda: Dump registers and stack when SOF_DBG_DUMP_REGS is set
ASoC: SOF: pipelines: Harmonize all functions to use struct snd_sof_dev
ASoC: rt1011: Fix 'I2S Reference' enum control caused error
ASoC: rt1011: Fix 'I2S Reference' enum control

Pierre-Louis Bossart (32):
ASoC: amd: acp: declare and add prefix to 'bt_uart_enable' symbol
ASoC: SOF: core: allow module parameter to override dma trace Kconfig
ALSA: hda: hdac_stream: fix potential locking issue in snd_hdac_stream_assign()
ALSA: hda: hdac_ext_stream: fix potential locking issues
ASoC: SOF: Intel: hda-dai: fix potential locking issue
ASoC: SOF: imx: add header file for ops
ASoC: Intel: soc-acpi: apl/glk/tgl: add entry for devices based on ES8336 codec
ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336 codec
ASoC: Intel: add machine driver for SOF+ES8336
ASoC: Intel: soc-acpi: add missing quirk for TGL SDCA single amp
ASoC: Intel: sof_sdw: add missing quirk for Dell SKU 0A45
ASoC: SOF: dai: mirror group_id definition added in firmware
ASoC: SOF: dai: include new flags for DAI_CONFIG
ASoC: SOF: Intel: hda: add new flags for DAI_CONFIG
ASoC: SOF: Intel: hda-dai: improve SSP DAI handling for dynamic pipelines
ASoC: SOF: topology: show clks_control value in dynamic debug
ASoC: SOF: topology: allow for dynamic pipelines override for debug
ASoC: SOF: core: debug: force all processing on primary core
ASoC: soc-pcm: restore mixer functionality
ASoC: topology: handle endianness warning
ASoC: rt5682s: use 'static' qualifier
ASoC: nau8821: fix kernel-doc
ASoC: nau8821: clarify out-of-bounds check
ASoC: mediatek: remove unnecessary initialization
ASoC: mediatek: mt8195: rename shadowed array
ASoC: mediatek: mt8195: fix return value
ASoC: rockchip: i2s_tdm: improve return value handling
ASoC: Intel: soc-acpi: add entry for ESSX8336 on JSL
ASoC: es8316: add support for ESSX8336 ACPI _HID
ASoC: Intel: soc-acpi-byt: shrink tables using compatible IDs
ASoC: Intel: soc-acpi-cht: shrink tables using compatible IDs
ASoC: Intel: soc-acpi: use const for all uses of snd_soc_acpi_codecs

Rander Wang (2):
ASoC: SOF: control: fix a typo in put operations for kcontrol
ASoC: SOF: prepare code to allocate IPC messages in fw_ready

Randy Dunlap (1):
ALSA: ISA: not for M68K

Ranjani Sridharan (16):
ASoC: SOF: compress: move and export sof_probe_compr_ops
ASoC: SOF: pm: fix a stale comment
ASoC: topology: change the complete op in snd_soc_tplg_ops to return int
ASoC: SOF: control: Add access field in struct snd_sof_control
ASoC: SOF: topology: Add new token for dynamic pipeline
ASoC: SOF: sof-audio: add helpers for widgets, kcontrols and dai config set up
AsoC: dapm: export a couple of functions
ASoC: SOF: Add new fields to snd_sof_route
ASoC: SOF: restore kcontrols for widget during set up
ASoC: SOF: Don't set up widgets during topology parsing
ASoC: SOF: Introduce widget use_count
ASoC: SOF: Intel: hda: make sure DAI widget is set up before IPC
ASoC: SOF: Add support for dynamic pipelines
ASoC: SOF: topology: Add kernel parameter for topology verification
ASoC: SOF: topology: return error if sof_connect_dai_widget() fails
ASoC: SOF: topology: do not power down primary core during topology removal

Richard Fitzgerald (18):
ASoC: cs42l42: Don't reconfigure the PLL while it is running
ASoC: cs42l42: Always configure both ASP TX channels
ASoC: cs42l42: Correct some register default values
ASoC: cs42l42: Don't set defaults for volatile registers
ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER
ASoC: cs42l42: Don't claim to support 192k
ASoC: cs42l42: Use PLL for SCLK > 12.288MHz
ASoC: cs42l42: Allow time for HP/ADC to power-up after enable
ASoC: cs42l42: Set correct SRC MCLK
ASoC: cs42l42: Mark OSC_SWITCH_STATUS register volatile
ASoC: cs42l42: Fix WARN in remove() if running without an interrupt
ASoC: cs42l42: Always enable TS_PLUG and TS_UNPLUG interrupts
ASoC: cs42l42: Remove unused runtime_suspend/runtime_resume callbacks
ASoC: cs42l42: Prevent NULL pointer deref in interrupt handler
ASoC: cs42l42: Reset and power-down on remove() and failed probe()
ASoC: cs42l42: free_irq() before powering-down on probe() fail
ASoC: dt-bindings: cs42l42: Correct description of ts-inv
ASoC: cs42l42: Correct configuring of switch inversion from ts-inv

Rikard Falkeborn (9):
ASoC: fsl: Constify static snd_soc_ops
ASoC: tegra: Constify static snd_soc_dai_ops structs
ASoC: ti: Constify static snd_soc_ops
ASoC: ux500: mop500: Constify static snd_soc_ops
ASoC: tegra: Constify static snd_soc_ops
ASoC: qcom: apq8096: Constify static snd_soc_ops
ASoC: amd: acp-rt5645: Constify static snd_soc_ops
ASoC: mediatek: Constify static snd_soc_ops
ASoC: amd: vangogh: constify static struct snd_soc_dai_ops

Sameer Pujar (14):
ASoC: Add json-schema documentation for sound-name-prefix
ASoC: Use schema reference for sound-name-prefix
ASoC: Remove name-prefix.txt
ASoC: soc-pcm: Don't reconnect an already active BE
ASoC: simple-card-utils: Increase maximum DAI links limit to 512
ASoC: audio-graph: Fixup CPU endpoint hw_params in a BE<->BE link
ASoC: dt-bindings: tegra: Few more Tegra210 AHUB modules
ASoC: tegra: Add routes for few AHUB modules
ASoC: tegra: Add Tegra210 based MVC driver
ASoC: tegra: Add Tegra210 based SFC driver
ASoC: tegra: Add Tegra210 based AMX driver
ASoC: tegra: Add Tegra210 based ADX driver
ASoC: tegra: Add Tegra210 based Mixer driver
ASoC: Fix warning related to 'sound-name-prefix' binding

Sebastian Andrzej Siewior (1):
ASoC: mediatek: mt8195: Remove unsued irqs_lock.

Seven Lee (1):
ASoC: nau8821: new driver

Shengjiu Wang (3):
ASoC: fsl_rpmsg: add soc specific data structure
ASoC: fsl_spdif: Add support for i.MX8ULP
ASoC: fsl_rpmsg: Add rpmsg audio support for i.MX8ULP

Simon Trimmer (14):
ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t
ASoC: wm_adsp: Cancel ongoing work when removing controls
ASoC: wm_adsp: Rename generic DSP support
ASoC: wm_adsp: Introduce cs_dsp logging macros
ASoC: wm_adsp: Separate some ASoC and generic functions
ASoC: wm_adsp: Split DSP power operations into helper functions
ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling
ASoC: wm_adsp: Move check of dsp->running to better place
ASoC: wm_adsp: Pass firmware names as parameters when starting DSP core
ASoC: wm_adsp: move firmware loading to client
ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp
ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops
firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs
ASoC: soc-component: Remove conditional definition of debugfs data members

Srinivas Kandagatla (25):
soc: dt-bindings: qcom: apr: convert to yaml
soc: dt-bindings: qcom: apr: deprecate qcom,apr-domain property
soc: qcom: apr: make code more reuseable
soc: dt-bindings: qcom: add gpr bindings
soc: qcom: apr: Add GPR support
ASoC: soc-component: improve error reporting for register access
ASoC: qcom: sm8250: add support for TX and RX Macro dais
ASoC: qcom: sm8250: Add Jack support
ASoC: dt-bindings: move LPASS dai related bindings out of q6afe
ASoC: dt-bindings: move LPASS clocks related bindings out of q6afe
ASoC: dt-bindings: rename q6afe.h to q6dsp-lpass-ports.h
ASoC: qdsp6: q6afe-dai: move lpass audio ports to common file
ASoC: qdsp6: q6afe-clocks: move audio-clocks to common file
ASoC: dt-bindings: q6dsp: add q6apm-lpass-dai compatible
ASoC: dt-bindings: lpass-clocks: add q6prm clocks compatible
ASoC: dt-bindings: add q6apm digital audio stream bindings
ASoC: qdsp6: audioreach: add basic pkt alloc support
ASoC: qdsp6: audioreach: add q6apm support
ASoC: qdsp6: audioreach: add module configuration command helpers
ASoC: qdsp6: audioreach: add Kconfig and Makefile
ASoC: qdsp6: audioreach: add topology support
ASoC: qdsp6: audioreach: add q6apm-dai support
ASoC: qdsp6: audioreach: add q6apm lpass dai support
ASoC: qdsp6: audioreach: add q6prm support
ASoC: qdsp6: audioreach: add support for q6prm-clocks

Srinivasa Rao Mandadapu (7):
ASoC: dt-bindings: lpass: add binding headers for digital codecs
ASoC: dt-bindings: lpass: add binding headers for digital codecs
ASoC: qcom: Add compatible names in va,wsa,rx,tx codec drivers for sc7280
ASoC: qcom: dt-bindings: Add compatible names for lpass sc7280 digital codecs
ASoC: codecs: tx-macro: Enable tx top soundwire mic clock
ASoC: codecs: tx-macro: Update tx default values
ASoC: codecs: Change bulk clock voting to optional voting in digital codecs

Stefan Binding (2):
ASoC: cs42l42: Implement Manual Type detection as fallback
ASoC: cs42l42: Use two thresholds and increased wait time for manual type detection

Stephan Gerhold (1):
ASoC: qcom: common: Respect status = "disabled" on DAI link nodes

Sugar Zhang (9):
ASoC: rockchip: Add support for rv1126 pdm
ASoC: dt-bindings: rockchip: Add binding for rv1126 pdm
ASoC: rockchip: pdm: Add support for rk3568 pdm
ASoC: dt-bindings: rockchip: Add binding for rk3568 pdm
ASoC: rockchip: pdm: Add support for path map
ASoC: dt-bindings: rockchip: pdm: Document property 'rockchip,path-map'
ASoC: dt-bindings: rockchip: Convert pdm bindings to yaml
ASoC: dmaengine: Introduce module option prealloc_buffer_size_kbytes
ASoC: rockchip: Use generic dmaengine code

Takashi Iwai (29):
ALSA: hda: Reduce udelay() at SKL+ position reporting
ALSA: hda: Use position buffer for SKL+ again
ALSA: usb-audio: Restrict rates for the shared clocks
ALSA: usb-audio: Fix possible race at sync of urb completions
ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
ALSA: usb-audio: Disable low-latency playback for free-wheel mode
ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
ALSA: usb-audio: Check available frames for the next packet size
ALSA: usb-audio: Add spinlock to stop_urbs()
ALSA: usb-audio: Improved lowlatency playback support
ALSA: usb-audio: Avoid killing in-flight URBs during draining
ALSA: usb-audio: Fix packet size calculation regression
ALSA: pcm: Add more disconnection checks at file ops
ALSA: usb-audio: Pass JOINT_DUPLEX info flag for implicit fb streams
ALSA: usb-audio: Less restriction for low-latency playback mode
ALSA: usb-audio: Downgrade error message in get_ctl_value_v2()
ALSA: usb-audio: Drop superfluous error message after disconnection
ALSA: usb-audio: Initialize every feature unit once at probe time
ALSA: pcm: Unify snd_pcm_delay() and snd_pcm_hwsync()
ALSA: memalloc: Support for non-contiguous page allocation
ALSA: memalloc: Support for non-coherent page allocation
ALSA: memalloc: Convert x86 SG-buffer handling with non-contiguous type
ALSA: firewire: Fix C++ style comments in uapi header
ALSA: uapi: Fix a C++ style comment in asound.h
ALSA: memalloc: Drop superfluous snd_dma_buffer_sync() declaration
ALSA: memalloc: Fix a typo in snd_dma_buffer_sync() description
ALSA: mixer: oss: Fix racy access to slots
ALSA: hda/realtek: Add a quirk for HP OMEN 15 mute LED
ALSA: usb-audio: Add quirk for Audient iD14

Takashi Sakamoto (16):
ALSA: firewire-motu: add message parser to gather meter information in register DSP model
ALSA: firewire-motu: add message parser for meter information in command DSP model
ALSA: firewire-motu: add ioctl command to read cached hardware meter
ALSA: firewire-motu: parse messages for mixer source parameters in register-DSP model
ALSA: firewire-motu: parse messages for mixer output parameters in register DSP model
ALSA: firewire-motu: parse messages for output parameters in register DSP model
ALSA: firewire-motu: parse messages for line input parameters in register DSP model
ALSA: firewire-motu: parse messages for input parameters in register DSP model
ALSA: firewire-motu: add ioctl command to read cached parameters in register DSP model
ALSA: firewire-motu: queue event for parameter change in register DSP model
ALSA: firewire-motu: notify event for parameter change in register DSP model
ALSA: firewire-motu: fix null pointer dereference when polling hwdep character device
ALSA: firewire-motu: refine parser for meter information in register DSP models
ALSA: firewire-motu: export meter information to userspace as float value
ALSA: oxfw: fix functional regression for Mackie Onyx 1640i in v5.14 or later
ALSA: firewire-motu: remove TODO for interaction with userspace about control message

Tim Crawford (1):
ALSA: hda/realtek: Add quirk for Clevo PC70HS

Trevor Wu (7):
ASoC: mt8195: remove unnecessary CONFIG_PM
ASoC: mediatek: mt6359: Fix unexpected error in bind/unbind flow
ASoC: mediatek: mt8195: add missing of_node_put in probe
ASoC: mediatek: mt8195: move of_node_put to remove function
ASoC: mediatek: mt8195: update audsys clock parent name
ASoC: mediatek: mt8195: add machine driver with mt6359, rt1011 and rt5682
ASoC: mediatek: mt8195: add mt8195-mt6359-rt1011-rt5682 bindings document

Tzung-Bi Shih (2):
ASoC: dt-bindings: mediatek: mt8192: re-add audio afe document
ASoC: dt-bindings: mediatek: rename reset controller headers in DT example

Uwe Kleine-König (5):
ASoC: tlv320aic32x4: Make aic32x4_remove() return void
ASoc: wm8731: Drop empty spi_driver remove callback
ASoc: wm8900: Drop empty spi_driver remove callback
ASoC: cs35l41: Make cs35l41_remove() return void
ASoC: tlv320aic3x: Make aic3x_remove() return void

Vijendar Mukunda (16):
ASoc: amd: create platform device for VG machine driver
ASoC: amd: add vangogh machine driver
ASoC: amd: enable vangogh platform machine driver build
ASoC: amd: add Yellow Carp ACP6x IP register header
ASoC: amd: add Yellow Carp ACP PCI driver
ASoC: amd: add acp6x init/de-init functions
ASoC: amd: add platform devices for acp6x pdm driver and dmic driver
ASoC: amd: add acp6x pdm platform driver
ASoC: amd: add acp6x irq handler
ASoC: amd: add acp6x pdm driver dma ops
ASoC: amd: add acp6x pci driver pm ops
ASoC: amd: add acp6x pdm driver pm ops
ASoC: amd: enable Yellow carp acp6x drivers build
ASoC: amd: create platform device for acp6x machine driver
ASoC: amd: add YC machine driver using dmic
ASoC: amd: enable Yellow Carp platform machine driver build

Vincent Knecht (1):
ASoC: codecs: tfa989x: Add support for tfa9897 RCV bit

Viorel Suman (2):
ASoC: SOF: imx8m: add SAI1 info
ASoC: fsl_spdif: implement bypass mode from in to out

Vitaly Rodionov (1):
ASoC: cs42l42: Minor fix all errors reported by checkpatch.pl script

William Overton (1):
ALSA: usb-audio: Add support for the Pioneer DJM 750MK2 Mixer/Soundcard

Wolfram Sang (1):
ASoC: codecs: max98390: simplify getting the adapter of a client

Yang Yingliang (1):
ASoC: amd: acp: Fix return value check in acp_machine_select()

Yassine Oudjana (1):
ASoC: wcd9335: Use correct version to initialize Class H

gearhead (1):
ASoC: pcm5102a: increase rate from 192k to 384k

---
.../devicetree/bindings/soc/qcom/qcom,apr.txt | 134 -
.../devicetree/bindings/soc/qcom/qcom,apr.yaml | 177 +
.../devicetree/bindings/sound/amlogic,t9015.yaml | 6 +
.../bindings/sound/audio-graph-card2.yaml | 57 +
Documentation/devicetree/bindings/sound/bt-sco.txt | 13 -
.../devicetree/bindings/sound/cirrus,cs35l41.yaml | 157 +
.../devicetree/bindings/sound/cs42l42.txt | 13 +-
.../devicetree/bindings/sound/linux,bt-sco.yaml | 38 +
.../devicetree/bindings/sound/linux,spdif-dit.yaml | 32 +
.../devicetree/bindings/sound/max9892x.txt | 3 +
.../devicetree/bindings/sound/maxim,max98520.yaml | 36 +
.../devicetree/bindings/sound/mt8192-afe-pcm.yaml | 100 +
.../sound/mt8195-mt6359-rt1011-rt5682.yaml | 47 +
.../devicetree/bindings/sound/name-prefix.txt | 24 -
.../devicetree/bindings/sound/name-prefix.yaml | 21 +
.../devicetree/bindings/sound/nau8821.txt | 55 +
.../bindings/sound/nvidia,tegra186-dspk.yaml | 9 +-
.../bindings/sound/nvidia,tegra210-adx.yaml | 76 +
.../bindings/sound/nvidia,tegra210-ahub.yaml | 20 +
.../bindings/sound/nvidia,tegra210-amx.yaml | 76 +
.../bindings/sound/nvidia,tegra210-dmic.yaml | 9 +-
.../bindings/sound/nvidia,tegra210-i2s.yaml | 9 +-
.../bindings/sound/nvidia,tegra210-mixer.yaml | 74 +
.../bindings/sound/nvidia,tegra210-mvc.yaml | 76 +
.../bindings/sound/nvidia,tegra210-sfc.yaml | 73 +
.../devicetree/bindings/sound/nxp,tfa989x.yaml | 9 +-
.../bindings/sound/qcom,lpass-rx-macro.yaml | 4 +-
.../bindings/sound/qcom,lpass-tx-macro.yaml | 4 +-
.../bindings/sound/qcom,lpass-va-macro.yaml | 4 +-
.../bindings/sound/qcom,lpass-wsa-macro.yaml | 4 +-
.../devicetree/bindings/sound/qcom,q6afe.txt | 181 -
.../devicetree/bindings/sound/qcom,q6apm-dai.yaml | 53 +
.../devicetree/bindings/sound/qcom,q6asm.txt | 2 +-
.../bindings/sound/qcom,q6dsp-lpass-clocks.yaml | 77 +
.../bindings/sound/qcom,q6dsp-lpass-ports.yaml | 205 ++
.../devicetree/bindings/sound/realtek,rt5682s.yaml | 117 +
.../devicetree/bindings/sound/richtek,rt9120.yaml | 59 +
.../bindings/sound/rockchip,i2s-tdm.yaml | 182 +
.../devicetree/bindings/sound/rockchip,pdm.txt | 46 -
.../devicetree/bindings/sound/rockchip,pdm.yaml | 120 +
Documentation/devicetree/bindings/sound/rt5659.txt | 2 +-
.../devicetree/bindings/sound/simple-amplifier.txt | 17 -
.../bindings/sound/simple-audio-amplifier.yaml | 45 +
.../bindings/sound/simple-audio-mux.yaml | 9 +-
.../bindings/sound/socionext,uniphier-aio.yaml | 22 +-
.../bindings/sound/socionext,uniphier-evea.yaml | 6 +-
.../bindings/sound/spdif-transmitter.txt | 10 -
.../devicetree/bindings/sound/test-component.yaml | 33 +
.../devicetree/bindings/sound/wlf,wm8962.yaml | 118 +
.../devicetree/bindings/sound/wlf,wm8978.yaml | 58 +
Documentation/devicetree/bindings/sound/wm8962.txt | 43 -
Documentation/sound/alsa-configuration.rst | 9 +
Documentation/sound/soc/codec.rst | 8 +-
MAINTAINERS | 18 +
arch/sh/boards/mach-ecovec24/setup.c | 2 +-
arch/sh/boards/mach-se/7724/setup.c | 2 +-
drivers/firmware/Kconfig | 1 +
drivers/firmware/Makefile | 1 +
drivers/firmware/cirrus/Kconfig | 5 +
drivers/firmware/cirrus/Makefile | 3 +
drivers/firmware/cirrus/cs_dsp.c | 3109 +++++++++++++++++
drivers/soc/qcom/Kconfig | 2 +-
drivers/soc/qcom/apr.c | 287 +-
include/dt-bindings/soc/qcom,gpr.h | 19 +
include/dt-bindings/sound/qcom,lpass.h | 31 +
include/dt-bindings/sound/qcom,q6afe.h | 203 +-
include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h | 208 ++
include/linux/firmware/cirrus/cs_dsp.h | 242 ++
.../linux/firmware/cirrus}/wmfw.h | 8 +-
include/linux/soc/qcom/apr.h | 70 +-
include/sound/cs35l41.h | 34 +
include/sound/graph_card.h | 21 +
include/sound/hdaudio_ext.h | 2 +
include/sound/memalloc.h | 58 +-
include/sound/rt5682s.h | 48 +
include/sound/simple_card_utils.h | 6 +-
include/sound/soc-acpi.h | 3 +
include/sound/soc-component.h | 21 +-
include/sound/soc-dpcm.h | 1 +
include/sound/soc-topology.h | 5 +-
include/sound/sof.h | 5 -
include/sound/sof/dai-intel.h | 4 +
include/sound/sof/dai.h | 10 +-
include/uapi/sound/asound.h | 2 +-
include/uapi/sound/firewire.h | 150 +
include/uapi/sound/snd_ar_tokens.h | 208 ++
include/uapi/sound/sof/tokens.h | 1 +
sound/core/Makefile | 3 +-
sound/core/memalloc.c | 207 +-
sound/core/memalloc_local.h | 1 +
sound/core/oss/mixer_oss.c | 44 +-
sound/core/pcm_compat.c | 4 +
sound/core/pcm_lib.c | 5 +
sound/core/pcm_local.h | 7 +
sound/core/pcm_memory.c | 13 +-
sound/core/pcm_native.c | 66 +-
sound/core/sgbuf.c | 201 --
sound/firewire/motu/Makefile | 3 +-
sound/firewire/motu/amdtp-motu.c | 11 +-
.../motu/motu-command-dsp-message-parser.c | 181 +
sound/firewire/motu/motu-hwdep.c | 119 +-
sound/firewire/motu/motu-protocol-v2.c | 14 +-
sound/firewire/motu/motu-protocol-v3.c | 14 +-
.../motu/motu-register-dsp-message-parser.c | 420 +++
sound/firewire/motu/motu-stream.c | 10 +
sound/firewire/motu/motu.c | 10 +
sound/firewire/motu/motu.h | 23 +
sound/firewire/oxfw/oxfw-stream.c | 7 +-
sound/firewire/oxfw/oxfw.c | 8 +
sound/firewire/oxfw/oxfw.h | 5 +
sound/hda/ext/hdac_ext_stream.c | 46 +-
sound/hda/hdac_stream.c | 4 +-
sound/hda/intel-dsp-config.c | 22 +-
sound/isa/Kconfig | 2 +-
sound/isa/gus/gus_dma.c | 2 +
sound/pci/Kconfig | 1 +
sound/pci/hda/hda_intel.c | 49 +-
sound/pci/hda/patch_realtek.c | 19 +
sound/soc/amd/Kconfig | 40 +-
sound/soc/amd/Makefile | 2 +
sound/soc/amd/acp-da7219-max98357a.c | 6 +-
sound/soc/amd/acp-pcm-dma.c | 6 +-
sound/soc/amd/acp-rt5645.c | 2 +-
sound/soc/amd/acp.h | 2 +
sound/soc/amd/acp/Kconfig | 61 +
sound/soc/amd/acp/Makefile | 26 +
sound/soc/amd/acp/acp-i2s.c | 340 ++
sound/soc/amd/acp/acp-legacy-mach.c | 104 +
sound/soc/amd/acp/acp-mach-common.c | 600 ++++
sound/soc/amd/acp/acp-mach.h | 57 +
sound/soc/amd/acp/acp-platform.c | 315 ++
sound/soc/amd/acp/acp-renoir.c | 163 +
sound/soc/amd/acp/acp-sof-mach.c | 131 +
sound/soc/amd/acp/amd.h | 145 +
sound/soc/amd/acp/chip_offset_byte.h | 76 +
sound/soc/amd/vangogh/Makefile | 2 +
sound/soc/amd/vangogh/acp5x-i2s.c | 2 +-
sound/soc/amd/vangogh/acp5x-mach.c | 386 +++
sound/soc/amd/vangogh/acp5x.h | 2 +-
sound/soc/amd/vangogh/pci-acp5x.c | 3 +
sound/soc/amd/yc/Makefile | 9 +
sound/soc/amd/yc/acp6x-mach.c | 194 ++
sound/soc/amd/yc/acp6x-pdm-dma.c | 448 +++
sound/soc/amd/yc/acp6x.h | 107 +
sound/soc/amd/yc/acp6x_chip_offset_byte.h | 444 +++
sound/soc/amd/yc/pci-acp6x.c | 338 ++
sound/soc/atmel/atmel-i2s.c | 6 +-
sound/soc/atmel/atmel_ssc_dai.c | 26 +-
sound/soc/atmel/atmel_wm8904.c | 2 +-
sound/soc/atmel/mchp-i2s-mcc.c | 10 +-
sound/soc/atmel/mikroe-proto.c | 4 +-
sound/soc/atmel/sam9g20_wm8731.c | 2 +-
sound/soc/atmel/sam9x5_wm8731.c | 2 +-
sound/soc/atmel/tse850-pcm5142.c | 2 +-
sound/soc/au1x/db1200.c | 6 +-
sound/soc/au1x/i2sc.c | 6 +-
sound/soc/au1x/psc-i2s.c | 10 +-
sound/soc/bcm/bcm2835-i2s.c | 56 +-
sound/soc/bcm/cygnus-ssp.c | 6 +-
sound/soc/cirrus/edb93xx.c | 2 +-
sound/soc/cirrus/ep93xx-i2s.c | 10 +-
sound/soc/cirrus/snappercl15.c | 2 +-
sound/soc/codecs/88pm860x-codec.c | 18 +-
sound/soc/codecs/Kconfig | 45 +
sound/soc/codecs/Makefile | 12 +
sound/soc/codecs/ab8500-codec.c | 20 +-
sound/soc/codecs/ad1836.c | 6 +-
sound/soc/codecs/ad193x.c | 10 +-
sound/soc/codecs/adau1372.c | 14 +-
sound/soc/codecs/adau1373.c | 14 +-
sound/soc/codecs/adau1701.c | 6 +-
sound/soc/codecs/adau17x1.c | 6 +-
sound/soc/codecs/adau1977.c | 31 +-
sound/soc/codecs/adav80x.c | 6 +-
sound/soc/codecs/ak4104.c | 4 +-
sound/soc/codecs/ak4118.c | 20 +-
sound/soc/codecs/ak4458.c | 12 +-
sound/soc/codecs/ak4642.c | 8 +-
sound/soc/codecs/ak4671.c | 6 +-
sound/soc/codecs/ak5558.c | 10 +-
sound/soc/codecs/alc5623.c | 8 +-
sound/soc/codecs/alc5632.c | 8 +-
sound/soc/codecs/cpcap.c | 18 +-
sound/soc/codecs/cros_ec_codec.c | 4 +-
sound/soc/codecs/cs35l41-i2c.c | 115 +
sound/soc/codecs/cs35l41-spi.c | 140 +
sound/soc/codecs/cs35l41-tables.c | 594 ++++
sound/soc/codecs/cs35l41.c | 1445 ++++++++
sound/soc/codecs/cs35l41.h | 775 +++++
sound/soc/codecs/cs42l42.c | 465 ++-
sound/soc/codecs/cs42l42.h | 64 +-
sound/soc/codecs/cs47l15.c | 26 +-
sound/soc/codecs/cs47l24.c | 20 +-
sound/soc/codecs/cs47l35.c | 26 +-
sound/soc/codecs/cs47l85.c | 34 +-
sound/soc/codecs/cs47l90.c | 36 +-
sound/soc/codecs/cs47l92.c | 20 +-
sound/soc/codecs/es8316.c | 8 +-
sound/soc/codecs/lpass-rx-macro.c | 3 +-
sound/soc/codecs/lpass-tx-macro.c | 25 +-
sound/soc/codecs/lpass-va-macro.c | 3 +-
sound/soc/codecs/lpass-wsa-macro.c | 1 +
sound/soc/codecs/madera.c | 18 +-
sound/soc/codecs/max98390.c | 2 +-
sound/soc/codecs/max98520.c | 769 +++++
sound/soc/codecs/max98520.h | 159 +
sound/soc/codecs/max98927.c | 25 +
sound/soc/codecs/max98927.h | 1 +
sound/soc/codecs/mt6359.c | 2 +-
sound/soc/codecs/nau8821.c | 1714 ++++++++++
sound/soc/codecs/nau8821.h | 533 +++
sound/soc/codecs/nau8824.c | 70 +
sound/soc/codecs/nau8824.h | 3 +-
sound/soc/codecs/nau8825.c | 48 +-
sound/soc/codecs/pcm5102a.c | 2 +-
sound/soc/codecs/rt1011.c | 10 +
sound/soc/codecs/rt1015.c | 2 +-
sound/soc/codecs/rt1016.c | 2 +-
sound/soc/codecs/rt1019.c | 2 +-
sound/soc/codecs/rt1305.c | 2 +-
sound/soc/codecs/rt1308.c | 2 +-
sound/soc/codecs/rt5514.c | 2 +-
sound/soc/codecs/rt5616.c | 2 +-
sound/soc/codecs/rt5640.c | 2 +-
sound/soc/codecs/rt5645.c | 2 +-
sound/soc/codecs/rt5651.c | 9 +-
sound/soc/codecs/rt5659.c | 2 +-
sound/soc/codecs/rt5660.c | 2 +-
sound/soc/codecs/rt5663.c | 2 +-
sound/soc/codecs/rt5665.c | 2 +-
sound/soc/codecs/rt5668.c | 2 +-
sound/soc/codecs/rt5670.c | 2 +-
sound/soc/codecs/rt5677.c | 2 +-
sound/soc/codecs/rt5682-i2c.c | 17 +
sound/soc/codecs/rt5682.c | 132 +-
sound/soc/codecs/rt5682.h | 23 +
sound/soc/codecs/rt5682s.c | 3197 ++++++++++++++++++
sound/soc/codecs/rt5682s.h | 1474 ++++++++
sound/soc/codecs/rt9120.c | 495 +++
sound/soc/codecs/tfa989x.c | 21 +
sound/soc/codecs/tlv320aic32x4-i2c.c | 4 +-
sound/soc/codecs/tlv320aic32x4-spi.c | 4 +-
sound/soc/codecs/tlv320aic32x4.c | 4 +-
sound/soc/codecs/tlv320aic32x4.h | 2 +-
sound/soc/codecs/tlv320aic3x-i2c.c | 4 +-
sound/soc/codecs/tlv320aic3x-spi.c | 4 +-
sound/soc/codecs/tlv320aic3x.c | 3 +-
sound/soc/codecs/tlv320aic3x.h | 2 +-
sound/soc/codecs/wcd9335.c | 2 +-
sound/soc/codecs/wm2200.c | 30 +-
sound/soc/codecs/wm5102.c | 16 +-
sound/soc/codecs/wm5110.c | 24 +-
sound/soc/codecs/wm8731.c | 6 -
sound/soc/codecs/wm8900.c | 6 -
sound/soc/codecs/wm8962.c | 13 +-
sound/soc/codecs/wm_adsp.c | 3303 ++----------------
sound/soc/codecs/wm_adsp.h | 105 +-
sound/soc/codecs/zl38060.c | 4 +-
sound/soc/dwc/dwc-i2s.c | 12 +-
sound/soc/fsl/eukrea-tlv320.c | 2 +-
sound/soc/fsl/fsl-asoc-card.c | 54 +-
sound/soc/fsl/fsl_audmix.c | 8 +-
sound/soc/fsl/fsl_esai.c | 28 +-
sound/soc/fsl/fsl_mqs.c | 4 +-
sound/soc/fsl/fsl_rpmsg.c | 47 +-
sound/soc/fsl/fsl_rpmsg.h | 12 +
sound/soc/fsl/fsl_sai.c | 34 +-
sound/soc/fsl/fsl_sai.h | 2 +-
sound/soc/fsl/fsl_spdif.c | 85 +
sound/soc/fsl/fsl_ssi.c | 38 +-
sound/soc/fsl/imx-audmix.c | 12 +-
sound/soc/fsl/imx-card.c | 6 +-
sound/soc/fsl/imx-es8328.c | 2 +-
sound/soc/fsl/imx-hdmi.c | 6 +-
sound/soc/fsl/imx-rpmsg.c | 2 +-
sound/soc/fsl/imx-sgtl5000.c | 2 +-
sound/soc/fsl/mpc8610_hpcd.c | 16 +-
sound/soc/fsl/p1022_ds.c | 16 +-
sound/soc/fsl/p1022_rdk.c | 2 +-
sound/soc/generic/Kconfig | 20 +
sound/soc/generic/Makefile | 6 +
sound/soc/generic/audio-graph-card.c | 4 +-
.../soc/generic/audio-graph-card2-custom-sample.c | 183 +
.../generic/audio-graph-card2-custom-sample.dtsi | 227 ++
sound/soc/generic/audio-graph-card2.c | 1281 +++++++
sound/soc/generic/simple-card-utils.c | 50 +-
sound/soc/generic/test-component.c | 659 ++++
sound/soc/intel/boards/Kconfig | 18 +-
sound/soc/intel/boards/Makefile | 2 +
sound/soc/intel/boards/bdw-rt5650.c | 2 +-
sound/soc/intel/boards/bdw-rt5677.c | 2 +-
sound/soc/intel/boards/broadwell.c | 2 +-
sound/soc/intel/boards/bxt_da7219_max98357a.c | 4 +-
sound/soc/intel/boards/bxt_rt298.c | 2 +-
sound/soc/intel/boards/bytcht_cx2072x.c | 4 +-
sound/soc/intel/boards/bytcht_da7213.c | 4 +-
sound/soc/intel/boards/bytcht_es8316.c | 4 +-
sound/soc/intel/boards/bytcht_nocodec.c | 4 +-
sound/soc/intel/boards/bytcr_rt5640.c | 120 +-
sound/soc/intel/boards/bytcr_rt5651.c | 122 +-
sound/soc/intel/boards/bytcr_wm5102.c | 4 +-
sound/soc/intel/boards/cht_bsw_max98090_ti.c | 4 +-
sound/soc/intel/boards/cht_bsw_nau8824.c | 4 +-
sound/soc/intel/boards/cht_bsw_rt5645.c | 6 +-
sound/soc/intel/boards/cht_bsw_rt5672.c | 2 +-
sound/soc/intel/boards/glk_rt5682_max98357a.c | 56 +-
sound/soc/intel/boards/haswell.c | 2 +-
sound/soc/intel/boards/kbl_da7219_max98357a.c | 4 +-
sound/soc/intel/boards/kbl_da7219_max98927.c | 6 +-
sound/soc/intel/boards/kbl_rt5660.c | 2 +-
sound/soc/intel/boards/kbl_rt5663_max98927.c | 6 +-
.../soc/intel/boards/kbl_rt5663_rt5514_max98927.c | 4 +-
sound/soc/intel/boards/skl_nau88l25_max98357a.c | 4 +-
sound/soc/intel/boards/skl_nau88l25_ssm4567.c | 4 +-
sound/soc/intel/boards/skl_rt286.c | 2 +-
sound/soc/intel/boards/sof_es8336.c | 569 ++++
sound/soc/intel/boards/sof_rt5682.c | 96 +-
sound/soc/intel/boards/sof_sdw.c | 10 +
sound/soc/intel/common/soc-acpi-intel-adl-match.c | 24 +-
sound/soc/intel/common/soc-acpi-intel-bxt-match.c | 8 +-
sound/soc/intel/common/soc-acpi-intel-byt-match.c | 68 +-
sound/soc/intel/common/soc-acpi-intel-cht-match.c | 69 +-
sound/soc/intel/common/soc-acpi-intel-cml-match.c | 8 +-
sound/soc/intel/common/soc-acpi-intel-glk-match.c | 17 +-
sound/soc/intel/common/soc-acpi-intel-jsl-match.c | 27 +-
sound/soc/intel/common/soc-acpi-intel-kbl-match.c | 12 +-
sound/soc/intel/common/soc-acpi-intel-skl-match.c | 2 +-
sound/soc/intel/common/soc-acpi-intel-tgl-match.c | 60 +-
sound/soc/intel/skylake/skl-topology.c | 6 +-
sound/soc/mediatek/Kconfig | 23 +-
sound/soc/mediatek/common/mtk-afe-fe-dai.c | 3 +-
sound/soc/mediatek/mt2701/mt2701-cs42448.c | 2 +-
sound/soc/mediatek/mt2701/mt2701-wm8960.c | 2 +-
.../mt8183/mt8183-mt6358-ts3a227-max98357.c | 2 +-
sound/soc/mediatek/mt8195/Makefile | 1 +
sound/soc/mediatek/mt8195/mt8195-afe-pcm.c | 10 +-
sound/soc/mediatek/mt8195/mt8195-audsys-clk.c | 152 +-
sound/soc/mediatek/mt8195/mt8195-dai-adda.c | 8 +-
sound/soc/mediatek/mt8195/mt8195-dai-etdm.c | 4 +-
.../mediatek/mt8195/mt8195-mt6359-rt1011-rt5682.c | 1155 +++++++
.../mediatek/mt8195/mt8195-mt6359-rt1019-rt5682.c | 54 +-
sound/soc/meson/aiu-encoder-spdif.c | 2 +-
sound/soc/meson/axg-card.c | 1 +
sound/soc/meson/axg-tdm-interface.c | 26 +-
sound/soc/meson/meson-card-utils.c | 1 +
sound/soc/meson/meson-codec-glue.c | 3 -
sound/soc/qcom/Kconfig | 25 +-
sound/soc/qcom/apq8096.c | 2 +-
sound/soc/qcom/common.c | 4 +-
sound/soc/qcom/qdsp6/Makefile | 11 +-
sound/soc/qcom/qdsp6/audioreach.c | 1130 +++++++
sound/soc/qcom/qdsp6/audioreach.h | 726 ++++
sound/soc/qcom/qdsp6/q6afe-clocks.c | 187 +-
sound/soc/qcom/qdsp6/q6afe-dai.c | 689 +---
sound/soc/qcom/qdsp6/q6apm-dai.c | 416 +++
sound/soc/qcom/qdsp6/q6apm-lpass-dais.c | 260 ++
sound/soc/qcom/qdsp6/q6apm.c | 822 +++++
sound/soc/qcom/qdsp6/q6apm.h | 152 +
sound/soc/qcom/qdsp6/q6dsp-lpass-clocks.c | 186 +
sound/soc/qcom/qdsp6/q6dsp-lpass-clocks.h | 30 +
sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c | 627 ++++
sound/soc/qcom/qdsp6/q6dsp-lpass-ports.h | 22 +
sound/soc/qcom/qdsp6/q6prm-clocks.c | 85 +
sound/soc/qcom/qdsp6/q6prm.c | 202 ++
sound/soc/qcom/qdsp6/q6prm.h | 78 +
sound/soc/qcom/qdsp6/topology.c | 1113 ++++++
sound/soc/qcom/sm8250.c | 79 +
sound/soc/rockchip/Kconfig | 11 +
sound/soc/rockchip/Makefile | 5 +-
sound/soc/rockchip/rockchip_i2s.c | 3 +-
sound/soc/rockchip/rockchip_i2s_tdm.c | 1762 ++++++++++
sound/soc/rockchip/rockchip_i2s_tdm.h | 398 +++
sound/soc/rockchip/rockchip_pcm.c | 44 -
sound/soc/rockchip/rockchip_pcm.h | 11 -
sound/soc/rockchip/rockchip_pdm.c | 112 +-
sound/soc/rockchip/rockchip_pdm.h | 6 +
sound/soc/samsung/s3c-i2s-v2.c | 2 +
sound/soc/sh/rcar/core.c | 1 +
sound/soc/soc-acpi.c | 24 +-
sound/soc/soc-component.c | 87 +-
sound/soc/soc-compress.c | 43 +-
sound/soc/soc-core.c | 54 +-
sound/soc/soc-dapm.c | 2 +
sound/soc/soc-generic-dmaengine-pcm.c | 6 +-
sound/soc/soc-pcm.c | 27 +-
sound/soc/soc-topology.c | 52 +-
sound/soc/soc-utils.c | 13 +
sound/soc/sof/Kconfig | 6 +-
sound/soc/sof/Makefile | 6 +-
sound/soc/sof/compress.c | 158 +-
sound/soc/sof/compress.h | 32 -
sound/soc/sof/control.c | 192 +-
sound/soc/sof/core.c | 35 +-
sound/soc/sof/debug.c | 87 +-
sound/soc/sof/imx/Kconfig | 2 +
sound/soc/sof/imx/imx-ops.h | 10 +
sound/soc/sof/imx/imx8.c | 47 +-
sound/soc/sof/imx/imx8m.c | 41 +-
sound/soc/sof/intel/Makefile | 5 +-
sound/soc/sof/intel/apl.c | 7 +-
sound/soc/sof/intel/atom.c | 5 +-
sound/soc/sof/intel/bdw.c | 19 +-
sound/soc/sof/intel/byt.c | 30 +-
sound/soc/sof/intel/cnl.c | 7 +-
sound/soc/sof/intel/hda-dai.c | 269 +-
sound/soc/sof/intel/hda-dsp.c | 61 +-
sound/soc/sof/intel/hda-ipc.c | 15 +-
sound/soc/sof/intel/hda-loader.c | 11 +-
.../soc/sof/intel/{hda-compress.c => hda-probes.c} | 0
sound/soc/sof/intel/hda-stream.c | 92 +-
sound/soc/sof/intel/hda.c | 232 +-
sound/soc/sof/intel/hda.h | 52 +-
sound/soc/sof/intel/icl.c | 7 +-
sound/soc/sof/intel/pci-apl.c | 2 -
sound/soc/sof/intel/pci-cnl.c | 3 -
sound/soc/sof/intel/pci-icl.c | 2 -
sound/soc/sof/intel/pci-tgl.c | 5 -
sound/soc/sof/intel/pci-tng.c | 16 +-
sound/soc/sof/intel/tgl.c | 7 +-
sound/soc/sof/ipc.c | 217 +-
sound/soc/sof/loader.c | 161 +-
sound/soc/sof/ops.c | 3 +
sound/soc/sof/ops.h | 77 +-
sound/soc/sof/pcm.c | 71 +-
sound/soc/sof/pm.c | 12 +-
sound/soc/sof/probe.h | 85 -
sound/soc/sof/sof-audio.c | 715 +++-
sound/soc/sof/sof-audio.h | 52 +-
sound/soc/sof/sof-of-dev.c | 24 +-
sound/soc/sof/sof-priv.h | 154 +-
sound/soc/sof/{probe.c => sof-probes.c} | 280 +-
sound/soc/sof/sof-probes.h | 38 +
sound/soc/sof/{intel/intel-ipc.c => stream-ipc.c} | 56 +-
sound/soc/sof/topology.c | 417 +--
sound/soc/sof/trace.c | 5 +-
sound/soc/sof/utils.c | 28 +-
sound/soc/sof/xtensa/core.c | 2 +-
sound/soc/tegra/Kconfig | 48 +
sound/soc/tegra/Makefile | 10 +
sound/soc/tegra/tegra210_adx.c | 531 +++
sound/soc/tegra/tegra210_adx.h | 72 +
sound/soc/tegra/tegra210_ahub.c | 511 ++-
sound/soc/tegra/tegra210_amx.c | 600 ++++
sound/soc/tegra/tegra210_amx.h | 93 +
sound/soc/tegra/tegra210_mixer.c | 674 ++++
sound/soc/tegra/tegra210_mixer.h | 100 +
sound/soc/tegra/tegra210_mvc.c | 645 ++++
sound/soc/tegra/tegra210_mvc.h | 117 +
sound/soc/tegra/tegra210_sfc.c | 3549 ++++++++++++++++++++
sound/soc/tegra/tegra210_sfc.h | 78 +
sound/soc/tegra/tegra_asoc_machine.c | 62 +-
sound/soc/tegra/tegra_asoc_machine.h | 1 +
sound/soc/ti/Kconfig | 2 +-
sound/soc/ti/davinci-evm.c | 2 +-
sound/soc/ti/omap-abe-twl6040.c | 2 +-
sound/soc/ux500/mop500_ab8500.c | 2 +-
sound/soc/ux500/mop500_ab8500.h | 2 +-
sound/usb/6fire/comm.c | 2 +-
sound/usb/6fire/firmware.c | 6 +-
sound/usb/card.h | 11 +-
sound/usb/clock.c | 8 +-
sound/usb/endpoint.c | 230 +-
sound/usb/endpoint.h | 13 +-
sound/usb/format.c | 1 +
sound/usb/implicit.c | 2 -
sound/usb/line6/driver.c | 14 +-
sound/usb/line6/driver.h | 2 +-
sound/usb/line6/podhd.c | 6 +-
sound/usb/line6/toneport.c | 2 +-
sound/usb/misc/ua101.c | 4 +-
sound/usb/mixer.c | 42 +-
sound/usb/mixer_quirks.c | 34 +
sound/usb/pcm.c | 164 +-
sound/usb/quirks-table.h | 58 +
sound/usb/quirks.c | 3 +
sound/usb/usx2y/usbusx2yaudio.c | 11 +-
sound/virtio/virtio_pcm_msg.c | 5 +-
477 files changed, 48310 insertions(+), 8057 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,apr.txt
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
create mode 100644 Documentation/devicetree/bindings/sound/audio-graph-card2.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/bt-sco.txt
create mode 100644 Documentation/devicetree/bindings/sound/cirrus,cs35l41.yaml
create mode 100644 Documentation/devicetree/bindings/sound/linux,bt-sco.yaml
create mode 100644 Documentation/devicetree/bindings/sound/linux,spdif-dit.yaml
create mode 100644 Documentation/devicetree/bindings/sound/maxim,max98520.yaml
create mode 100644 Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml
create mode 100644 Documentation/devicetree/bindings/sound/mt8195-mt6359-rt1011-rt5682.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/name-prefix.txt
create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml
create mode 100644 Documentation/devicetree/bindings/sound/nau8821.txt
create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-adx.yaml
create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-amx.yaml
create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-mixer.yaml
create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-mvc.yaml
create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-sfc.yaml
create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6apm-dai.yaml
create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-clocks.yaml
create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6dsp-lpass-ports.yaml
create mode 100644 Documentation/devicetree/bindings/sound/realtek,rt5682s.yaml
create mode 100644 Documentation/devicetree/bindings/sound/richtek,rt9120.yaml
create mode 100644 Documentation/devicetree/bindings/sound/rockchip,i2s-tdm.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/rockchip,pdm.txt
create mode 100644 Documentation/devicetree/bindings/sound/rockchip,pdm.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/simple-amplifier.txt
create mode 100644 Documentation/devicetree/bindings/sound/simple-audio-amplifier.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/spdif-transmitter.txt
create mode 100644 Documentation/devicetree/bindings/sound/test-component.yaml
create mode 100644 Documentation/devicetree/bindings/sound/wlf,wm8962.yaml
create mode 100644 Documentation/devicetree/bindings/sound/wlf,wm8978.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/wm8962.txt
create mode 100644 drivers/firmware/cirrus/Kconfig
create mode 100644 drivers/firmware/cirrus/Makefile
create mode 100644 drivers/firmware/cirrus/cs_dsp.c
create mode 100644 include/dt-bindings/soc/qcom,gpr.h
create mode 100644 include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h
create mode 100644 include/linux/firmware/cirrus/cs_dsp.h
rename {sound/soc/codecs => include/linux/firmware/cirrus}/wmfw.h (91%)
create mode 100644 include/sound/cs35l41.h
create mode 100644 include/sound/rt5682s.h
create mode 100644 include/uapi/sound/snd_ar_tokens.h
delete mode 100644 sound/core/sgbuf.c
create mode 100644 sound/firewire/motu/motu-command-dsp-message-parser.c
create mode 100644 sound/firewire/motu/motu-register-dsp-message-parser.c
create mode 100644 sound/soc/amd/acp/Kconfig
create mode 100644 sound/soc/amd/acp/Makefile
create mode 100644 sound/soc/amd/acp/acp-i2s.c
create mode 100644 sound/soc/amd/acp/acp-legacy-mach.c
create mode 100644 sound/soc/amd/acp/acp-mach-common.c
create mode 100644 sound/soc/amd/acp/acp-mach.h
create mode 100644 sound/soc/amd/acp/acp-platform.c
create mode 100644 sound/soc/amd/acp/acp-renoir.c
create mode 100644 sound/soc/amd/acp/acp-sof-mach.c
create mode 100644 sound/soc/amd/acp/amd.h
create mode 100644 sound/soc/amd/acp/chip_offset_byte.h
create mode 100644 sound/soc/amd/vangogh/acp5x-mach.c
create mode 100644 sound/soc/amd/yc/Makefile
create mode 100644 sound/soc/amd/yc/acp6x-mach.c
create mode 100644 sound/soc/amd/yc/acp6x-pdm-dma.c
create mode 100644 sound/soc/amd/yc/acp6x.h
create mode 100644 sound/soc/amd/yc/acp6x_chip_offset_byte.h
create mode 100644 sound/soc/amd/yc/pci-acp6x.c
create mode 100644 sound/soc/codecs/cs35l41-i2c.c
create mode 100644 sound/soc/codecs/cs35l41-spi.c
create mode 100644 sound/soc/codecs/cs35l41-tables.c
create mode 100644 sound/soc/codecs/cs35l41.c
create mode 100644 sound/soc/codecs/cs35l41.h
create mode 100644 sound/soc/codecs/max98520.c
create mode 100644 sound/soc/codecs/max98520.h
create mode 100644 sound/soc/codecs/nau8821.c
create mode 100644 sound/soc/codecs/nau8821.h
create mode 100644 sound/soc/codecs/rt5682s.c
create mode 100644 sound/soc/codecs/rt5682s.h
create mode 100644 sound/soc/codecs/rt9120.c
create mode 100644 sound/soc/generic/audio-graph-card2-custom-sample.c
create mode 100644 sound/soc/generic/audio-graph-card2-custom-sample.dtsi
create mode 100644 sound/soc/generic/audio-graph-card2.c
create mode 100644 sound/soc/generic/test-component.c
create mode 100644 sound/soc/intel/boards/sof_es8336.c
create mode 100644 sound/soc/mediatek/mt8195/mt8195-mt6359-rt1011-rt5682.c
create mode 100644 sound/soc/qcom/qdsp6/audioreach.c
create mode 100644 sound/soc/qcom/qdsp6/audioreach.h
create mode 100644 sound/soc/qcom/qdsp6/q6apm-dai.c
create mode 100644 sound/soc/qcom/qdsp6/q6apm-lpass-dais.c
create mode 100644 sound/soc/qcom/qdsp6/q6apm.c
create mode 100644 sound/soc/qcom/qdsp6/q6apm.h
create mode 100644 sound/soc/qcom/qdsp6/q6dsp-lpass-clocks.c
create mode 100644 sound/soc/qcom/qdsp6/q6dsp-lpass-clocks.h
create mode 100644 sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
create mode 100644 sound/soc/qcom/qdsp6/q6dsp-lpass-ports.h
create mode 100644 sound/soc/qcom/qdsp6/q6prm-clocks.c
create mode 100644 sound/soc/qcom/qdsp6/q6prm.c
create mode 100644 sound/soc/qcom/qdsp6/q6prm.h
create mode 100644 sound/soc/qcom/qdsp6/topology.c
create mode 100644 sound/soc/rockchip/rockchip_i2s_tdm.c
create mode 100644 sound/soc/rockchip/rockchip_i2s_tdm.h
delete mode 100644 sound/soc/rockchip/rockchip_pcm.c
delete mode 100644 sound/soc/rockchip/rockchip_pcm.h
delete mode 100644 sound/soc/sof/compress.h
create mode 100644 sound/soc/sof/imx/imx-ops.h
rename sound/soc/sof/intel/{hda-compress.c => hda-probes.c} (100%)
delete mode 100644 sound/soc/sof/probe.h
rename sound/soc/sof/{probe.c => sof-probes.c} (52%)
create mode 100644 sound/soc/sof/sof-probes.h
rename sound/soc/sof/{intel/intel-ipc.c => stream-ipc.c} (56%)
create mode 100644 sound/soc/tegra/tegra210_adx.c
create mode 100644 sound/soc/tegra/tegra210_adx.h
create mode 100644 sound/soc/tegra/tegra210_amx.c
create mode 100644 sound/soc/tegra/tegra210_amx.h
create mode 100644 sound/soc/tegra/tegra210_mixer.c
create mode 100644 sound/soc/tegra/tegra210_mixer.h
create mode 100644 sound/soc/tegra/tegra210_mvc.c
create mode 100644 sound/soc/tegra/tegra210_mvc.h
create mode 100644 sound/soc/tegra/tegra210_sfc.c
create mode 100644 sound/soc/tegra/tegra210_sfc.h


2021-11-03 15:06:22

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

The pull request you sent on Wed, 03 Nov 2021 11:24:10 +0100:

> git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/ff0700f03609b9f0defacd4ce96d9519d721e0a2

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html

2021-11-17 16:19:22

by Kirill A. Shutemov

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> Linus,
>
> please pull sound updates for v5.16-rc1 from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
>
> The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
>
> ----------------------------------------------------------------
>
> sound updates for 5.16-rc1
>
> Lots of code development have been see in ASoC side as usual, while
> the continued development on memalloc helper and USB-audio low-
> latency support are found in the rest. Note that a few changes in the
> unusual places like arch/sh are included, which are a part of ASoC DAI
> format cleanups.
>
> ALSA core:
> - Continued memallloc helper updates and cleanups, now supporting
> non-coherent and non-contiguous pages
> - Fixes for races in mixer OSS layer
>
> ASoC:
> - A new version of the audio graph card which supports a wider range
> of systems
> - Several conversions to YAML DT bindings
> - Continuing cleanups to the SOF and Intel code
> - Move of the Cirrus DSP framework into drivers/firmware to allow for
> future use by non-audio DSPs
> - An overhaul of the cs42l42 driver, correcting many problems
> - DAI format terminology conversions over many drivers for cleanups
> - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> RT5682S, and RT9120 and Rockchip RV1126 and RK3568
>
> USB-audio:
> - Continued improvements on low-latency playback
> - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
>
> HD-audio:
> - Reduce excessive udelay() calls on Intel platforms; this should
> reduce the CPU load with PulseAudio
> - Quirks for HP and Clevo laptops
>
> FireWire:
> - Support for meter information on MOTU
>

...

> Takashi Iwai (29):
> ALSA: hda: Reduce udelay() at SKL+ position reporting
> ALSA: hda: Use position buffer for SKL+ again
> ALSA: usb-audio: Restrict rates for the shared clocks
> ALSA: usb-audio: Fix possible race at sync of urb completions
> ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> ALSA: usb-audio: Check available frames for the next packet size
> ALSA: usb-audio: Add spinlock to stop_urbs()
> ALSA: usb-audio: Improved lowlatency playback support

This commit breaks audio playback for me. The sample plays for fraction of
a second than stops.

I use SMSL SA300. Let me know what ifo is needed to track it down.

Also I can test potential fixups if needed.

--
Kirill A. Shutemov

2021-11-17 16:24:38

by Takashi Iwai

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Wed, 17 Nov 2021 17:18:55 +0100,
Kirill A. Shutemov wrote:
>
> On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> > Linus,
> >
> > please pull sound updates for v5.16-rc1 from:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
> >
> > The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
> >
> > ----------------------------------------------------------------
> >
> > sound updates for 5.16-rc1
> >
> > Lots of code development have been see in ASoC side as usual, while
> > the continued development on memalloc helper and USB-audio low-
> > latency support are found in the rest. Note that a few changes in the
> > unusual places like arch/sh are included, which are a part of ASoC DAI
> > format cleanups.
> >
> > ALSA core:
> > - Continued memallloc helper updates and cleanups, now supporting
> > non-coherent and non-contiguous pages
> > - Fixes for races in mixer OSS layer
> >
> > ASoC:
> > - A new version of the audio graph card which supports a wider range
> > of systems
> > - Several conversions to YAML DT bindings
> > - Continuing cleanups to the SOF and Intel code
> > - Move of the Cirrus DSP framework into drivers/firmware to allow for
> > future use by non-audio DSPs
> > - An overhaul of the cs42l42 driver, correcting many problems
> > - DAI format terminology conversions over many drivers for cleanups
> > - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> > MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> > Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> > RT5682S, and RT9120 and Rockchip RV1126 and RK3568
> >
> > USB-audio:
> > - Continued improvements on low-latency playback
> > - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
> >
> > HD-audio:
> > - Reduce excessive udelay() calls on Intel platforms; this should
> > reduce the CPU load with PulseAudio
> > - Quirks for HP and Clevo laptops
> >
> > FireWire:
> > - Support for meter information on MOTU
> >
>
> ...
>
> > Takashi Iwai (29):
> > ALSA: hda: Reduce udelay() at SKL+ position reporting
> > ALSA: hda: Use position buffer for SKL+ again
> > ALSA: usb-audio: Restrict rates for the shared clocks
> > ALSA: usb-audio: Fix possible race at sync of urb completions
> > ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> > ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> > ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> > ALSA: usb-audio: Check available frames for the next packet size
> > ALSA: usb-audio: Add spinlock to stop_urbs()
> > ALSA: usb-audio: Improved lowlatency playback support
>
> This commit breaks audio playback for me. The sample plays for fraction of
> a second than stops.
>
> I use SMSL SA300. Let me know what ifo is needed to track it down.
>
> Also I can test potential fixups if needed.

Could you give alsa-info.sh output with the device? Run the script
with --no-upload option, and attach the output.
Also /proc/asound/card*/stream* file for that usb device, too,
please.

And, which environment are you testing, more exactly? Which platform,
and with PulseAudio, pipewire, JACK, or direct ALSA device use?

For checking the behavior, we'd need to check hw_params in
/proc/asound/card*/pcm*/sub*/* for the corresponding device during
playback/capture operations.


Takashi

2021-11-17 17:48:35

by Kirill A. Shutemov

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Wed, Nov 17, 2021 at 05:24:28PM +0100, Takashi Iwai wrote:
> On Wed, 17 Nov 2021 17:18:55 +0100,
> Kirill A. Shutemov wrote:
> >
> > On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> > > Linus,
> > >
> > > please pull sound updates for v5.16-rc1 from:
> > >
> > > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
> > >
> > > The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
> > >
> > > ----------------------------------------------------------------
> > >
> > > sound updates for 5.16-rc1
> > >
> > > Lots of code development have been see in ASoC side as usual, while
> > > the continued development on memalloc helper and USB-audio low-
> > > latency support are found in the rest. Note that a few changes in the
> > > unusual places like arch/sh are included, which are a part of ASoC DAI
> > > format cleanups.
> > >
> > > ALSA core:
> > > - Continued memallloc helper updates and cleanups, now supporting
> > > non-coherent and non-contiguous pages
> > > - Fixes for races in mixer OSS layer
> > >
> > > ASoC:
> > > - A new version of the audio graph card which supports a wider range
> > > of systems
> > > - Several conversions to YAML DT bindings
> > > - Continuing cleanups to the SOF and Intel code
> > > - Move of the Cirrus DSP framework into drivers/firmware to allow for
> > > future use by non-audio DSPs
> > > - An overhaul of the cs42l42 driver, correcting many problems
> > > - DAI format terminology conversions over many drivers for cleanups
> > > - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> > > MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> > > Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> > > RT5682S, and RT9120 and Rockchip RV1126 and RK3568
> > >
> > > USB-audio:
> > > - Continued improvements on low-latency playback
> > > - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
> > >
> > > HD-audio:
> > > - Reduce excessive udelay() calls on Intel platforms; this should
> > > reduce the CPU load with PulseAudio
> > > - Quirks for HP and Clevo laptops
> > >
> > > FireWire:
> > > - Support for meter information on MOTU
> > >
> >
> > ...
> >
> > > Takashi Iwai (29):
> > > ALSA: hda: Reduce udelay() at SKL+ position reporting
> > > ALSA: hda: Use position buffer for SKL+ again
> > > ALSA: usb-audio: Restrict rates for the shared clocks
> > > ALSA: usb-audio: Fix possible race at sync of urb completions
> > > ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> > > ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> > > ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> > > ALSA: usb-audio: Check available frames for the next packet size
> > > ALSA: usb-audio: Add spinlock to stop_urbs()
> > > ALSA: usb-audio: Improved lowlatency playback support
> >
> > This commit breaks audio playback for me. The sample plays for fraction of
> > a second than stops.
> >
> > I use SMSL SA300. Let me know what ifo is needed to track it down.
> >
> > Also I can test potential fixups if needed.
>
> Could you give alsa-info.sh output with the device? Run the script
> with --no-upload option, and attach the output.

Attached. I run it on kernel without the commit. I hope it is fine.

One note: I use monolitic kernel without CONFIG_MODULES. The script
complained about missing /proc/asound/modules and other modules related
stuff.

> Also /proc/asound/card*/stream* file for that usb device, too,
> please.

Attached.

> And, which environment are you testing, more exactly? Which platform,
> and with PulseAudio, pipewire, JACK, or direct ALSA device use?

Nothing fancy. Direct ALSA. I tested with 'speaker-test -c2 -t wav' during
bisect.

> For checking the behavior, we'd need to check hw_params in
> /proc/asound/card*/pcm*/sub*/* for the corresponding device during
> playback/capture operations.

You need this to be collected when the problem triggers, right?
I will follow up with this.

--
Kirill A. Shutemov


Attachments:
(No filename) (4.05 kB)
alsa-info.txt (21.50 kB)
card0-stream0 (757.00 B)
Download all attachments

2021-11-17 18:02:52

by Takashi Iwai

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Wed, 17 Nov 2021 18:48:26 +0100,
Kirill A. Shutemov wrote:
>
> On Wed, Nov 17, 2021 at 05:24:28PM +0100, Takashi Iwai wrote:
> > On Wed, 17 Nov 2021 17:18:55 +0100,
> > Kirill A. Shutemov wrote:
> > >
> > > On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> > > > Linus,
> > > >
> > > > please pull sound updates for v5.16-rc1 from:
> > > >
> > > > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
> > > >
> > > > The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
> > > >
> > > > ----------------------------------------------------------------
> > > >
> > > > sound updates for 5.16-rc1
> > > >
> > > > Lots of code development have been see in ASoC side as usual, while
> > > > the continued development on memalloc helper and USB-audio low-
> > > > latency support are found in the rest. Note that a few changes in the
> > > > unusual places like arch/sh are included, which are a part of ASoC DAI
> > > > format cleanups.
> > > >
> > > > ALSA core:
> > > > - Continued memallloc helper updates and cleanups, now supporting
> > > > non-coherent and non-contiguous pages
> > > > - Fixes for races in mixer OSS layer
> > > >
> > > > ASoC:
> > > > - A new version of the audio graph card which supports a wider range
> > > > of systems
> > > > - Several conversions to YAML DT bindings
> > > > - Continuing cleanups to the SOF and Intel code
> > > > - Move of the Cirrus DSP framework into drivers/firmware to allow for
> > > > future use by non-audio DSPs
> > > > - An overhaul of the cs42l42 driver, correcting many problems
> > > > - DAI format terminology conversions over many drivers for cleanups
> > > > - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> > > > MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> > > > Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> > > > RT5682S, and RT9120 and Rockchip RV1126 and RK3568
> > > >
> > > > USB-audio:
> > > > - Continued improvements on low-latency playback
> > > > - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
> > > >
> > > > HD-audio:
> > > > - Reduce excessive udelay() calls on Intel platforms; this should
> > > > reduce the CPU load with PulseAudio
> > > > - Quirks for HP and Clevo laptops
> > > >
> > > > FireWire:
> > > > - Support for meter information on MOTU
> > > >
> > >
> > > ...
> > >
> > > > Takashi Iwai (29):
> > > > ALSA: hda: Reduce udelay() at SKL+ position reporting
> > > > ALSA: hda: Use position buffer for SKL+ again
> > > > ALSA: usb-audio: Restrict rates for the shared clocks
> > > > ALSA: usb-audio: Fix possible race at sync of urb completions
> > > > ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> > > > ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> > > > ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> > > > ALSA: usb-audio: Check available frames for the next packet size
> > > > ALSA: usb-audio: Add spinlock to stop_urbs()
> > > > ALSA: usb-audio: Improved lowlatency playback support
> > >
> > > This commit breaks audio playback for me. The sample plays for fraction of
> > > a second than stops.
> > >
> > > I use SMSL SA300. Let me know what ifo is needed to track it down.
> > >
> > > Also I can test potential fixups if needed.
> >
> > Could you give alsa-info.sh output with the device? Run the script
> > with --no-upload option, and attach the output.
>
> Attached. I run it on kernel without the commit. I hope it is fine.
>
> One note: I use monolitic kernel without CONFIG_MODULES. The script
> complained about missing /proc/asound/modules and other modules related
> stuff.

It's a known problem I forgot, but this doesn't matter much.

> > Also /proc/asound/card*/stream* file for that usb device, too,
> > please.
>
> Attached.

Thanks!

> > And, which environment are you testing, more exactly? Which platform,
> > and with PulseAudio, pipewire, JACK, or direct ALSA device use?
>
> Nothing fancy. Direct ALSA. I tested with 'speaker-test -c2 -t wav' during
> bisect.

Did you notice the problem with other applications, too?

When you wrote "The sample plays for fraction of a second than
stops.", it means that the speaker-test program stalls? Or it's
shorter playbacks?

Also, please test booting with snd_usb_audio.lowlatency=0 boot
option. Does it behave like before again?

> > For checking the behavior, we'd need to check hw_params in
> > /proc/asound/card*/pcm*/sub*/* for the corresponding device during
> > playback/capture operations.
>
> You need this to be collected when the problem triggers, right?
> I will follow up with this.

I'll need to test my device at first. Maybe tomorrow.


thanks,

Takashi

2021-11-17 18:21:10

by Kirill A. Shutemov

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Wed, Nov 17, 2021 at 07:02:47PM +0100, Takashi Iwai wrote:
> On Wed, 17 Nov 2021 18:48:26 +0100,
> Kirill A. Shutemov wrote:
> >
> > On Wed, Nov 17, 2021 at 05:24:28PM +0100, Takashi Iwai wrote:
> > > On Wed, 17 Nov 2021 17:18:55 +0100,
> > > Kirill A. Shutemov wrote:
> > > >
> > > > On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> > > > > Linus,
> > > > >
> > > > > please pull sound updates for v5.16-rc1 from:
> > > > >
> > > > > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
> > > > >
> > > > > The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
> > > > >
> > > > > ----------------------------------------------------------------
> > > > >
> > > > > sound updates for 5.16-rc1
> > > > >
> > > > > Lots of code development have been see in ASoC side as usual, while
> > > > > the continued development on memalloc helper and USB-audio low-
> > > > > latency support are found in the rest. Note that a few changes in the
> > > > > unusual places like arch/sh are included, which are a part of ASoC DAI
> > > > > format cleanups.
> > > > >
> > > > > ALSA core:
> > > > > - Continued memallloc helper updates and cleanups, now supporting
> > > > > non-coherent and non-contiguous pages
> > > > > - Fixes for races in mixer OSS layer
> > > > >
> > > > > ASoC:
> > > > > - A new version of the audio graph card which supports a wider range
> > > > > of systems
> > > > > - Several conversions to YAML DT bindings
> > > > > - Continuing cleanups to the SOF and Intel code
> > > > > - Move of the Cirrus DSP framework into drivers/firmware to allow for
> > > > > future use by non-audio DSPs
> > > > > - An overhaul of the cs42l42 driver, correcting many problems
> > > > > - DAI format terminology conversions over many drivers for cleanups
> > > > > - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> > > > > MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> > > > > Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> > > > > RT5682S, and RT9120 and Rockchip RV1126 and RK3568
> > > > >
> > > > > USB-audio:
> > > > > - Continued improvements on low-latency playback
> > > > > - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
> > > > >
> > > > > HD-audio:
> > > > > - Reduce excessive udelay() calls on Intel platforms; this should
> > > > > reduce the CPU load with PulseAudio
> > > > > - Quirks for HP and Clevo laptops
> > > > >
> > > > > FireWire:
> > > > > - Support for meter information on MOTU
> > > > >
> > > >
> > > > ...
> > > >
> > > > > Takashi Iwai (29):
> > > > > ALSA: hda: Reduce udelay() at SKL+ position reporting
> > > > > ALSA: hda: Use position buffer for SKL+ again
> > > > > ALSA: usb-audio: Restrict rates for the shared clocks
> > > > > ALSA: usb-audio: Fix possible race at sync of urb completions
> > > > > ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> > > > > ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> > > > > ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> > > > > ALSA: usb-audio: Check available frames for the next packet size
> > > > > ALSA: usb-audio: Add spinlock to stop_urbs()
> > > > > ALSA: usb-audio: Improved lowlatency playback support
> > > >
> > > > This commit breaks audio playback for me. The sample plays for fraction of
> > > > a second than stops.
> > > >
> > > > I use SMSL SA300. Let me know what ifo is needed to track it down.
> > > >
> > > > Also I can test potential fixups if needed.
> > >
> > > Could you give alsa-info.sh output with the device? Run the script
> > > with --no-upload option, and attach the output.
> >
> > Attached. I run it on kernel without the commit. I hope it is fine.
> >
> > One note: I use monolitic kernel without CONFIG_MODULES. The script
> > complained about missing /proc/asound/modules and other modules related
> > stuff.
>
> It's a known problem I forgot, but this doesn't matter much.
>
> > > Also /proc/asound/card*/stream* file for that usb device, too,
> > > please.
> >
> > Attached.
>
> Thanks!
>
> > > And, which environment are you testing, more exactly? Which platform,
> > > and with PulseAudio, pipewire, JACK, or direct ALSA device use?
> >
> > Nothing fancy. Direct ALSA. I tested with 'speaker-test -c2 -t wav' during
> > bisect.
>
> Did you notice the problem with other applications, too?

Youtube in Firefox hangs trying to play a video. (Browser is still
functional otherwise)

> When you wrote "The sample plays for fraction of a second than
> stops.", it means that the speaker-test program stalls? Or it's
> shorter playbacks?

On "Front left" check, it stalls after "Fro" or so :P

The speaker-test can be terminated normally with ctrl-c and the symptoms
are the same if you try again.

> Also, please test booting with snd_usb_audio.lowlatency=0 boot
> option. Does it behave like before again?
>
> > > For checking the behavior, we'd need to check hw_params in
> > > /proc/asound/card*/pcm*/sub*/* for the corresponding device during
> > > playback/capture operations.
> >
> > You need this to be collected when the problem triggers, right?
> > I will follow up with this.
>
> I'll need to test my device at first. Maybe tomorrow.

Okay.

--
Kirill A. Shutemov

2021-11-18 08:01:47

by Takashi Iwai

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Wed, 17 Nov 2021 19:02:47 +0100,
Takashi Iwai wrote:
>
> On Wed, 17 Nov 2021 18:48:26 +0100,
> Kirill A. Shutemov wrote:
> >
> > On Wed, Nov 17, 2021 at 05:24:28PM +0100, Takashi Iwai wrote:
> > > On Wed, 17 Nov 2021 17:18:55 +0100,
> > > Kirill A. Shutemov wrote:
> > > >
> > > > On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> > > > > Linus,
> > > > >
> > > > > please pull sound updates for v5.16-rc1 from:
> > > > >
> > > > > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
> > > > >
> > > > > The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
> > > > >
> > > > > ----------------------------------------------------------------
> > > > >
> > > > > sound updates for 5.16-rc1
> > > > >
> > > > > Lots of code development have been see in ASoC side as usual, while
> > > > > the continued development on memalloc helper and USB-audio low-
> > > > > latency support are found in the rest. Note that a few changes in the
> > > > > unusual places like arch/sh are included, which are a part of ASoC DAI
> > > > > format cleanups.
> > > > >
> > > > > ALSA core:
> > > > > - Continued memallloc helper updates and cleanups, now supporting
> > > > > non-coherent and non-contiguous pages
> > > > > - Fixes for races in mixer OSS layer
> > > > >
> > > > > ASoC:
> > > > > - A new version of the audio graph card which supports a wider range
> > > > > of systems
> > > > > - Several conversions to YAML DT bindings
> > > > > - Continuing cleanups to the SOF and Intel code
> > > > > - Move of the Cirrus DSP framework into drivers/firmware to allow for
> > > > > future use by non-audio DSPs
> > > > > - An overhaul of the cs42l42 driver, correcting many problems
> > > > > - DAI format terminology conversions over many drivers for cleanups
> > > > > - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> > > > > MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> > > > > Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> > > > > RT5682S, and RT9120 and Rockchip RV1126 and RK3568
> > > > >
> > > > > USB-audio:
> > > > > - Continued improvements on low-latency playback
> > > > > - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
> > > > >
> > > > > HD-audio:
> > > > > - Reduce excessive udelay() calls on Intel platforms; this should
> > > > > reduce the CPU load with PulseAudio
> > > > > - Quirks for HP and Clevo laptops
> > > > >
> > > > > FireWire:
> > > > > - Support for meter information on MOTU
> > > > >
> > > >
> > > > ...
> > > >
> > > > > Takashi Iwai (29):
> > > > > ALSA: hda: Reduce udelay() at SKL+ position reporting
> > > > > ALSA: hda: Use position buffer for SKL+ again
> > > > > ALSA: usb-audio: Restrict rates for the shared clocks
> > > > > ALSA: usb-audio: Fix possible race at sync of urb completions
> > > > > ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> > > > > ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> > > > > ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> > > > > ALSA: usb-audio: Check available frames for the next packet size
> > > > > ALSA: usb-audio: Add spinlock to stop_urbs()
> > > > > ALSA: usb-audio: Improved lowlatency playback support
> > > >
> > > > This commit breaks audio playback for me. The sample plays for fraction of
> > > > a second than stops.
> > > >
> > > > I use SMSL SA300. Let me know what ifo is needed to track it down.
> > > >
> > > > Also I can test potential fixups if needed.
> > >
> > > Could you give alsa-info.sh output with the device? Run the script
> > > with --no-upload option, and attach the output.
> >
> > Attached. I run it on kernel without the commit. I hope it is fine.
> >
> > One note: I use monolitic kernel without CONFIG_MODULES. The script
> > complained about missing /proc/asound/modules and other modules related
> > stuff.
>
> It's a known problem I forgot, but this doesn't matter much.
>
> > > Also /proc/asound/card*/stream* file for that usb device, too,
> > > please.
> >
> > Attached.
>
> Thanks!
>
> > > And, which environment are you testing, more exactly? Which platform,
> > > and with PulseAudio, pipewire, JACK, or direct ALSA device use?
> >
> > Nothing fancy. Direct ALSA. I tested with 'speaker-test -c2 -t wav' during
> > bisect.
>
> Did you notice the problem with other applications, too?
>
> When you wrote "The sample plays for fraction of a second than
> stops.", it means that the speaker-test program stalls? Or it's
> shorter playbacks?
>
> Also, please test booting with snd_usb_audio.lowlatency=0 boot
> option. Does it behave like before again?
>
> > > For checking the behavior, we'd need to check hw_params in
> > > /proc/asound/card*/pcm*/sub*/* for the corresponding device during
> > > playback/capture operations.
> >
> > You need this to be collected when the problem triggers, right?
> > I will follow up with this.
>
> I'll need to test my device at first. Maybe tomorrow.

I checked mine, and all worked fine. So this doesn't look like a
generic breakage but somehow specific to certain devices or system.

Could you verify the lowlatency flag off?

Also, the simple aplay invocation (e.g. with a 2-channel 16bit sample)
also goes to the same problem, I suppose?


Takashi

2021-11-18 16:57:39

by Takashi Iwai

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Thu, 18 Nov 2021 09:01:38 +0100,
Takashi Iwai wrote:
>
> On Wed, 17 Nov 2021 19:02:47 +0100,
> Takashi Iwai wrote:
> >
> > On Wed, 17 Nov 2021 18:48:26 +0100,
> > Kirill A. Shutemov wrote:
> > >
> > > On Wed, Nov 17, 2021 at 05:24:28PM +0100, Takashi Iwai wrote:
> > > > On Wed, 17 Nov 2021 17:18:55 +0100,
> > > > Kirill A. Shutemov wrote:
> > > > >
> > > > > On Wed, Nov 03, 2021 at 11:24:10AM +0100, Takashi Iwai wrote:
> > > > > > Linus,
> > > > > >
> > > > > > please pull sound updates for v5.16-rc1 from:
> > > > > >
> > > > > > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-5.16-rc1
> > > > > >
> > > > > > The topmost commit is df0380b9539b04c1ae8854a984098da06d5f1e67
> > > > > >
> > > > > > ----------------------------------------------------------------
> > > > > >
> > > > > > sound updates for 5.16-rc1
> > > > > >
> > > > > > Lots of code development have been see in ASoC side as usual, while
> > > > > > the continued development on memalloc helper and USB-audio low-
> > > > > > latency support are found in the rest. Note that a few changes in the
> > > > > > unusual places like arch/sh are included, which are a part of ASoC DAI
> > > > > > format cleanups.
> > > > > >
> > > > > > ALSA core:
> > > > > > - Continued memallloc helper updates and cleanups, now supporting
> > > > > > non-coherent and non-contiguous pages
> > > > > > - Fixes for races in mixer OSS layer
> > > > > >
> > > > > > ASoC:
> > > > > > - A new version of the audio graph card which supports a wider range
> > > > > > of systems
> > > > > > - Several conversions to YAML DT bindings
> > > > > > - Continuing cleanups to the SOF and Intel code
> > > > > > - Move of the Cirrus DSP framework into drivers/firmware to allow for
> > > > > > future use by non-audio DSPs
> > > > > > - An overhaul of the cs42l42 driver, correcting many problems
> > > > > > - DAI format terminology conversions over many drivers for cleanups
> > > > > > - Support for AMD Vangogh and Yelow Cap, Cirrus CS35L41, Maxim
> > > > > > MAX98520 and MAX98360A, Mediatek MT8195, Nuvoton NAU8821, nVidia
> > > > > > Tegra210, NXP i.MX8ULP, Qualcomm AudioReach, Realtek ALC5682I-VS,
> > > > > > RT5682S, and RT9120 and Rockchip RV1126 and RK3568
> > > > > >
> > > > > > USB-audio:
> > > > > > - Continued improvements on low-latency playback
> > > > > > - Quirks for Pioneer devices, Line6 HX-Stomp XL, Audient iD14
> > > > > >
> > > > > > HD-audio:
> > > > > > - Reduce excessive udelay() calls on Intel platforms; this should
> > > > > > reduce the CPU load with PulseAudio
> > > > > > - Quirks for HP and Clevo laptops
> > > > > >
> > > > > > FireWire:
> > > > > > - Support for meter information on MOTU
> > > > > >
> > > > >
> > > > > ...
> > > > >
> > > > > > Takashi Iwai (29):
> > > > > > ALSA: hda: Reduce udelay() at SKL+ position reporting
> > > > > > ALSA: hda: Use position buffer for SKL+ again
> > > > > > ALSA: usb-audio: Restrict rates for the shared clocks
> > > > > > ALSA: usb-audio: Fix possible race at sync of urb completions
> > > > > > ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback
> > > > > > ALSA: usb-audio: Disable low-latency playback for free-wheel mode
> > > > > > ALSA: usb-audio: Disable low-latency mode for implicit feedback sync
> > > > > > ALSA: usb-audio: Check available frames for the next packet size
> > > > > > ALSA: usb-audio: Add spinlock to stop_urbs()
> > > > > > ALSA: usb-audio: Improved lowlatency playback support
> > > > >
> > > > > This commit breaks audio playback for me. The sample plays for fraction of
> > > > > a second than stops.
> > > > >
> > > > > I use SMSL SA300. Let me know what ifo is needed to track it down.
> > > > >
> > > > > Also I can test potential fixups if needed.
> > > >
> > > > Could you give alsa-info.sh output with the device? Run the script
> > > > with --no-upload option, and attach the output.
> > >
> > > Attached. I run it on kernel without the commit. I hope it is fine.
> > >
> > > One note: I use monolitic kernel without CONFIG_MODULES. The script
> > > complained about missing /proc/asound/modules and other modules related
> > > stuff.
> >
> > It's a known problem I forgot, but this doesn't matter much.
> >
> > > > Also /proc/asound/card*/stream* file for that usb device, too,
> > > > please.
> > >
> > > Attached.
> >
> > Thanks!
> >
> > > > And, which environment are you testing, more exactly? Which platform,
> > > > and with PulseAudio, pipewire, JACK, or direct ALSA device use?
> > >
> > > Nothing fancy. Direct ALSA. I tested with 'speaker-test -c2 -t wav' during
> > > bisect.
> >
> > Did you notice the problem with other applications, too?
> >
> > When you wrote "The sample plays for fraction of a second than
> > stops.", it means that the speaker-test program stalls? Or it's
> > shorter playbacks?
> >
> > Also, please test booting with snd_usb_audio.lowlatency=0 boot
> > option. Does it behave like before again?
> >
> > > > For checking the behavior, we'd need to check hw_params in
> > > > /proc/asound/card*/pcm*/sub*/* for the corresponding device during
> > > > playback/capture operations.
> > >
> > > You need this to be collected when the problem triggers, right?
> > > I will follow up with this.
> >
> > I'll need to test my device at first. Maybe tomorrow.
>
> I checked mine, and all worked fine. So this doesn't look like a
> generic breakage but somehow specific to certain devices or system.
>
> Could you verify the lowlatency flag off?
>
> Also, the simple aplay invocation (e.g. with a 2-channel 16bit sample)
> also goes to the same problem, I suppose?

And it'd be helpful if you can gather the log (from tracing) with the
patch below (from the start of speaker-test until the stall).


Takashi

diff --git a/sound/usb/endpoint.c b/sound/usb/endpoint.c
index 743b8287cfcd..b48e53b490b8 100644
--- a/sound/usb/endpoint.c
+++ b/sound/usb/endpoint.c
@@ -392,6 +392,7 @@ static void notify_xrun(struct snd_usb_endpoint *ep)
{
struct snd_usb_substream *data_subs;

+ DBG("XXX XRUN!\n");
data_subs = READ_ONCE(ep->data_subs);
if (data_subs && data_subs->pcm_substream)
snd_pcm_stop_xrun(data_subs->pcm_substream);
@@ -425,6 +426,7 @@ static void push_back_to_ready_list(struct snd_usb_endpoint *ep,
{
unsigned long flags;

+ DBG("pkt %d push back\n", ctx->index);
spin_lock_irqsave(&ep->lock, flags);
list_add_tail(&ctx->ready_list, &ep->ready_playback_urbs);
spin_unlock_irqrestore(&ep->lock, flags);
@@ -470,6 +472,8 @@ void snd_usb_queue_pending_output_urbs(struct snd_usb_endpoint *ep,
if (ctx == NULL)
return;

+ DBG("checking queue pkt %d (active_mask=%lx)\n", ctx->index,
+ ep->active_mask);
/* copy over the length information */
if (implicit_fb) {
for (i = 0; i < packet->packets; i++)
@@ -490,6 +494,7 @@ void snd_usb_queue_pending_output_urbs(struct snd_usb_endpoint *ep,
return;
}

+ DBG("pkt %d submitted\n", ctx->index);
err = usb_submit_urb(ctx->urb, GFP_ATOMIC);
if (err < 0) {
usb_audio_err(ep->chip,
@@ -513,6 +518,7 @@ static void snd_complete_urb(struct urb *urb)
struct snd_usb_endpoint *ep = ctx->ep;
int err;

+ DBG("pkt complete %d\n", ctx->index);
if (unlikely(urb->status == -ENOENT || /* unlinked */
urb->status == -ENODEV || /* device removed */
urb->status == -ECONNRESET || /* unlinked */
@@ -1442,6 +1448,7 @@ int snd_usb_endpoint_start(struct snd_usb_endpoint *ep)
int err;
unsigned int i;

+ DBG("endpoint start\n");
if (atomic_read(&ep->chip->shutdown))
return -EBADFD;

@@ -1500,6 +1507,7 @@ int snd_usb_endpoint_start(struct snd_usb_endpoint *ep)
goto __error;
}

+ DBG("start: pkt %d submitted\n", i);
err = usb_submit_urb(urb, GFP_ATOMIC);
if (err < 0) {
usb_audio_err(ep->chip,
diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c
index 95ec8eec1bb0..b1651db2e1e8 100644
--- a/sound/usb/pcm.c
+++ b/sound/usb/pcm.c
@@ -1232,6 +1232,8 @@ static void urb_ctx_queue_advance(struct snd_usb_substream *subs,
subs->hwptr_done += bytes;
if (subs->hwptr_done >= subs->buffer_bytes)
subs->hwptr_done -= subs->buffer_bytes;
+ DBG("PCM bytes=%d, queued=%d, inflight=%d, hwptr=%d\n",
+ bytes, ctx->queued, subs->inflight_bytes, subs->hwptr_done);
}

static inline void fill_playback_urb_dsd_dop(struct snd_usb_substream *subs,
@@ -1389,10 +1391,17 @@ static int prepare_playback_urb(struct snd_usb_substream *subs,
if (avail <= hwptr)
avail += runtime->buffer_size;
avail -= hwptr;
+ DBG("prepare: applptr=%ld, hwptr_base=%ld, buffer=%ld, hwptr=%d, avail=%d\n",
+ (long)runtime->control->appl_ptr,
+ (long)runtime->hw_ptr_base,
+ (long)runtime->buffer_size,
+ hwptr, avail);
}

for (i = 0; i < ctx->packets; i++) {
counts = snd_usb_endpoint_next_packet_size(ep, ctx, i, avail);
+ DBG("prepare: pkt %d [%d]: avail=%d, counts=%d\n",
+ ctx->index, i, avail, counts);
if (counts < 0)
break;
/* set up descriptor */
@@ -1530,6 +1539,7 @@ static int snd_usb_pcm_playback_ack(struct snd_pcm_substream *substream)
/* When no more in-flight URBs available, try to process the pending
* outputs here
*/
+ DBG("PCM ack: active_mask=%lx\n", ep->active_mask);
if (!ep->active_mask)
snd_usb_queue_pending_output_urbs(ep, true);
return 0;
diff --git a/sound/usb/usbaudio.h b/sound/usb/usbaudio.h
index 167834133b9b..84fcd6956f76 100644
--- a/sound/usb/usbaudio.h
+++ b/sound/usb/usbaudio.h
@@ -184,4 +184,5 @@ extern bool snd_usb_skip_validation;
#define QUIRK_FLAG_DSD_RAW (1U << 15)
#define QUIRK_FLAG_SET_IFACE_FIRST (1U << 16)

+#define DBG(fmt, ...) trace_printk(fmt, ##__VA_ARGS__)
#endif /* __USBAUDIO_H */

2021-11-18 23:17:38

by Kirill A. Shutemov

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Thu, Nov 18, 2021 at 09:01:38AM +0100, Takashi Iwai wrote:
> I checked mine, and all worked fine. So this doesn't look like a
> generic breakage but somehow specific to certain devices or system.
>
> Could you verify the lowlatency flag off?

With lowlatency off it works fine.

I attached dump form /proc/asound/card*/pcm*/sub*/* for both cases while
plaing the sample

> Also, the simple aplay invocation (e.g. with a 2-channel 16bit sample)
> also goes to the same problem, I suppose?

Yes.

--
Kirill A. Shutemov


Attachments:
(No filename) (524.00 B)
state (938.00 B)
state.no-lowlatency (949.00 B)
Download all attachments

2021-11-18 23:26:31

by Kirill A. Shutemov

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Thu, Nov 18, 2021 at 05:57:35PM +0100, Takashi Iwai wrote:
> And it'd be helpful if you can gather the log (from tracing) with the
> patch below (from the start of speaker-test until the stall).

The trace is attached.

--
Kirill A. Shutemov


Attachments:
(No filename) (247.00 B)
trace (97.85 kB)
Download all attachments

2021-11-19 09:13:57

by Takashi Iwai

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Fri, 19 Nov 2021 00:26:28 +0100,
Kirill A. Shutemov wrote:
>
> On Thu, Nov 18, 2021 at 05:57:35PM +0100, Takashi Iwai wrote:
> > And it'd be helpful if you can gather the log (from tracing) with the
> > patch below (from the start of speaker-test until the stall).
>
> The trace is attached.

Thanks! From the previous log, I noticed that you're using dmix
plugin, and that was the problem. The dmix plugin changes the PCM
sw_params parameters at a late stage, and this confused the driver as
if it were OK with the low-latency mode. And, while reviewing the
code, I also found another bug.

Below are two fix patches. Please give it a try.


Takashi


Attachments:
0001-ALSA-usb-audio-Switch-back-to-non-latency-mode-at-a-.patch (2.39 kB)
0002-ALSA-usb-audio-Don-t-start-stream-for-capture-at-pre.patch (1.05 kB)
Download all attachments

2021-11-19 10:09:18

by Kirill A. Shutemov

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Fri, Nov 19, 2021 at 10:13:54AM +0100, Takashi Iwai wrote:
> Below are two fix patches. Please give it a try.

They fix the issue:

Reported-and-tested-by: Kirill A. Shutemov <[email protected]>

--
Kirill A. Shutemov

2021-11-19 10:24:52

by Takashi Iwai

[permalink] [raw]
Subject: Re: [GIT PULL] sound updates for 5.16-rc1

On Fri, 19 Nov 2021 11:09:18 +0100,
Kirill A. Shutemov wrote:
>
> On Fri, Nov 19, 2021 at 10:13:54AM +0100, Takashi Iwai wrote:
> > Below are two fix patches. Please give it a try.
>
> They fix the issue:
>
> Reported-and-tested-by: Kirill A. Shutemov <[email protected]>

Great, I'll queue the fixes.


Thanks!

Takashi