Commit Graph

1233527 Commits

Author SHA1 Message Date
Mark Brown
b2b6b2d8f4 ASoC: makes CPU/Codec channel connection map more
Merge series from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:

Current ASoC is supporting CPU/Codec = N:M (N < M) connection by using
ch_map idea. This patch-set expands it that all connection uses this idea,
and no longer N < M limit [1][2].

Link: https://lore.kernel.org/r/87fs6wuszr.wl-kuninori.morimoto.gx@renesas.com [1]
Link: https://lore.kernel.org/r/878r7yqeo4.wl-kuninori.morimoto.gx@renesas.com [2]

ASoC core code ([PATCH 1/5]) is same as v6 and it was tested by Pierre-Louis,
and Jerome. Big change on v7 is basically for Audio-Graph-Card2.
2023-11-27 17:33:11 +00:00
Peter Ujfalusi
9b3cd8ebb1 ASoC: SOF: Intel: Use existing helpers to change GPROCEN and PIE bits
Instead of directly changing the GPROCEN/PIE bits in PPCTL we should use
the existing helper hda_dsp_ctrl_ppcap_enable() and
hda_dsp_ctrl_ppcap_int_enable() helpers for clarity.

Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231127104313.16661-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:08 +00:00
Yong Zhi
d5070d0c10 ASoC: SOF: Intel: mtl: call dsp dump when boot retry fails
Call snd_sof_dsp_dbg_dump() with the same flags/dump_msg
as used in function hda_loader.c/cl_dsp_init().

Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Yong Zhi <yong.zhi@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20231127105235.30071-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:07 +00:00
Christophe JAILLET
076357cd57 ASoC: sh: convert not to use dma_request_slave_channel()
dma_request_slave_channel() is deprecated. dma_request_chan() should
be used directly instead.

Switch to the preferred function and update the error handling accordingly.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/1a837f96f056fa3dcb02a77afa5892d40b354cb1.1700417934.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:06 +00:00
Kuninori Morimoto
792846d9da ASoC: audio-graph-card2-custom-sample: add CPU/Codec = N:M sample
Now ASoC is supporting CPU/Codec = N:M connection, add its sample
settings.

One note here is that it has many type of samples, it reached to
maximum of sound minor number. Therefore, new sample is disabled so far.
If you want to try it, you need to disable some other one instead.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87o7fy4ey0.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:03 +00:00
Kuninori Morimoto
a706366f93 ASoC: audio-graph-card2-custom-sample: Add connection image
Audio Graph Card2 is supporting many type of Sound connections, but
thus it is very difficult to understand how these are connected.

To support well understanding, adds each connection images and indicates
each settings are for where.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87pm0e4ezi.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:02 +00:00
Kuninori Morimoto
e2de6808df ASoC: audio-graph-card2: add CPU:Codec = N:M support
Now ASoC is supporting CPU:Codec = N:M support.
This patch enables it on Audio Graph Card2.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87r0ku4f0t.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:01 +00:00
Kuninori Morimoto
912eb41563 ASoC: audio-graph-card2: use better image for Multi connection
1st port on Multi ports is for paired CPU/Codec, and the 2nd or later
port are for Multi Elements. This patch indicates its image to easy to
understand.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87sf5a4f1i.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:01 +00:00
Kuninori Morimoto
45cc50d134 ASoC: makes CPU/Codec channel connection map more generic
Current ASoC CPU:Codec = N:M connection is using connection mapping idea,
but it is used for N < M case only. We want to use it for any case.

By this patch, not only N:M connection, but all existing connection
(1:1, 1:N, N:N) will use same connection mapping. Then, because it will
use default mapping, no conversion patch is needed to exising drivers.

More over, CPU:Codec = N:M (N > M) also supported in the same time.

ch_maps array will has CPU/Codec index by this patch.

Image
	CPU0 <---> Codec0
	CPU1 <-+-> Codec1
	CPU2 <-/

ch_map
	ch_map[0].cpu = 0	ch_map[0].codec = 0
	ch_map[1].cpu = 1	ch_map[1].codec = 1
	ch_map[2].cpu = 2	ch_map[2].codec = 1

