Wolfram Sang [Sat, 18 Sep 2021 21:35:52 +0000 (23:35 +0200)]
ASoC: codecs: max98390: simplify getting the adapter of a client
We have a dedicated pointer for that, so use it. Much easier to read and
less computation involved.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://lore.kernel.org/r/20210918213553.14514-2-wsa+renesas@sang-engineering.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Mon, 20 Sep 2021 06:55:08 +0000 (09:55 +0300)]
ASoC: Intel: boards: Update to modern clocking terminology
As part of the effort to remove our old APIs based on outdated terminology
update the Intel board drivers to use modern terminology.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com
Link: https://lore.kernel.org/r/20210920065508.7854-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Krzysztof Kozlowski [Mon, 20 Sep 2021 11:21:06 +0000 (13:21 +0200)]
ASoC: dt-bindings: rt5682s: correct several errors
Correct several errors in rt5682s dtschema:
1. The examples should be under "examples":
'example' is not one of ['$id', '$schema', 'title', 'description', 'examples', ...
2. Missing type for vendor properties
3. clock-names should be an array:
properties:clock-names:items: {'const': 'mclk'} is not of type 'array'
4. Example DTS should include headers:
[scripts/Makefile.lib:386: Documentation/devicetree/bindings/sound/realtek,rt5682s.example.dt.yaml] Error 1
5. Node name in example DTS misses unit address and does not match DT
convention (generic name):
Warning (reg_format): /example-0/rt5682s:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1)
6. Node address should be in size-cells:0 block in example DTS:
Warning (reg_format): /example-0/codec@1a:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1)
Fixes: 50159fdb144b ("ASoC: dt-bindings: rt5682s: add bindings for rt5682s")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210920112106.140918-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Thu, 16 Sep 2021 14:13:35 +0000 (15:13 +0100)]
ASoC: ab8500: Update to modern clocking terminology
As part of moving to remove the old style defines for the bus clocks update
the ab8500 driver to use more modern terminology for clocking.
Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20210916141335.43818-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Mon, 20 Sep 2021 06:41:56 +0000 (09:41 +0300)]
ASoC: SOF: Remove struct sof_ops_table and sof_get_ops() macro
sof_get_ops() is not used and the struct sof_ops_table is only used by that
macro.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210920064156.4763-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Jiapeng Chong [Sat, 18 Sep 2021 09:02:06 +0000 (17:02 +0800)]
ASoC: rt5682s: make rt5682s_aif2_dai_ops and rt5682s_soc_component_dev
This symbol is not used outside of rt5682s.c, so marks it static.
Fix the following sparse warning:
sound/soc/codecs/rt5682s.c:2848:39: warning: symbol
'rt5682s_soc_component_dev' was not declared. Should it be static?
sound/soc/codecs/rt5682s.c:2842:30: warning: symbol
'rt5682s_aif2_dai_ops' was not declared. Should it be static?
Reported-by: Abaci Robot <abaci@linux.alibaba.com>
Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
Link: https://lore.kernel.org/r/1631955726-77693-1-git-send-email-jiapeng.chong@linux.alibaba.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Fri, 17 Sep 2021 13:56:43 +0000 (14:56 +0100)]
Merge series "ASoC: SOF: ipc: Small cleanups for message handler functions" from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:
Hi,
Rename the parameter for ipc_trace_message() to match it's content and use
%#x" for hexadecimal prints in remaining places.
Regards,
Peter
---
Peter Ujfalusi (2):
ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message()
ASoC: SOF: ipc: Print 0x prefix for errors in
ipc_trace/stream_message()
sound/soc/sof/ipc.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
--
2.33.0
Mark Brown [Thu, 16 Sep 2021 14:08:47 +0000 (15:08 +0100)]
ASoC: 88pm860x: Update to modern clocking terminology
As part of moving to remove the old style defines for the bus clocks update
the 88pm860x driver to use more modern terminology for clocking.
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20210916140847.50900-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 13:03:08 +0000 (16:03 +0300)]
ASoC: SOF: Rename sof_arch_ops to dsp_arch_ops
From the name sof_arch_ops one can not decipher that these ops are DSP
architecture ops.
Rename it to dsp_arch_ops and change also the macro to retrieve the DSP
architecture specific ops as well.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210916130308.7969-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 12:57:25 +0000 (15:57 +0300)]
ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked
If the snd_sof_dsp_send_msg() failed then we have already returned from
sof_ipc_tx_message_unlocked() with the error message.
There is no need to check if ret is really 0 after this and we can return
directly the return value from tx_wait_done()
At the same time make the remaining checks for error (ret) to match.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210916125725.25934-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Fri, 17 Sep 2021 08:58:23 +0000 (11:58 +0300)]
ASoC: SOF: ipc: Print 0x prefix for errors in ipc_trace/stream_message()
The dev_err() in ipc_trace_message() and ipc_stream_message() is missing
the 0x prefix for the hexadecimal number when printed.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210917085823.27222-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Fri, 17 Sep 2021 08:58:22 +0000 (11:58 +0300)]
ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message()
ipc_trace_message() receives the type not the ID.
Use the same naming as the ipc_stream_message() function: msg_type to
help the reader to follow the code.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Link: https://lore.kernel.org/r/20210917085823.27222-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Thu, 16 Sep 2021 15:06:47 +0000 (16:06 +0100)]
Merge series "ASoC: cs42l42: Implement Manual Type detection as fallback" from Vitaly Rodionov <vitalyr@opensource.cirrus.com>:
For some headsets CS42L42 autodetect mode is not working correctly.
They will be detected as unknown types or as headphones. According
to the CS42L42 datasheet, if the headset autodetect failed,
then the driver should switch to manual mode and perform a manual steps sequence.
These steps were missing in the current driver code. This patch will add manual
mode fallback steps in case autodetect failed. The default behavior is not affected,
manual mode runs only when autodetect failed.
Tested for regression with autodetect with all known headsets - no regression.
Tested with all headsets customers reported as false detected:
Gumdrop DropTech B1 - detected as headset OK
HUAWEI AM115 - detected as headset OK
UGREEN EP103 - detected as headset OK
HONOR AM116 - detected as headset OK
Stefan Binding (1):
ASoC: cs42l42: Implement Manual Type detection as fallback
sound/soc/codecs/cs42l42.c | 104 ++++++++++++++++++++++++++++++++-----
sound/soc/codecs/cs42l42.h | 54 +++++++++++++++++++
2 files changed, 146 insertions(+), 12 deletions(-)
--
2.25.1
Mark Brown [Thu, 16 Sep 2021 15:06:45 +0000 (16:06 +0100)]
Merge series "ASoC: SOF: Clean up the probe support" from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:
Hi,
The probe debug feature of SOF can be used to extract streams of data from a
given point of a pipeline for analysis.
The support is implemented by using the ALSA/ASoC compress support for the
capture stream, but the code can not be used by/for a normal compressed data
stream. It is a debug feature.
Merge the probe implementation in the core (compress.c/h and probe.c/h) into
one file: sof-probes.c/h
Rename the Intel HDA specific probe implementation from hda-compressc.c to
hda-probes.c
We also need to add IPC logging support for the probes messages and drop the
unused references to SOF compress to have reasonably clean code.
Regards,
Peter
---
Peter Ujfalusi (5):
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
Ranjani Sridharan (1):
ASoC: SOF: compress: move and export sof_probe_compr_ops
sound/soc/sof/Makefile | 3 +-
sound/soc/sof/compress.c | 147 ---------
sound/soc/sof/compress.h | 32 --
sound/soc/sof/core.c | 2 +-
sound/soc/sof/debug.c | 2 +-
sound/soc/sof/intel/Makefile | 2 +-
sound/soc/sof/intel/hda-dai.c | 16 +-
.../intel/{hda-compress.c => hda-probes.c} | 0
sound/soc/sof/ipc.c | 23 ++
sound/soc/sof/pcm.c | 6 +-
sound/soc/sof/probe.h | 85 ------
sound/soc/sof/sof-priv.h | 5 -
sound/soc/sof/{probe.c => sof-probes.c} | 280 +++++++++++-------
sound/soc/sof/sof-probes.h | 38 +++
14 files changed, 248 insertions(+), 393 deletions(-)
delete mode 100644 sound/soc/sof/compress.c
delete mode 100644 sound/soc/sof/compress.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
--
2.33.0
Mark Brown [Wed, 15 Sep 2021 17:59:15 +0000 (18:59 +0100)]
ASoC: au1x: Convert to modern terminology for DAI clocking
As part of retiring the old macros defining the DAI clocking mode in the
DAI format update the au1x drivers to use the new style macros.
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Wed, 15 Sep 2021 17:30:23 +0000 (18:30 +0100)]
ASoC: atmel: Convert to new style DAI format definitions
Convert the Atmel drivers to use the new style defines for clocking in DAI
formats.
Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Acked-by: Peter Rosin <peda@axentia.se>
David Rhodes [Wed, 15 Sep 2021 19:14:22 +0000 (14:14 -0500)]
ASoC: cs35l41: Binding fixes
Fix warnings and errors in DT bindings
Add newline at end of file
Replace 'unevaluatedProperties' with 'additionalProperties'
Add spi context to DT example
Add #sound-dai-cells to DT example
Rename to 'cirrus,cs35l41.yaml'
Signed-off-by: David Rhodes <drhodes@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210915191422.2371623-1-drhodes@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Charles Keepax [Thu, 16 Sep 2021 08:23:46 +0000 (09:23 +0100)]
misc: cs35l41: Remove unused pdn variable
Remove pdn variable that was made redundant in an earlier patch.
Fixes: c2f14cc2bcdd ("ASoC: cs35l41: Fix use of an uninitialised variable")
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210916082346.12001-1-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Viorel Suman [Thu, 16 Sep 2021 07:37:25 +0000 (10:37 +0300)]
ASoC: SOF: imx8m: add SAI1 info
Add SAI1 instance to imx8m_dai array.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Reviewed-by: Paul Olaru <paul.olaru@oss.nxp.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210916073725.359561-1-daniel.baluta@oss.nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Vitaly Rodionov [Thu, 16 Sep 2021 11:09:32 +0000 (12:09 +0100)]
ASoC: cs42l42: Minor fix all errors reported by checkpatch.pl script
Signed-off-by: Vitaly Rodionov <vitalyr@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210916110932.10293-1-vitalyr@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 12:49:02 +0000 (15:49 +0300)]
ASoC: SOF: core: Move probe work related code under a single if () branch
Relocate the INIT_WORK() at the same place where we schedule the work to
make the code simpler and easier to follow.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210916124902.24248-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Stefan Binding [Thu, 16 Sep 2021 10:27:50 +0000 (11:27 +0100)]
ASoC: cs42l42: Implement Manual Type detection as fallback
Some headsets are not detected correctly by Automatic Type Detection
on cs42l42. Instead, Manual Type Detection can be used to give a
more accurate value.
Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com>
Signed-off-by: Vitaly Rodionov <vitalyr@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210916102750.9212-2-vitalyr@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 10:32:11 +0000 (13:32 +0300)]
ASoC: SOF: sof-probes: Correct the function names used for snd_soc_cdai_ops
The snd_soc_cdai_ops have startup and shutdown callbacks defined unlike
the component callbacks where open and free is used.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210916103211.1573-7-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 10:32:10 +0000 (13:32 +0300)]
ASoC: SOF: Intel: Rename hda-compress.c to hda-probes.c
The hda-compress.c is implementing the SOF probe support for intel HDA
platforms using compress API.
To avoid the confusion, rename it to reflect this.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210916103211.1573-6-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 10:32:09 +0000 (13:32 +0300)]
ASoC: SOF: probe: Merge and clean up the probe and compress files
The probe debug functionality is implemented via compress support and it
was spread across two set of files:
probe.c/h
compress.c/h
Merge the two files into sof-probes.s/h and clean them up by removing
unused struct definitions, functions. We can also move most of the
functions static as they are only used internally.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210916103211.1573-5-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Ranjani Sridharan [Thu, 16 Sep 2021 10:32:08 +0000 (13:32 +0300)]
ASoC: SOF: compress: move and export sof_probe_compr_ops
sof_probe_compr_ops are not platform-specific. So move
it to common compress code and export the symbol. The
compilation of the common compress code is already dependent
on the selection of CONFIG_SND_SOC_SOF_DEBUG_PROBES, so no
need to check the Kconfig section for defining sof_probe_compr_ops
again.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20210916103211.1573-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 10:32:07 +0000 (13:32 +0300)]
ASoC: SOF: pcm: Remove non existent CONFIG_SND_SOC_SOF_COMPRESS reference
The SND_SOC_SOF_COMPRESS is not valid Kconfig option, remove it.
At the same time remove the also the declaration of the non existent
sof_compressed_ops.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210916103211.1573-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 16 Sep 2021 10:32:06 +0000 (13:32 +0300)]
ASoC: SOF: ipc: Add probe message logging to ipc_log_header()
Probe related messages are missing from the logging, for example the
PROBE_INIT would show up as:
ipc tx: 0xc0010000: unknown GLB command
ipc tx succeeded: 0xc0010000: unknown GLB command
Add code to handle the probe messages to have human readable output
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210916103211.1573-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:16 +0000 (15:21 +0300)]
ASoC: SOF: debug: No need to export the snd_sof_debugfs_io_item()
The snd_sof_debugfs_io_item() only used within debug.c, no need to export
it.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-13-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:15 +0000 (15:21 +0300)]
ASoC: SOF: loader: Use the generic ops for region debugfs handling
Do not access the sdev->bar[] directly to make the code generic, use the
new generic ops for handing the regions for debugfs.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-12-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:14 +0000 (15:21 +0300)]
ASoC: SOF: Intel: Provide debugfs_add_region_item ops for core
Set the generic iomem callback for debugfs_add_region_item to avoid
regression when the core switches to use the generic interface for
the regions.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-11-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:13 +0000 (15:21 +0300)]
ASoC: SOF: imx: Provide debugfs_add_region_item ops for core
Set the generic iomem callback for debugfs_add_region_item to avoid
regression when the core switches to use the generic interface for
the regions.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-10-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:12 +0000 (15:21 +0300)]
ASoC: SOF: debug: Add generic API and ops for DSP regions
Add new debugfs_add_region_item along with a generic wrapper
snd_sof_debugfs_add_region_item() to abstract away the DSP regions related
debugfs support.
At the same commit add iomem based generic implementation for the new ops
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-9-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:11 +0000 (15:21 +0300)]
ASoC: SOF: core: Do not use 'bar' as parameter for block_read/write
The use of bar in the core poses limits on the portability of the code
to other, non iomapped platforms.
To make the API more generic, remove the use of 'bar' as parameter
for the block copy API.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-8-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:10 +0000 (15:21 +0300)]
ASoC: SOF: loader: No need to export snd_sof_fw_parse_ext_data()
snd_sof_fw_parse_ext_data() is used only internally within loader.c and
there is no need to export it.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-7-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:07 +0000 (15:21 +0300)]
ASoC: SOF: imx: Do not initialize the snd_sof_dsp_ops.read64
The read64 operation is not used by IMX along with other IO functions.
No need to set it for the ops.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:06 +0000 (15:21 +0300)]
ASoC: SOF: ipc: Remove snd_sof_dsp_mailbox_init()
The snd_sof_dsp_mailbox_init() is called only from sof_get_windows()
to set the sdev->dsp_box.offset/size and sdev->host_box.offset/size
Instead of using a function, set the offsets and sizes like we do for the
other boxes in sof_get_windows().
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 12:21:05 +0000 (15:21 +0300)]
ASoC: SOF: Intel: bdw: Set the mailbox offset directly in bdw_probe
To align with other platforms, set only the sdev->dsp_box.offset in
bdw_probe().
The mailbox offset must be set in order to be able to receive the firmware
ready message.
The offsets and sizes will be re-configured after the FW ready message
based on the window information.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Wed, 15 Sep 2021 15:12:29 +0000 (16:12 +0100)]
Merge series "ASoC: SOF: Remove unused members from struct sof_dev_desc" from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:
Hi,
dma_engine, dma_size and resindex_dma_base is unused from sof_dev_desc, drop
them.
resindex_dma_base is initialized to -1 for Intel platforms, but it is not used.
Regards,
Peter
---
Peter Ujfalusi (2):
ASoC: SOF: intel: Do no initialize resindex_dma_base
ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from
sof_dev_desc
include/sound/sof.h | 5 -----
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 | 1 -
6 files changed, 18 deletions(-)
--
2.33.0
Mark Brown [Wed, 15 Sep 2021 15:12:27 +0000 (16:12 +0100)]
Merge series "ASoC: SOF: Intel: hda: Cleanups for local function uses" from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:
Hi,
Small cleanups regarding to HDA function locations and dropping of definitions
of not implemented functions.
Regards,
Peter
---
Peter Ujfalusi (3):
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
sound/soc/sof/intel/hda-dsp.c | 61 +++++++++++++++++------------------
sound/soc/sof/intel/hda.c | 33 ++++++++++++++++++-
sound/soc/sof/intel/hda.h | 41 -----------------------
3 files changed, 62 insertions(+), 73 deletions(-)
--
2.33.0
Mark Brown [Wed, 15 Sep 2021 15:12:26 +0000 (16:12 +0100)]
Merge series "Support ALC5682I-VS codec" from Brent Lu <brent.lu@intel.com>:
Support the ALC5682I-VS codec in Intel's rt5682 machine driver with
three board configurations.
Brent Lu (4):
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
sound/soc/intel/boards/Kconfig | 1 +
sound/soc/intel/boards/sof_rt5682.c | 105 +++++++++++++++---
.../intel/common/soc-acpi-intel-jsl-match.c | 24 ++++
3 files changed, 112 insertions(+), 18 deletions(-)
--
2.25.1
Charles Keepax [Tue, 14 Sep 2021 14:13:49 +0000 (15:13 +0100)]
ASoC: cs35l41: Fix a bunch of trivial code formating/style issues
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210914141349.30218-6-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Charles Keepax [Tue, 14 Sep 2021 14:13:48 +0000 (15:13 +0100)]
ASoC: cs35l41: Fixup the error messages
It is not idiomatic for ASoC to print the function name in the error
messages, however it is expected to show the return code. Update the
error messages to follow these conventions.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210914141349.30218-5-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Charles Keepax [Tue, 14 Sep 2021 14:13:47 +0000 (15:13 +0100)]
ASoC: cs35l41: Don't overwrite returned error code
In multiple places the driver overwrites the error code returned with
a static error code, this is not helpful for debugging. Update to pass
the error codes straight through.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210914141349.30218-4-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Charles Keepax [Tue, 14 Sep 2021 14:13:46 +0000 (15:13 +0100)]
ASoC: cs35l41: Combine adjacent register writes
cs35l41 is often connected over I2C which is a very slow bus, as such
timings can be greatly improved combining writes where acceptable.
Update several points where the driver does multiple register writes
when a single one would suffice.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210914141349.30218-3-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Charles Keepax [Tue, 14 Sep 2021 14:13:45 +0000 (15:13 +0100)]
ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot
Just clean up the code a little by using the helper rather than open
coding waiting for OTP_BOOT_DONE.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210914141349.30218-2-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Charles Keepax [Tue, 14 Sep 2021 14:13:44 +0000 (15:13 +0100)]
ASoC: cs35l41: Fix use of an uninitialised variable
The loop checking PDN_DONE doesn't check the return value from
regmap_read, nor does it initialise val. This means if regmap_read fails
val will be checked for the PDN_DONE bit whilst being uninitialised.
Fix this up by switching to regmap_read_poll_timeout which tidies up the
code and avoids the uninitialised variable.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210914141349.30218-1-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Trevor Wu [Wed, 15 Sep 2021 03:46:59 +0000 (11:46 +0800)]
ASoC: mediatek: mt6359: Fix unexpected error in bind/unbind flow
mt6359-sound is a MFD driver. Because its regmap is retrieved from its
parent, it shouldn't be freed in mt6359-sound driver.
snd_soc_component_exit_regmap() will do regmap_exit(), this results in
unexpected results if sound card unregister flow is invoked when users
try to bind/unbind audio codec.
Remove the usage of snd_soc_component_exit_regmap(). Instead, set
component->regmap = NULL in the component remove function.
Signed-off-by: Trevor Wu <trevor.wu@mediatek.com>
Link: https://lore.kernel.org/r/20210915034659.25044-1-trevor.wu@mediatek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Tue, 14 Sep 2021 12:53:56 +0000 (15:53 +0300)]
ASoC: SOF: loader: load_firmware callback is mandatory, treat it like that
Since the load_firmware callback in snd_sof_dsp_ops is mandatory and it
is tested during probe.
Move the snd_sof_load_firmware() wrapper to ops.h as inline and drop the
check of sof_ops(sdev)->load_firmware
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210914125356.19828-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Colin Ian King [Wed, 15 Sep 2021 10:50:27 +0000 (11:50 +0100)]
ASoC: mediatek: mt8195: make array adda_dai_list static const
Don't populate the array adda_dai_list on the stack but instead it
static const. Also makes the object code smaller by 33 bytes:
Before:
text data bss dec hex filename
28271 11640 0 39911 9be7 mt8195/mt8195-dai-adda.o
After:
text data bss dec hex filename
28142 11736 0 39878 9bc6 mt8195/mt8195-dai-adda.o
(gcc version 11.2.0)
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Link: https://lore.kernel.org/r/20210915105027.10805-1-colin.king@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Bixuan Cui [Sat, 11 Sep 2021 08:12:46 +0000 (16:12 +0800)]
ASoC: mediatek: mt8195: Add missing of_node_put()
The platform_node is returned by of_parse_phandle() should have
of_node_put() before return.
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Bixuan Cui <cuibixuan@huawei.com>
Link: https://lore.kernel.org/r/20210911081246.33867-1-cuibixuan@huawei.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 07:18:05 +0000 (10:18 +0300)]
ASoC: SOF: Intel: hda: Relocate inline definitions from hda.h to hda.c for sdw
Move the only locally needed inline functions to hda.c when
CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE is not enabled to make the header file
less cluttered with information no needed to be there.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210915071805.5704-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 07:18:04 +0000 (10:18 +0300)]
ASoC: SOF: Intel: hda: Remove boot_firmware skl and iccmax_icl declarations
hda_dsp_cl_boot_firmware_iccmax_icl and hda_dsp_cl_boot_firmware_skl is
no longer backed with an implementation, remove them from the hda.h
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210915071805.5704-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 07:18:03 +0000 (10:18 +0300)]
ASoC: SOF: Intel: hda-dsp: Declare locally used functions as static
The following functions can be made static as they are only used locally:
hda_dsp_core_reset_enter
hda_dsp_core_reset_leave
hda_dsp_core_stall_reset
hda_dsp_core_power_up
hda_dsp_core_power_down
hda_dsp_core_is_enabled
The hda_dsp_ipc_int_disable is also only used within hda-dsp.c, but for
symmetry for hda_dsp_ipc_int_enable (used by hda-loader.c) leave it as it
is.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210915071805.5704-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 06:55:41 +0000 (09:55 +0300)]
ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from sof_dev_desc
resindex_dma_base, dma_engine and dma_size is unused, remove them.
There is no hint in the comments how this supposed to be used, when the
need arises it can be added back.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210915065541.1178-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Wed, 15 Sep 2021 06:55:40 +0000 (09:55 +0300)]
ASoC: SOF: intel: Do no initialize resindex_dma_base
.resindex_dma_base is not used by the code and in all instances it is set
to -1.
To make it possible to remove it from the sof_dev_desc struct, first remove
all references from the intel drivers (initialization).
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210915065541.1178-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Brent Lu [Tue, 14 Sep 2021 10:18:47 +0000 (18:18 +0800)]
ASoC: intel: sof_rt5682: support jsl_rt5682s_mx98360a board
This patch adds driver data for two MAX98360A speaker amplifiers on SSP1
and one ALC5682I-VS headphone codec on SSP0 for JSL platform.
Topology is leveraged from jsl_rt5682_mx98360a since the capability of
two ALC5682 variants is the same.
Signed-off-by: Brent Lu <brent.lu@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210914101847.778688-5-brent.lu@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Brent Lu [Tue, 14 Sep 2021 10:18:46 +0000 (18:18 +0800)]
ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015 board
This patch adds driver data for two ALC1015Q-CG speaker amplifiers on
SSP1 and one ALC5682I-VS headphone codec on SSP0 for JSL platform.
Topology is leveraged from jsl_rt5682_rt1015 since the capability of
two ALC5682 variants is the same.
Signed-off-by: Brent Lu <brent.lu@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210914101847.778688-4-brent.lu@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Brent Lu [Tue, 14 Sep 2021 10:18:45 +0000 (18:18 +0800)]
ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015p board
This patch adds driver data for two ALC1015Q-VB speaker amplifiers on
SSP1 and one ALC5682I-VS headphone codec on SSP0 for JSL platform.
Topology is leveraged from jsl_rt5682_rt1015p since the capability of
two ALC5682 variants is the same.
Signed-off-by: Brent Lu <brent.lu@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210914101847.778688-3-brent.lu@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Brent Lu [Tue, 14 Sep 2021 10:18:44 +0000 (18:18 +0800)]
ASoC: Intel: sof_rt5682: support ALC5682I-VS codec
Add a new quirk SOF_RT5682S_HEADPHONE_CODEC_PRESENT to support
ALC5682I-VS headphone codec which driver is a new one, rt5682s, with
new macros and functions.
Signed-off-by: Brent Lu <brent.lu@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210914101847.778688-2-brent.lu@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Mon, 13 Sep 2021 10:24:04 +0000 (11:24 +0100)]
Merge series "Patches to update for rockchip pdm" from Sugar Zhang <sugar.zhang@rock-chips.com>:
These patches fixup or update for rockchip pdm.
Changes in v4:
- Acked by Rob Herring
Changes in v3:
- Fix property 'path-map' suggested by Rob Herring.
Changes in v2:
- Fix yamllint errors.
Sugar Zhang (7):
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
.../devicetree/bindings/sound/rockchip,pdm.txt | 46 --------
.../devicetree/bindings/sound/rockchip,pdm.yaml | 120 +++++++++++++++++++++
sound/soc/rockchip/rockchip_pdm.c | 112 +++++++++++++++++--
sound/soc/rockchip/rockchip_pdm.h | 6 ++
4 files changed, 232 insertions(+), 52 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/sound/rockchip,pdm.txt
create mode 100644 Documentation/devicetree/bindings/sound/rockchip,pdm.yaml
--
2.7.4
Mark Brown [Mon, 13 Sep 2021 10:24:03 +0000 (11:24 +0100)]
Merge series "Cirrus Logic CS35L41 Amplifier" from David Rhodes <drhodes@opensource.cirrus.com>:
ASoC driver and devicetree documentation for a new
Cirrus Logic amplifier CS35L41
v7 changes:
Remove property 'classh-bst-max-limit'
David Rhodes (2):
ASoC: cs35l41: CS35L41 Boosted Smart Amplifier
ASoC: cs35l41: Add bindings for CS35L41
.../devicetree/bindings/sound/cs35l41.yaml | 151 ++
include/sound/cs35l41.h | 34 +
sound/soc/codecs/Kconfig | 12 +
sound/soc/codecs/Makefile | 4 +
sound/soc/codecs/cs35l41-i2c.c | 114 ++
sound/soc/codecs/cs35l41-spi.c | 143 ++
sound/soc/codecs/cs35l41-tables.c | 597 +++++++
sound/soc/codecs/cs35l41.c | 1545 +++++++++++++++++
sound/soc/codecs/cs35l41.h | 775 +++++++++
9 files changed, 3375 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/cs35l41.yaml
create mode 100644 include/sound/cs35l41.h
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
--
2.25.1
Mark Brown [Mon, 13 Sep 2021 10:24:01 +0000 (11:24 +0100)]
Merge series "ARM: dts: Last round of DT schema fixes" from Maxime Ripard <maxime@cerno.tech>:
Hi,
Here's another round of schema warnings fixes for the Allwinner platform.
There's a fair share of new schemas in there since the schema tools now warn
when a compatible is not documented in a schema.
We don't have any warning anymore if we use the OPP binding Rob submitted, and
since that means we have all our devices properly validated I don't expect more
fixes now, aside from the usual bunch of regressions.
Let me know what you think,
Maxime
Maxime Ripard (52):
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
dt-bindings: Convert Reserved Memory binding to a schema
dt-bindings: arm: Convert ARM CCI-400 binding to a schema
dt-bindings: bluetooth: broadcom: Fix clocks check
dt-bindings: bluetooth: realtek: Add missing max-speed
dt-bindings: clocks: Fix typo in the H6 compatible
dt-bindings: display: Move idk-1110wr to panel-lvds
dt-bindings: display: Move idk-2121wr to panel-lvds
dt-bindings: display: Move ee101ia-01d to panel-lvds
dt-bindings: display: aa104xd12: Remove unused vcc-supply
dt-bindings: display: aa104xd12: Fix data-mapping
dt-bindings: display: Move aa104xd12 to panel-lvds
dt-bindings: display: aa121td01: Remove unused vcc-supply
dt-bindings: display: aa121td01: Fix data-mapping
dt-bindings: display: Move aa121td01 to panel-lvds
dt-bindings: display: Move gktw70sdae4se to panel-lvds
dt-bindings: display: panel-lvds: Document missing panel compatibles
dt-bindings: gnss: Convert UBlox Neo-6M binding to a schema
dt-bindings: gpio: Convert X-Powers AXP209 GPIO binding to a schema
dt-bindings: hwmon: Add IIO HWMON binding
dt-bindings: input: Convert Silead GSL1680 binding to a schema
dt-bindings: interconnect: sunxi: Add R40 MBUS compatible
dt-bindings: media: ti,cal: Fix example
dt-bindings: media: Convert OV5640 binding to a schema
dt-bindings: mfd: Convert X-Powers AC100 binding to a schema
dt-bindings: mfd: Convert X-Powers AXP binding to a schema
dt-bindings: mmc: Convert MMC Card binding to a schema
dt-bindings: net: dwmac: Fix typo in the R40 compatible
dt-bindings: net: wireless: Convert ESP ESP8089 binding to a schema
dt-bindings: regulator: Convert SY8106A binding to a schema
dt-bindings: sunxi: Add CPU Configuration Controller Binding
dt-bindings: sunxi: Add Allwinner A80 PRCM Binding
dt-bindings: usb: Convert SMSC USB3503 binding to a schema
dt-bindings: usb: dwc3: Fix usb-phy check
dt-bindings: w1: Convert 1-Wire GPIO binding to a schema
ARM: dts: sunxi: Rename power-supply names
ARM: dts: sunxi: Rename gpio pinctrl names
ARM: dts: sunxi: Fix OPP arrays
ARM: dts: sunxi: Fix OPPs node name
ARM: dts: sunxi: Fix the SPI NOR node names
ARM: dts: v3s: Remove useless DMA properties
ARM: dts: tbs711: Fix touchscreen compatible
ARM: dts: cubieboard4: Remove the dumb-vga-dac compatible
arm64: dts: allwinner: h5: Fix GPU thermal zone node name
arm64: dts: allwinner: h6: Fix de3 parent clocks ordering
arm64: dts: allwinner: a100: Fix thermal zone node name
arm64: dts: allwinner: pinetab: Change regulator node name to avoid
warning
arm64: dts: allwinner: teres-i: Add missing reg
arm64: dts: allwinner: teres-i: Remove wakekup-source from the PMIC
.../devicetree/bindings/arm/arm,cci-400.yaml | 216 ++++++++++
.../bindings/arm/cci-control-port.yaml | 38 ++
Documentation/devicetree/bindings/arm/cci.txt | 224 ----------
.../devicetree/bindings/arm/cpus.yaml | 2 +
.../arm/sunxi/allwinner,sun4i-a10-mbus.yaml | 1 +
.../sunxi/allwinner,sun6i-a31-cpuconfig.yaml | 38 ++
.../arm/sunxi/allwinner,sun9i-a80-prcm.yaml | 33 ++
.../clock/allwinner,sun8i-a83t-de2-clk.yaml | 2 +-
.../display/panel/advantech,idk-1110wr.yaml | 69 ---
.../display/panel/advantech,idk-2121wr.yaml | 121 ------
.../display/panel/innolux,ee101ia-01d.yaml | 31 --
.../bindings/display/panel/lvds.yaml | 130 +++++-
.../display/panel/mitsubishi,aa104xd12.yaml | 75 ----
.../display/panel/mitsubishi,aa121td01.yaml | 74 ----
.../display/panel/sgd,gktw70sdae4se.yaml | 68 ---
.../bindings/gnss/u-blox,neo-6m.yaml | 62 +++
.../devicetree/bindings/gnss/u-blox.txt | 45 --
.../devicetree/bindings/gpio/gpio-axp209.txt | 75 ----
.../bindings/gpio/x-powers,axp209-gpio.yaml | 55 +++
.../devicetree/bindings/hwmon/iio-hwmon.yaml | 37 ++
.../i2c/allwinner,sun6i-a31-p2wi.yaml | 2 +-
.../input/touchscreen/silead,gsl1680.yaml | 91 ++++
.../input/touchscreen/silead_gsl1680.txt | 44 --
.../devicetree/bindings/media/i2c/ov5640.txt | 92 ----
.../bindings/media/i2c/ovti,ov5640.yaml | 154 +++++++
.../devicetree/bindings/media/ti,cal.yaml | 4 +-
.../devicetree/bindings/mfd/ac100.txt | 50 ---
.../devicetree/bindings/mfd/axp20x.txt | 273 ------------
.../bindings/mfd/x-powers,ac100.yaml | 116 +++++
.../bindings/mfd/x-powers,axp152.yaml | 400 ++++++++++++++++++
.../devicetree/bindings/mmc/mmc-card.txt | 30 --
.../devicetree/bindings/mmc/mmc-card.yaml | 48 +++
.../bindings/mmc/mmc-controller.yaml | 6 -
.../net/allwinner,sun8i-a83t-emac.yaml | 4 +-
.../bindings/net/broadcom-bluetooth.yaml | 17 +-
.../bindings/net/realtek-bluetooth.yaml | 2 +
.../devicetree/bindings/net/snps,dwmac.yaml | 6 +-
.../bindings/net/wireless/esp,esp8089.txt | 30 --
.../bindings/net/wireless/esp,esp8089.yaml | 43 ++
.../bindings/regulator/silergy,sy8106a.yaml | 52 +++
.../bindings/regulator/sy8106a-regulator.txt | 23 -
.../reserved-memory/memory-region.yaml | 40 ++
.../reserved-memory/reserved-memory.txt | 172 +-------
.../reserved-memory/reserved-memory.yaml | 96 +++++
.../reserved-memory/shared-dma-pool.yaml | 87 ++++
.../devicetree/bindings/sound/bt-sco.txt | 13 -
.../bindings/sound/linux,bt-sco.yaml | 38 ++
.../bindings/sound/linux,spdif-dit.yaml | 32 ++
.../bindings/sound/simple-amplifier.txt | 17 -
.../sound/simple-audio-amplifier.yaml | 45 ++
.../bindings/sound/spdif-transmitter.txt | 10 -
.../devicetree/bindings/sound/wlf,wm8978.yaml | 58 +++
.../devicetree/bindings/usb/smsc,usb3503.yaml | 108 +++++
.../devicetree/bindings/usb/snps,dwc3.yaml | 10 +-
.../devicetree/bindings/usb/usb3503.txt | 39 --
.../devicetree/bindings/w1/w1-gpio.txt | 27 --
.../devicetree/bindings/w1/w1-gpio.yaml | 44 ++
arch/arm/boot/dts/axp209.dtsi | 6 +-
arch/arm/boot/dts/axp22x.dtsi | 6 +-
arch/arm/boot/dts/axp81x.dtsi | 10 +-
.../arm/boot/dts/sun4i-a10-olinuxino-lime.dts | 11 +-
arch/arm/boot/dts/sun4i-a10.dtsi | 11 +-
arch/arm/boot/dts/sun5i-a13.dtsi | 15 +-
arch/arm/boot/dts/sun6i-a31.dtsi | 44 +-
arch/arm/boot/dts/sun7i-a20-bananapi.dts | 17 +-
arch/arm/boot/dts/sun7i-a20.dtsi | 34 +-
arch/arm/boot/dts/sun8i-a33.dtsi | 4 +-
arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts | 2 +-
arch/arm/boot/dts/sun8i-a83t.dtsi | 4 +-
arch/arm/boot/dts/sun8i-h3.dtsi | 4 +-
arch/arm/boot/dts/sun8i-v3-sl631.dtsi | 2 +-
arch/arm/boot/dts/sun8i-v3s.dtsi | 2 -
arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | 2 +-
.../boot/dts/sunxi-libretech-all-h3-it.dtsi | 2 +-
arch/arm64/boot/dts/allwinner/axp803.dtsi | 10 +-
.../arm64/boot/dts/allwinner/sun50i-a100.dtsi | 6 +-
.../dts/allwinner/sun50i-a64-cpu-opp.dtsi | 2 +-
.../dts/allwinner/sun50i-a64-orangepi-win.dts | 2 +-
.../boot/dts/allwinner/sun50i-a64-pinetab.dts | 2 +-
.../boot/dts/allwinner/sun50i-a64-teres-i.dts | 3 +-
.../boot/dts/allwinner/sun50i-h5-cpu-opp.dtsi | 2 +-
arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 2 +-
.../boot/dts/allwinner/sun50i-h6-cpu-opp.dtsi | 2 +-
arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 8 +-
84 files changed, 2191 insertions(+), 1743 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/arm,cci-400.yaml
create mode 100644 Documentation/devicetree/bindings/arm/cci-control-port.yaml
delete mode 100644 Documentation/devicetree/bindings/arm/cci.txt
create mode 100644 Documentation/devicetree/bindings/arm/sunxi/allwinner,sun6i-a31-cpuconfig.yaml
create mode 100644 Documentation/devicetree/bindings/arm/sunxi/allwinner,sun9i-a80-prcm.yaml
delete mode 100644 Documentation/devicetree/bindings/display/panel/advantech,idk-1110wr.yaml
delete mode 100644 Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml
delete mode 100644 Documentation/devicetree/bindings/display/panel/innolux,ee101ia-01d.yaml
delete mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.yaml
delete mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.yaml
delete mode 100644 Documentation/devicetree/bindings/display/panel/sgd,gktw70sdae4se.yaml
create mode 100644 Documentation/devicetree/bindings/gnss/u-blox,neo-6m.yaml
delete mode 100644 Documentation/devicetree/bindings/gnss/u-blox.txt
delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-axp209.txt
create mode 100644 Documentation/devicetree/bindings/gpio/x-powers,axp209-gpio.yaml
create mode 100644 Documentation/devicetree/bindings/hwmon/iio-hwmon.yaml
create mode 100644 Documentation/devicetree/bindings/input/touchscreen/silead,gsl1680.yaml
delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/silead_gsl1680.txt
delete mode 100644 Documentation/devicetree/bindings/media/i2c/ov5640.txt
create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov5640.yaml
delete mode 100644 Documentation/devicetree/bindings/mfd/ac100.txt
delete mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt
create mode 100644 Documentation/devicetree/bindings/mfd/x-powers,ac100.yaml
create mode 100644 Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml
delete mode 100644 Documentation/devicetree/bindings/mmc/mmc-card.txt
create mode 100644 Documentation/devicetree/bindings/mmc/mmc-card.yaml
delete mode 100644 Documentation/devicetree/bindings/net/wireless/esp,esp8089.txt
create mode 100644 Documentation/devicetree/bindings/net/wireless/esp,esp8089.yaml
create mode 100644 Documentation/devicetree/bindings/regulator/silergy,sy8106a.yaml
delete mode 100644 Documentation/devicetree/bindings/regulator/sy8106a-regulator.txt
create mode 100644 Documentation/devicetree/bindings/reserved-memory/memory-region.yaml
create mode 100644 Documentation/devicetree/bindings/reserved-memory/reserved-memory.yaml
create mode 100644 Documentation/devicetree/bindings/reserved-memory/shared-dma-pool.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/bt-sco.txt
create mode 100644 Documentation/devicetree/bindings/sound/linux,bt-sco.yaml
create mode 100644 Documentation/devicetree/bindings/sound/linux,spdif-dit.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/wlf,wm8978.yaml
create mode 100644 Documentation/devicetree/bindings/usb/smsc,usb3503.yaml
delete mode 100644 Documentation/devicetree/bindings/usb/usb3503.txt
delete mode 100644 Documentation/devicetree/bindings/w1/w1-gpio.txt
create mode 100644 Documentation/devicetree/bindings/w1/w1-gpio.yaml
--
2.31.1
Mark Brown [Mon, 13 Sep 2021 10:24:00 +0000 (11:24 +0100)]
Merge series "Convert name-prefix doc to json-schema" from Sameer Pujar <spujar@nvidia.com>:
Following are the changes:
- Add json-schema for 'sound-name-prefix' documentation under
'name-perfix.yaml'
- Use schema references wherever needed.
- Remove txt based doc
Changelog
=========
v2 -> v3
--------
* Removed examples in patch 1/3 as suggested by Rob
* Added reviewed tag from Jerome for the series
* Added reviewed tag from Rob for patch 2/3
v1 -> v2
--------
* Provide top reference to name-prefix.yaml as suggested by Rob
for patch 2/3
* Dropped couple of unreachable email ids from Cc list in commit
message of patch 2/3
* No changes in remaining patches
Sameer Pujar (3):
ASoC: Add json-schema documentation for sound-name-prefix
ASoC: Use schema reference for sound-name-prefix
ASoC: Remove name-prefix.txt
.../devicetree/bindings/sound/name-prefix.txt | 24 ----------------------
.../devicetree/bindings/sound/name-prefix.yaml | 21 +++++++++++++++++++
.../bindings/sound/nvidia,tegra186-dspk.yaml | 9 +++-----
.../bindings/sound/nvidia,tegra210-dmic.yaml | 9 +++-----
.../bindings/sound/nvidia,tegra210-i2s.yaml | 9 +++-----
.../devicetree/bindings/sound/nxp,tfa989x.yaml | 9 +++-----
Documentation/devicetree/bindings/sound/rt5659.txt | 2 +-
.../bindings/sound/simple-audio-mux.yaml | 9 +++-----
8 files changed, 37 insertions(+), 55 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/sound/name-prefix.txt
create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml
--
2.7.4
gearhead [Tue, 7 Sep 2021 21:01:25 +0000 (16:01 -0500)]
ASoC: pcm5102a: increase rate from 192k to 384k
the pcm5102a is capable of 384k, but the current code limits it to 192k.
This commit extends to 384k
Signed-off-by: gearhead <ys3al35l@gmail.com>
Link: https://lore.kernel.org/r/20210907210130.116769-1-ys3al35l@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Jack Yu [Mon, 6 Sep 2021 10:12:08 +0000 (18:12 +0800)]
ASoC: rt1011: add i2s reference control for rt1011
Add i2s reference control for rt1011 amp.
Signed-off-by: Jack Yu <jack.yu@realtek.com>
Link: https://lore.kernel.org/r/20210906101208.11585-1-jack.yu@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Fri, 3 Sep 2021 11:40:18 +0000 (14:40 +0300)]
ASoC: SOF: Handle control change notification from firmware
If the value/data associated with a control changes in SOF it will send a
notification (SOF_IPC_GLB_COMP_MSG with SOF_IPC_COMP_GET_VALUE/DATA).
We have support for binary volatile control type, but we might have
features where enum/switch/volume changes. Re-implementing everything as
volatile as well would be not much of a gain for several reasons:
- volatile controls would do an IPC all the time, regardless if there is a
need or not.
- We still don't have notification which forces userspace to continuously
poll.
When such notification arrives we use snd_ctl_notify_one() to signal
userspace about the change.
The kernel is prepared for two types of notification:
- the notification carries the new data for the control (num_elems != 0)
The new value/data is copied to the control's local data
- blank message about a change
The new flag for the scontrol (comp_data_dirty) is set and when next
time user space reads the value via the kcontrol's get callback we will
refresh the control's local data from the firmware.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Tested-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Link: https://lore.kernel.org/r/20210903114018.2962-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Trevor Wu [Thu, 2 Sep 2021 07:14:40 +0000 (15:14 +0800)]
ASoC: mt8195: remove unnecessary CONFIG_PM
The unnecessary conditional inclusion caused the following warning.
>> sound/soc/mediatek/mt8195/mt8195-afe-pcm.c:3260:32: warning: unused
>> variable 'mt8195_afe_pm_ops' [-Wunused-const-variable]
static const struct dev_pm_ops mt8195_afe_pm_ops = {
^
1 warning generated.
Because runtime_pm already handles the case without CONFIG_PM, we
can remove CONFIG_PM condition.
Fixes: 6746cc858259 ("ASoC: mediatek: mt8195: add platform driver")
Signed-off-by: Trevor Wu <trevor.wu@mediatek.com>
Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/r/20210902071440.6087-1-trevor.wu@mediatek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Rander Wang [Thu, 2 Sep 2021 11:47:44 +0000 (14:47 +0300)]
ASoC: SOF: control: fix a typo in put operations for kcontrol
SOF_CTRL_TYPE_VALUE_CHAN_SET should be used for put operations
for consistency. The current use of _GET is obviously incorrect
but _GET and _SET result in the same action so there is no
functional change introduced by this patch.
Signed-off-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-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/20210902114744.27237-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Shengjiu Wang [Fri, 27 Aug 2021 06:00:38 +0000 (14:00 +0800)]
ASoC: fsl_rpmsg: add soc specific data structure
Each platform has different supported rates and
formats, so add soc specific data for each platform.
This soc specific data is attached with compatible string.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Link: https://lore.kernel.org/r/1630044038-19036-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Guenter Roeck [Tue, 7 Sep 2021 04:53:58 +0000 (21:53 -0700)]
spi: tegra20-slink: Declare runtime suspend and resume functions conditionally
The following build error is seen with CONFIG_PM=n.
drivers/spi/spi-tegra20-slink.c:1188:12: error:
'tegra_slink_runtime_suspend' defined but not used
drivers/spi/spi-tegra20-slink.c:1200:12: error:
'tegra_slink_runtime_resume' defined but not used
Declare the functions only if PM is enabled. While at it, remove the
unnecessary forward declarations.
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20210907045358.2138282-1-linux@roeck-us.net
Signed-off-by: Mark Brown <broonie@kernel.org>
Srinivasa Rao Mandadapu [Mon, 6 Sep 2021 13:27:34 +0000 (18:57 +0530)]
ASoC: dt-bindings: lpass: add binding headers for digital codecs
Add header defining for lpass internal digital codecs rx,tx and va
dai node id's.
Signed-off-by: Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
Link: https://lore.kernel.org/r/1630934854-14086-1-git-send-email-srivasam@codeaurora.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Derek Fang [Tue, 31 Aug 2021 13:02:58 +0000 (21:02 +0800)]
ASoC: dt-bindings: rt5682s: add bindings for rt5682s
Realtek ALC5682I-VS codec is a ALC5682I-VD variant which supports I2C only.
Signed-off-by: Derek Fang <derek.fang@realtek.com>
Link: https://lore.kernel.org/r/20210831130258.19286-2-derek.fang@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Derek Fang [Tue, 31 Aug 2021 13:02:57 +0000 (21:02 +0800)]
ASoC: rt5682s: Add driver for ALC5682I-VS codec
This is an initial codec driver for Realtek ALC5682I-VS codec.
Signed-off-by: Derek Fang <derek.fang@realtek.com>
Signed-off-by: Derek Fang <derek.fang@realtek.com<mailto:derek.fang@realtek.com>>
Link: https://lore.kernel.org/r/20210831130258.19286-1-derek.fang@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Colin Ian King [Fri, 3 Sep 2021 11:49:28 +0000 (12:49 +0100)]
ASoC: mediatek: mt8195: Fix unused initialization of pointer etdm_data
The pointer etdm_data is being inintialized with a value that is never
read, it is later being re-assigned a new value. Remove the redundant
initialization.
Addresses-Coverity: ("Unused value")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Acked-by: Trevor Wu <trevor.wu@mediatek.com>
Link: https://lore.kernel.org/r/20210903114928.11743-1-colin.king@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Masahiro Yamada [Wed, 1 Sep 2021 16:40:09 +0000 (01:40 +0900)]
ASoC: ti: rename CONFIG_SND_SOC_DM365_VOICE_CODEC_MODULE
Kconfig generates include/generated/autoconf.h to make CONFIG options
available to the pre-processor. Symbols with the value 'm' are suffixed
with '_MODULE'
Here is a conflict; CONFIG_FOO=m results in '#define CONFIG_FOO_MODULE 1',
but CONFIG_FOO_MODULE=y also results in the same define.
Also, CONFIG options that end with '_MODULE' confuse the Kconfig/fixdep
interaction; fixdep always assumes CONFIG_FOO_MODULE comes from
CONFIG_FOO=m, so the dependency is not properly tracked for symbols
that end with '_MODULE'.
For these reasons, CONFIG options that end with '_MODULE' should be
avoided in general. (I am planning on adding a check in Kconfig.)
This is the only case in the current kernel.
The new option name was suggested by Péter Ujfalusi. [1]
[1] https://lore.kernel.org/all/
d9e777dc-d274-92ee-4d77-
711bfd553611@gmail.com/
Fixes: 147162f57515 ("ASoC: ti: fix SND_SOC_DM365_VOICE_CODEC dependencies")
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Link: https://lore.kernel.org/r/20210901164009.1546967-1-masahiroy@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 7 Sep 2021 18:46:47 +0000 (13:46 -0500)]
ASoC: SOF: core: allow module parameter to override dma trace Kconfig
Most distributions do not enable the SOF developer options and
specifically the DMA trace. This is problematic for end-user/community
support since the sof-logger tool cannot extract valuable information.
Conversely in rare cases the DMA trace can lead to Heisenbugs by
creating more traffic to system memory and more interrupts.
This patch changes the logic so that the Kconfig value is used as a
default value for a module parameter, but this value can be changed as
needed. Users can override the distro DMA trace selection.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210907184648.33306-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Cai Huoqing [Wed, 1 Sep 2021 13:27:41 +0000 (21:27 +0800)]
ASoC: mediatek: mt8195: Make use of the helper function devm_platform_ioremap_resource()
Use the devm_platform_ioremap_resource() helper instead of
calling platform_get_resource() and devm_ioremap_resource()
separately
Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>
Link: https://lore.kernel.org/r/20210901132742.31714-1-caihuoqing@baidu.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Peter Ujfalusi [Thu, 2 Sep 2021 11:23:01 +0000 (14:23 +0300)]
ASoC: soc-topology: Move template info print soc_tplg_dapm_widget_create()
A DAPM widget now can have different types of controls, it is no longer
correct to print the type as it is just the type of the first control.
Move it after the loop where we create the controls and print the number
of the control types.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210902112301.22657-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 7 Sep 2021 18:42:14 +0000 (13:42 -0500)]
ASoC: amd: acp: declare and add prefix to 'bt_uart_enable' symbol
Sparse reports the following warning:
sound/soc/amd/acp-pcm-dma.c:39:6: error: symbol 'bt_uart_enable' was
not declared. Should it be static?
It's not very good practice to export such symbols that can easily
conflict, add the acp_ prefix and add declaration in header file.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210907184216.33067-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sebastian Andrzej Siewior [Fri, 10 Sep 2021 09:48:47 +0000 (11:48 +0200)]
ASoC: mediatek: mt8195: Remove unsued irqs_lock.
irqs_lock is not used, never was.
Remove irqs_lock.
Fixes: 283b612429a27 ("ASoC: mediatek: implement mediatek common structure")
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Link: https://lore.kernel.org/r/20210910094847.3430413-1-bigeasy@linutronix.de
Signed-off-by: Mark Brown <broonie@kernel.org>
Maxime Ripard [Wed, 1 Sep 2021 09:18:04 +0000 (11:18 +0200)]
ASoC: dt-bindings: Convert Simple Amplifier binding to a schema
Simple audio amplifiers are supported by Linux with a matching device
tree binding.
Now that we have the DT validation in place, let's convert the device
tree bindings for that driver over to a YAML schema.
Cc: alsa-devel@alsa-project.org
Cc: Jerome Brunet <jbrunet@baylibre.com>
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20210901091852.479202-5-maxime@cerno.tech
Signed-off-by: Mark Brown <broonie@kernel.org>
Maxime Ripard [Wed, 1 Sep 2021 09:18:03 +0000 (11:18 +0200)]
ASoC: dt-bindings: Convert SPDIF Transmitter binding to a schema
The SPDIF Transmitter binding is used by Linux with a matching Device
Tree binding.
Now that we have the DT validation in place, let's convert the device
tree bindings for that driver over to a YAML schema.
Cc: alsa-devel@alsa-project.org
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20210901091852.479202-4-maxime@cerno.tech
Signed-off-by: Mark Brown <broonie@kernel.org>
Maxime Ripard [Wed, 1 Sep 2021 09:18:02 +0000 (11:18 +0200)]
ASoC: dt-bindings: Convert Bluetooth SCO Link binding to a schema
Bluetooth SCO Link are supported by Linux with a matching device tree
binding.
Now that we have the DT validation in place, let's convert the device
tree bindings for that driver over to a YAML schema.
Cc: alsa-devel@alsa-project.org
Cc: devicetree@vger.kernel.org
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Samuel Holland <samuel@sholland.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20210901091852.479202-3-maxime@cerno.tech
Signed-off-by: Mark Brown <broonie@kernel.org>
Maxime Ripard [Wed, 1 Sep 2021 09:18:01 +0000 (11:18 +0200)]
ASoC: dt-bindings: Add WM8978 Binding
Even though we had the wm8978 driver for some time and a number of
boards using it already, we never had a binding for it. Let's add it
based on what the driver expects and the boards are providing.
Cc: alsa-devel@alsa-project.org
Cc: devicetree@vger.kernel.org
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: patches@opensource.cirrus.com
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210901091852.479202-2-maxime@cerno.tech
Signed-off-by: Mark Brown <broonie@kernel.org>
Sameer Pujar [Fri, 3 Sep 2021 16:35:19 +0000 (22:05 +0530)]
ASoC: Remove name-prefix.txt
Since schema name-prefix.yaml is available and references are updated,
remove txt based doc.
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Cc: Rob Herring <robh+dt@kernel.org>
Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630686919-19495-4-git-send-email-spujar@nvidia.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sameer Pujar [Fri, 3 Sep 2021 16:35:18 +0000 (22:05 +0530)]
ASoC: Use schema reference for sound-name-prefix
Use schema reference for 'sound-name-prefix' property wherever
necessary.
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Cc: Stephan Gerhold <stephan@gerhold.net>
Cc: Rob Herring <robh+dt@kernel.org>
Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630686919-19495-3-git-send-email-spujar@nvidia.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sameer Pujar [Fri, 3 Sep 2021 16:35:17 +0000 (22:05 +0530)]
ASoC: Add json-schema documentation for sound-name-prefix
The 'sound-name-prefix' is used to prepend suitable strings to a
component widgets or controls. This is helpful when there are
multiple instances of the same component. Add relevant json-schema
and is inspired from sound-name-prefix.txt documentation.
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Cc: Rob Herring <robh+dt@kernel.org>
Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630686919-19495-2-git-send-email-spujar@nvidia.com
Signed-off-by: Mark Brown <broonie@kernel.org>
David Rhodes [Tue, 7 Sep 2021 22:57:19 +0000 (17:57 -0500)]
ASoC: cs35l41: Add bindings for CS35L41
Devicetree binding documentation for CS35L41 driver
CS35L41 is a 11-V Boosted Mono Class D Amplifier with
DSP Speaker Protection and Equalization
Signed-off-by: David Rhodes <drhodes@opensource.cirrus.com>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210907225719.2018115-3-drhodes@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
David Rhodes [Tue, 7 Sep 2021 22:57:18 +0000 (17:57 -0500)]
ASoC: cs35l41: CS35L41 Boosted Smart Amplifier
SoC Audio driver for the Cirrus Logic CS35L41 amplifier
Signed-off-by: David Rhodes <drhodes@opensource.cirrus.com>
Tested-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20210907225719.2018115-2-drhodes@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:58 +0000 (21:23 +0800)]
ASoC: dt-bindings: rockchip: Convert pdm bindings to yaml
This patch converts pdm bindings to yaml.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630675438-3418-2-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:57 +0000 (21:23 +0800)]
ASoC: dt-bindings: rockchip: pdm: Document property 'rockchip,path-map'
This is an optional property to describe data path mapping.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630675438-3418-1-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:28 +0000 (21:23 +0800)]
ASoC: rockchip: pdm: Add support for path map
This patch adds property 'rockchip,path-map' for path mapping.
e.g.
"rockchip,path-map = <3 2 1 0>" means the mapping as follows:
path0 <-- sdi3
path1 <-- sdi2
path2 <-- sdi1
path3 <-- sdi0
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Link: https://lore.kernel.org/r/1630675410-3354-5-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:27 +0000 (21:23 +0800)]
ASoC: dt-bindings: rockchip: Add binding for rk3568 pdm
This patch documents for rk3568 pdm.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630675410-3354-4-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:26 +0000 (21:23 +0800)]
ASoC: rockchip: pdm: Add support for rk3568 pdm
This patch adds compatible for rk3568 which is the same
with rv1126.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Link: https://lore.kernel.org/r/1630675410-3354-3-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:25 +0000 (21:23 +0800)]
ASoC: dt-bindings: rockchip: Add binding for rv1126 pdm
This patch documents for rv1126 pdm.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1630675410-3354-2-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Sugar Zhang [Fri, 3 Sep 2021 13:23:24 +0000 (21:23 +0800)]
ASoC: rockchip: Add support for rv1126 pdm
This patch adds support for rv1126 pdm controller which
redesign cic filiter for better performance.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Link: https://lore.kernel.org/r/1630675410-3354-1-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Mon, 13 Sep 2021 00:41:27 +0000 (01:41 +0100)]
Merge existing fixes from asoc/for-5.15
Linus Torvalds [Sun, 12 Sep 2021 23:28:37 +0000 (16:28 -0700)]
Linux 5.15-rc1
Linus Torvalds [Sun, 12 Sep 2021 23:18:15 +0000 (16:18 -0700)]
Merge tag 'perf-tools-for-v5.15-2021-09-11' of git://git./linux/kernel/git/acme/linux
Pull more perf tools updates from Arnaldo Carvalho de Melo:
- Add missing fields and remove some duplicate fields when printing a
perf_event_attr.
- Fix hybrid config terms list corruption.
- Update kernel header copies, some resulted in new kernel features
being automagically added to 'perf trace' syscall/tracepoint argument
id->string translators.
- Add a file generated during the documentation build to .gitignore.
- Add an option to build without libbfd, as some distros, like Debian
consider its ABI unstable.
- Add support to print a textual representation of IBS raw sample data
in 'perf report'.
- Fix bpf 'perf test' sample mismatch reporting
- Fix passing arguments to stackcollapse report in a 'perf script'
python script.
- Allow build-id with trailing zeros.
- Look for ImageBase in PE file to compute .text offset.
* tag 'perf-tools-for-v5.15-2021-09-11' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux: (25 commits)
tools headers UAPI: Update tools's copy of drm.h headers
tools headers UAPI: Sync drm/i915_drm.h with the kernel sources
tools headers UAPI: Sync linux/fs.h with the kernel sources
tools headers UAPI: Sync linux/in.h copy with the kernel sources
perf tools: Add an option to build without libbfd
perf tools: Allow build-id with trailing zeros
perf tools: Fix hybrid config terms list corruption
perf tools: Factor out copy_config_terms() and free_config_terms()
perf tools: Fix perf_event_attr__fprintf() missing/dupl. fields
perf tools: Ignore Documentation dependency file
perf bpf: Provide a weak btf__load_from_kernel_by_id() for older libbpf versions
tools include UAPI: Update linux/mount.h copy
perf beauty: Cover more flags in the move_mount syscall argument beautifier
tools headers UAPI: Sync linux/prctl.h with the kernel sources
tools include UAPI: Sync sound/asound.h copy with the kernel sources
tools headers UAPI: Sync linux/kvm.h with the kernel sources
tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources
perf report: Add support to print a textual representation of IBS raw sample data
perf report: Add tools/arch/x86/include/asm/amd-ibs.h
perf env: Add perf_env__cpuid, perf_env__{nr_}pmu_mappings
...