Link: https://lore.kernel.org/r/87fs6wuszr.wl-kuninori.morimoto.gx@renesas.com
Link: https://lore.kernel.org/r/878r7yqeo4.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Tested-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Tested-by: Jerome Brunet <jbrunet@baylibre.com>
Link: https://lore.kernel.org/r/87ttpq4f2c.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-27 13:44:00 +00:00
Mark Brown
74fc96e8d4 ASoC: SOF: ipc4: Add support for control change
Merge series from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:

This series adds support for handling control (switch/enum) change notifications
sent by the firmware.
The use case is similar to what is already used by IPC3 version: the firmware
can update the value of an enum or switch and sends notification to the kernel,
which in turn will notify the user space of a change.
2023-11-25 10:37:48 +00:00
Peter Ujfalusi
0ff23d4607 ASoC: SOF: ipc4: Handle ALSA kcontrol change notification from firmware
The control change notification is sent as module notification with a
standardized event_id (higher 16 bit is 0xA15A).
Add generic code to handle the module notification and invoke the control
update callback if the notification is an ALSA kcontrol change message.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231124150853.18648-5-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-24 15:38:01 +00:00
Peter Ujfalusi
f5eb9945cf ASoC: SOF: ipc4-control: Implement control update for switch/enum controls
Implement the sof_ipc_tplg_control_ops.update function to support a control
change notification from the firmware on switch or enum control types.

Based on the module notification message content, look up the swidget, then
the scontrol which was the source of the notification then if the message
contains the changed values update the cached values.
If only a notification without values received, marked the control as dirty
and on next read access fetch the new values from the firmware.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231124150853.18648-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-24 15:38:00 +00:00
Peter Ujfalusi
1a307538c9 ASoC: SOF: ipc4: Add data struct for module notification message from firmware
With the module notification message the information about the notification
is provided via the mailbox with the sof_ipc4_notify_module_data struct.

It contains the module and instance id of the sender of the notification,
the event_id and optionally additional data which is module and event
specific.

At the same time add definitions to identify ALSA kcontrol change
notification.
These notifications use standardized event_id, modules must follow this if
they support such notifications:
upper 16 bit: 0xA15A as a magic identification value
lower 16 bit: param_id of the changed control

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231124150853.18648-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-24 15:38:00 +00:00
Peter Ujfalusi
5980bda0a9 ASoC: SOF: ipc4-topology: Helper to find an swidget by module/instance id
The sof_ipc4_find_swidget_by_ids() can be used to find the swidget of a
module instance.
The lookup parameters are the module_id and the instance_id.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231124150853.18648-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-24 15:37:59 +00:00
Krzysztof Kozlowski
29b0b68f25 ASoC: dt-bindings: correct white-spaces in examples
Use only one and exactly one space around '=' in DTS example.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20231124083803.12773-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-24 10:21:59 +00:00
Maciej Strozek
52be2c4926 ASoC: cs43130: Allow configuration of bit clock and frame inversion
Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231124095030.24539-1-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-24 10:21:58 +00:00
Maciej Strozek
fa91703dc2 ASoC: cs43130: Allow driver to work without IRQ connection
Add a polling mechanism that will keep the driver operational even in
absence of physical IRQ connection. If IRQ line is detected, the driver
will continue working as usual, in case of missing IRQ line it will
fallback to the polling mechanism introduced in this change.
This will support users which choose not to connect an IRQ line as it
is not critical to part's operation.

Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231123090658.10418-1-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-23 12:41:49 +00:00
Michael Ellerman
b1cea462a7 ASoC: fsl: mpc8610_hpcd: Remove unused driver
The mpc8610_hpcd.c driver depends on CONFIG_MPC8610_HPCD which was
removed in commit 248667f8bb ("powerpc: drop HPCD/MPC8610 evaluation
platform support"). That makes the driver unbuildable and unusable, so
remove it.

Depends-on: 248667f8bb ("powerpc: drop HPCD/MPC8610 evaluation platform support")
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20231122062712.2250426-1-mpe@ellerman.id.au
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-22 14:29:27 +00:00
Chancel Liu
9996cd782a ASoC: dt-bindings: fsl,mqs: Convert format to json-schema
Convert NXP medium quality sound (MQS) device tree binding
documentation to json-schema.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20231122101959.30264-4-chancel.liu@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-22 11:26:27 +00:00
Cristian Ciocaltea
67c7666fe8 ASoC: doc: Fix undefined SND_SOC_DAPM_NOPM argument
The virtual widget example makes use of an undefined SND_SOC_DAPM_NOPM
argument passed to SND_SOC_DAPM_MIXER().  Replace with the correct
SND_SOC_NOPM definition.

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Link: https://lore.kernel.org/r/20231121120751.77355-1-cristian.ciocaltea@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-21 17:02:22 +00:00
Chancel Liu
5d9f746ca6 ASoC: imx-rpmsg: Force codec power on in low power audio mode
Low power audio mode requires binding codec still power on while Acore
enters into suspend so Mcore can continue playback music.

ASoC machine driver acquires DAPM endpoints through reading
"ignore-suspend-widgets" property from DT and then forces the path
between these endpoints ignoring suspend.

If the rpmsg sound card is in low power audio mode, the suspend/resume
callback of binding codec is overridden to disable the suspend/resume.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Link: https://lore.kernel.org/r/20231121052512.20235-2-chancel.liu@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-21 14:43:00 +00:00
Chancel Liu
27c69d7da1 ASoC: dt-bindings: sound-card-common: List sound widgets ignoring system suspend
Add a property to list audio sound widgets which are marked ignoring
system suspend. Paths between these endpoints are still active over
suspend of the main application processor that the current operating
system is running.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Link: https://lore.kernel.org/r/20231121052512.20235-1-chancel.liu@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-21 14:42:59 +00:00
David Lin
af524e9dcb ASoC: nau8810: Fix incorrect type in assignment and cast to restricted __be16
This issue is reproduced when W=1 build in compiler gcc-12.
The following are sparse warnings:

sound/soc/codecs/nau8810.c:183:25: sparse: warning: incorrect type in assignment
sound/soc/codecs/nau8810.c:183:25: sparse: expected int
sound/soc/codecs/nau8810.c:183:25: sparse: got restricted __be16
sound/soc/codecs/nau8810.c:219:25: sparse: warning: cast to restricted __be16
sound/soc/codecs/nau8810.c:219:25: sparse: warning: cast to restricted __be16
sound/soc/codecs/nau8810.c:219:25: sparse: warning: cast to restricted __be16
sound/soc/codecs/nau8810.c:219:25: sparse: warning: cast to restricted __be16

This issue is not still actively checked by kernel test robot.
Actually, it is same with nau8822's sparse warnings issue.

Signed-off-by: David Lin <CTLIN0@nuvoton.com>
Link: https://lore.kernel.org/r/20231120084227.1766633-1-CTLIN0@nuvoton.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-20 17:19:08 +00:00
Lucas Tanure
cac15dc25f ASoC: fsl_mqs: Remove duplicate linux/of.h header
Remove linux/of.h as is included more than once.
Reported by make includecheck.

Signed-off-by: Lucas Tanure <tanure@linux.com>
Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com>
Link: https://lore.kernel.org/r/20231119104514.25536-1-tanure@linux.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-20 13:13:34 +00:00
Mark Brown
36c4d9a6bf ASoC: cs43130: Fixes and improvements
Merge series from Maciej Strozek <mstrozek@opensource.cirrus.com>:

This patchset aims to add minor fixes (first two patches) and
introduce general improvements to the driver (rest of the patches)
2023-11-17 23:18:37 +00:00
Maciej Strozek
9158221bf2 ASoC: cs43130: Add switch to control normal and alt hp inputs
Make sure these inputs are mutually exclusive as recommended by the
datasheet

Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231117141344.64320-8-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-17 20:21:32 +00:00
Maciej Strozek
ce7944b73e ASoC: cs43130: Add handling of ACPI
Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231117141344.64320-6-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-17 20:21:31 +00:00
Maciej Strozek
552206add9 ASoC: cs43130: Store device in private struct and use it more consistently
Also remove one unnecessary debug print

Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231117141344.64320-5-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-17 20:21:30 +00:00
Maciej Strozek
aa7e8e5e40 ASoC: cs43130: Fix incorrect frame delay configuration
Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231117141344.64320-3-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-17 16:39:43 +00:00
Maciej Strozek
e7f289a59e ASoC: cs43130: Fix the position of const qualifier
Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231117141344.64320-2-mstrozek@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-17 16:39:42 +00:00
Lad Prabhakar
7d562ac331 ASoC: dt-bindings: renesas,rz-ssi: Document RZ/Five SoC
The SSI block on the RZ/Five SoC is identical to one found on the RZ/G2UL
SoC. "renesas,r9a07g043-ssi" compatible string will be used on the RZ/Five
SoC so to make this clear and to keep this file consistent, update the
comment to include RZ/Five SoC.

No driver changes are required as generic compatible string
"renesas,rz-ssi" will be used as a fallback on RZ/Five SoC.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20231115213358.33400-1-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-16 19:46:14 +00:00
Syed Saba Kareem
459956b17d ASoC: amd: acp: add missing SND_SOC_AMD_ACP_LEGACY_COMMON flag for ACP70
add missing dependent SND_SOC_AMD_ACP_LEGACY_COMMON flag for ACP70 platform.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231116053405.2574081-1-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-16 11:47:39 +00:00
Jack Yu
577d715448 ASoC: rt5682s: Add LDO output selection for dacref
Add LDO output selection for dacref.

Signed-off-by: Jack Yu <jack.yu@realtek.com>
Link: https://lore.kernel.org/r/62cad4e51c044108bad872ab349e36f8@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-14 17:39:27 +00:00
Syed Saba Kareem
d3534684ad ASoC: amd: acp: add Kconfig options for acp7.0 based platform driver
ACP7.0 based platform legacy drivers can be built by selecting
necessary kernel config option. This patch enables build support
of the same.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231113123345.2196504-1-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 19:45:21 +00:00
Mac Chiang
a55ea47bb8 ASoC: Intel: sof_rt5682: add mtl_rt5650 support
RT5650 is I2S codec integrated with HP and SPK.
The HW board connects SoC I2S to RT5650 codec as below:

I2S0: ALC5650 aif1 for Speaker
I2S2: ALC5650 aif2 for Headphone

Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Mac Chiang <mac.chiang@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231113115907.18539-1-mac.chiang@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 19:45:20 +00:00
Charles Keepax
a132181198 ASoC: cs42l43: Add missing static from runtime PM ops
Fixes: 2b59332ead ("ASoC: cs42l43: Use new-style PM runtime macros")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202311091824.5z6PROGZ-lkp@intel.com/
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20231113151429.1554139-1-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 19:45:20 +00:00
Mark Brown
0a59f2415b ASoC: codecs: ES8326
Merge series from Zhu Ning <zhuning0077@gmail.com>:

We developed a new version of the chip. 3 Three patches are used for
compatibility with the old and new versions of the chip.We did tests
with the new driver at version_v0 and version_v3.The test results
from the test department met our expectations.Both versions work well
with the new drivers.
2023-11-13 18:14:37 +00:00
Mark Brown
8aa49ba733 ASoC: SOF: Add support for MICFIL PDM interface
Merge series from Daniel Baluta <daniel.baluta@oss.nxp.com>:

This is used for configuring MICFIL PDM with i.MX8MPlus. Tested
with 8MIC-RPI-MX8 microphone array.
2023-11-13 14:08:49 +00:00
Mark Brown
696e2d9bf3 ASoC: Intel: avs: Properly identify boards
Merge series from Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>:

Instead of using MODULE_ALIAS() to load boards, add proper device id
table and use MODULE_DEVICE_TABLE() macro to create board alias.
2023-11-13 14:08:40 +00:00
Mark Brown
82e340ca3f ASoC: SOF: mediatek: remove unused variables
Merge series from Trevor Wu <trevor.wu@mediatek.com>:

There are some variables that are no longer being used because they
were declared for the deprecated memory layout. Currently, these code
sections confuse the users. Therefore, this series removes the code
that was implemented for those variables.
2023-11-13 14:08:33 +00:00
Mark Brown
42186bae06 Add DMIC slew rate controls
Merge series from Seven Lee <wtli@nuvoton.com>:

Determine DMIC slew rate via property setup.

Change:
V3 -> V4:
 - add "maximum: 7" description.

V2 -> V3:
 - Update description of DMIC slew rate and remove
   "selection" key words from property name
 - Corrected variable name of DMIC slew rate from c file

V1 -> V2:
 - Corrected description of DMIC slew rate.

Seven Lee (2):
  ASoC: dt-bindings: nau8821: Add DMIC slew rate.
  ASoC: nau8821: Add slew rate controls.

 .../devicetree/bindings/sound/nuvoton,nau8821.yaml       | 9 +++++++++
 sound/soc/codecs/nau8821.c                               | 7 +++++++
 sound/soc/codecs/nau8821.h                               | 3 +++
 3 files changed, 19 insertions(+)

--
2.25.1
2023-11-13 14:08:25 +00:00
Dan Carpenter
601cc04c9d ASoC: amd: acp: remove unnecessary NULL check
The list iterator in a list_for_each_entry() loop can never be NULL.
Remove the check and pull the code in a tab.

Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/e376a712-e0c6-446f-9e0b-c444dd795cbb@moroto.mountain
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:16 +00:00
Krzysztof Kozlowski
dc29d3d253 ASoC: dt-bindings: use "soundwire" as controller's node name in examples
Soundwire Devicetree bindings expect the Soundwire controller device
node to be named just "soundwire".  Correct examples, so the incorrect
code will not be re-used.

Reported-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20231107101610.13728-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:15 +00:00
Krzysztof Kozlowski
c239b79315 ASoC: dt-bindings: qcom,sm8250: add SM8550 sound card
Add sound card for SM8550, which as of now looks fully compatible with
SM8450.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20231106180422.170492-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:14 +00:00
Sebastian Reichel
c479f49894 dt-bindings: es8328: convert to DT schema format
Convert the binding to DT schema format. Note, that "IPVDD-supply"
got fixed to be "HPVDD-supply" during the conversion. This was
obviously a typo in the old binding. The old binding example, DT
files, chip datasheet and Linux driver use HPVDD.

Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20231109184453.108676-1-sebastian.reichel@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:13 +00:00
Weidong Wang
fc213b8d44 ASoC: codecs: Modify the bin file parsing method
Modify the aw88395_lib file so that the bin file
parsing is no longer related to the chip id of the chip.
Adopt the bin file data type "prof_data_type" as the
differentiation between different chip bin file
parsing methods.

Since the chip id macro for the aw88399 is no longer
defined in aw88395_reg.h, define the chip id
for the aw88399 in aw88399.h

Signed-off-by: Weidong Wang <wangweidong.a@awinic.com>
Link: https://lore.kernel.org/r/20231109093708.13155-1-wangweidong.a@awinic.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:12 +00:00
Christophe JAILLET
8df735701a ASoC: tegra: convert not to use dma_request_slave_channel()
dma_request_slave_channel() is deprecated. dma_request_chan() should
be used directly instead.

Switch to the preferred function and update the error handling accordingly.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/b78685e4103f12931ddb09c1654bc6b04b640868.1699724240.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:12 +00:00
Rob Herring
6d02f355c3 ASoC: dt-bindings: Simplify port schema
The use of 'definitions' is not necessary and also problematic because the
dtschema tools don't process 'definitions' resulting in this spurious
warning:

Documentation/devicetree/bindings/sound/renesas,rsnd.example.dtb: sound@ec500000: port:endpoint: Unevaluated properties are not allowed ('phandle' was unexpected)
        from schema $id: http://devicetree.org/schemas/sound/renesas,rsnd.yaml#

Fix this by moving the port schema to #/properties/port and referencing
that directly from the 'ports' schema.

Really, a binding should just always use 'ports' if multiple ports are
possible. There's no benefit to supporting both forms. However, it appears
there are already lots of users of this one with a single 'port' node.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20231101140923.16344-2-robh@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:11 +00:00
Syed Saba Kareem
970f88ad00 ASoC: amd: acp: correct the format order
Correct the formats order for dai driver structures.

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231031135949.1064581-2-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:10 +00:00
Syed Saba Kareem
60b4a86cc6 ASoC: amd: acp: Fix for indentation issue
Fix indentation issue reported in acp70_pcm_resume() function.

Fixes: e84db124cb (ASoC: amd: acp: Add pci legacy driver support
	for acp7.0 platform")

Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com>
Link: https://lore.kernel.org/r/20231031135949.1064581-1-Syed.SabaKareem@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13 01:26:09 +00:00