Kuninori Morimoto
4422df6782
ASoC: ux500: mop500_ab8500: convert to snd_soc_dapm_xxx()
...
This patch converts below functions.
dapm->dev -> snd_soc_dapm_to_dev()
dapm->card -> snd_soc_dapm_to_card()
dapm->component -> snd_soc_dapm_to_component()
dapm_kcontrol_get_value() -> snd_soc_dapm_kcontrol_get_value()
snd_soc_component_enable_pin() -> snd_soc_dapm_enable_pin()
snd_soc_component_enable_pin_unlocked() -> snd_soc_dapm_enable_pin_unlocked()
snd_soc_component_disable_pin() -> snd_soc_dapm_disable_pin()
snd_soc_component_disable_pin_unlocked() -> snd_soc_dapm_disable_pin_unlocked()
snd_soc_component_nc_pin() -> snd_soc_dapm_nc_pin()
snd_soc_component_nc_pin_unlocked() -> snd_soc_dapm_nc_pin_unlocked()
snd_soc_component_get_pin_status() -> snd_soc_dapm_get_pin_status()
snd_soc_component_force_enable_pin() -> snd_soc_dapm_force_enable_pin()
snd_soc_component_force_enable_pin_unlocked() -> snd_soc_dapm_force_enable_pin_unlocked()
snd_soc_component_force_bias_level() -> snd_soc_dapm_force_bias_level()
snd_soc_component_get_bias_level() -> snd_soc_dapm_get_bias_level()
snd_soc_component_init_bias_level() -> snd_soc_dapm_init_bias_level()
snd_soc_component_get_dapm() -> snd_soc_component_to_dapm()
snd_soc_dapm_kcontrol_component() -> snd_soc_dapm_kcontrol_to_component()
snd_soc_dapm_kcontrol_widget() -> snd_soc_dapm_kcontrol_to_widget()
snd_soc_dapm_kcontrol_dapm() -> snd_soc_dapm_kcontrol_to_dapm()
snd_soc_dapm_np_pin() -> snd_soc_dapm_disable_pin()
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Link: https://patch.msgid.link/87ms4ts8u3.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2025-11-17 00:18:48 +00:00
Kuninori Morimoto
5b8b93e695
ASoC: ux500: Standardize ASoC menu
...
Current Kconfig menu at [ALSA for SoC audio support] has no rules.
So, some venders are using menu style, some venders are listed each drivers
on top page, etc. It is difficult to find target vender and/or drivers
because it is very random.
Let's standardize ASoC menu
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://patch.msgid.link/877c1hzqcv.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2025-06-24 01:01:29 +01:00
Kuninori Morimoto
521c04c6e3
ASoC: ux500: use inclusive language for SND_SOC_DAIFMT_CBx_CFx
...
In SND_SOC_DAIFMT_CBx_CFx, M/S are no longer used. use P/C.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://patch.msgid.link/871pvlbi6h.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2025-03-03 12:58:53 +00:00
Tang Bin
fa24fdc8ae
ASoC: ux500: Remove redundant casts
...
In the function ux500_msp_drv_probe, the 'int' type cast
in front of the PTR_ERR() macro is redundant, thus remove
it.
Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com >
Link: https://patch.msgid.link/20241107075440.2770-1-tangbin@cmss.chinamobile.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2024-11-07 15:23:29 +00:00
Uwe Kleine-König
130af75b5c
ASoC: Switch back to struct platform_driver::remove()
...
After commit 0edb555a65 ("platform: Make platform_driver::remove()
return void") .remove() is (again) the right callback to implement for
platform drivers.
Convert all drivers below sound/soc to use .remove(), with the eventual
goal to drop struct platform_driver::remove_new(). As .remove() and
.remove_new() have the same prototypes, conversion is done by just
changing the structure member name in the driver initializer.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com >
Link: https://patch.msgid.link/20240909151230.909818-2-u.kleine-koenig@baylibre.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2024-09-09 18:26:49 +01:00
Mark Brown
dd5cb1b42a
ASoC: Add missing module descriptions
...
Merge series from Takashi Iwai <tiwai@suse.de >:
Hi,
here is a trivial patch series to add the missing module descriptions
to ASoC drivers, as make W=1 starts complaining the lack of
MODULE_DESCRIPTION() since recently.
The whole sound/soc/sof/* are untouched as there are too many files
involved, and I left SOF people to address them.
thanks,
Takashi
===
Takashi Iwai (7):
ASoC: ab8500: Add missing module description
ASoC: sigmadsp: Add missing module description
ASoC: qcom: Add missing module descriptions
ASoC: dmaengine: Add missing module description
ASoC: topology-test: Add missing module description
ASoC: ux500: Add missing module description
ASoC: xilinx: Add missing module descriptions
sound/soc/codecs/ab8500-codec.c | 1 +
sound/soc/codecs/sigmadsp.c | 1 +
sound/soc/qcom/common.c | 2 ++
sound/soc/qcom/qdsp6/q6dsp-common.c | 2 ++
sound/soc/soc-generic-dmaengine-pcm.c | 1 +
sound/soc/soc-topology-test.c | 1 +
sound/soc/ux500/ux500_msp_dai.c | 1 +
sound/soc/xilinx/xlnx_formatter_pcm.c | 2 ++
sound/soc/xilinx/xlnx_i2s.c | 1 +
9 files changed, 12 insertions(+)
--
2.43.0
2024-05-09 08:37:35 +02:00
Takashi Iwai
e85d8aeef2
ASoC: ux500: Add missing module description
...
Now that make W=1 starts complaining the lack of MODULE_DESCRIPTION(),
let's add the missing information.
Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Link: https://lore.kernel.org/r/ZjpQm-hxLQtpgkUx@smile.fi.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de >
Reviewed-by: Dragan Simic <dsimic@manjaro.org >
Link: https://lore.kernel.org/r/20240508091909.27062-7-tiwai@suse.de
Signed-off-by: Mark Brown <broonie@kernel.org >
2024-05-08 20:51:11 +09:00
Takashi Iwai
c4850e856f
ASoC: ux500: Use *-y instead of *-objs in Makefile
...
*-objs suffix is reserved rather for (user-space) host programs while
usually *-y suffix is used for kernel drivers (although *-objs works
for that purpose for now).
Let's correct the old usages of *-objs in Makefiles.
Signed-off-by: Takashi Iwai <tiwai@suse.de >
Link: https://lore.kernel.org/r/20240507155540.24815-33-tiwai@suse.de
Signed-off-by: Mark Brown <broonie@kernel.org >
2024-05-08 11:39:37 +09:00
Kuninori Morimoto
3a0901d771
ASoC: ux500: convert not to use asoc_xxx()
...
ASoC is now unified asoc_xxx() into snd_soc_xxx().
This patch convert asoc_xxx() to snd_soc_xxx().
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87ledcqni4.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-09-25 14:16:31 +02:00
Kuninori Morimoto
ce11656ccd
ASoC: ux500: merge DAI call back functions into ops
...
ALSA SoC merges DAI call backs into .ops.
This patch merge these into one.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Acked-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/877cq5b0sx.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-08-14 13:10:16 +01:00
Uwe Kleine-König
316a6bbfb8
ASoC: ux500: ux500_msp_dai: Convert to platform remove callback returning void
...
The .remove() callback for a platform driver returns an int which makes
many driver authors wrongly assume it's possible to do error handling by
returning an error code. However the value returned is (mostly) ignored
and this typically results in resource leaks. To improve here there is a
quest to make the remove callback return void. In the first step of this
quest all drivers are converted to .remove_new() which already returns
void.
Trivially convert this driver from always returning zero in the remove
callback to the void returning variant.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Acked-by: Linus Walleij <linus.walleij@linaro.org >
Acked-by: Takashi Iwai <tiwai@suse.de >
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com >
Link: https://lore.kernel.org/r/20230315150745.67084-169-u.kleine-koenig@pengutronix.de
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-03-20 13:09:32 +00:00
Uwe Kleine-König
d2b6d5b85a
ASoC: ux500: mop500: Convert to platform remove callback returning void
...
The .remove() callback for a platform driver returns an int which makes
many driver authors wrongly assume it's possible to do error handling by
returning an error code. However the value returned is (mostly) ignored
and this typically results in resource leaks. To improve here there is a
quest to make the remove callback return void. In the first step of this
quest all drivers are converted to .remove_new() which already returns
void.
Trivially convert this driver from always returning zero in the remove
callback to the void returning variant.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Acked-by: Linus Walleij <linus.walleij@linaro.org >
Acked-by: Takashi Iwai <tiwai@suse.de >
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com >
Link: https://lore.kernel.org/r/20230315150745.67084-168-u.kleine-koenig@pengutronix.de
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-03-20 13:09:32 +00:00
Arnd Bergmann
aafe9375b3
ASoC: ux500: remove stedma40 references
...
ux500_pcm_request_chan() is never called because the dma channels
are already set up from DT. Remove this, along with the
ux500_msp_dma_params structure.
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Reviewed-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/20230118161110.521504-4-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-01-20 12:05:57 +00:00
Arnd Bergmann
1766ac5248
ASoC: ux500: remove platform_data support
...
The platform data definition for ux500 sound devices was removed
six years ago after the DT conversion was completed, see commit
4b483ed0be ("ARM: ux500: cut some platform data").
Remove some leftover bits in the ASoC driver and just assume that
it always gets probed using DT.
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Reviewed-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/20230118161110.521504-3-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-01-20 12:05:56 +00:00
Charles Keepax
768be0d633
ASoC: ux500: Migrate to new style legacy DAI naming flag
...
Change the legacy DAI naming flag from opting in to the new scheme
(non_legacy_dai_naming), to opting out of it (legacy_dai_naming).
This driver appears to be on the CPU side of the DAI link and
currently uses the legacy naming, so add the new flag.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20220623125250.2355471-31-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-06-27 13:16:41 +01:00
Mark Brown
d3d8feadcc
Specify clock provider directly to CPU DAIs
...
Merge series from Charles Keepax <ckeepax@opensource.cirrus.com >:
Currently the set_fmt callback always passes clock provider/consumer
with respect to the CODEC. This made sense when the framework was
directly broken down into platforms and CODECs. However, as things
are now broken down into components which can be connected as either
the CPU or CODEC side of a DAI link it simplifies things if each
side of the link is just told if it is provider or consumer of the
clocks. Making this change allows us to remove one of the last parts
of the ASoC core that needs to know if a driver is a CODEC driver,
where it flips the clock format specifier if a CODEC driver is used on
the CPU side of a DAI link, as well as just being conceptually more
consistent with componentisation.
The basic idea of this patch chain is to change the set_fmt callback
from specifying if the CODEC is provider/consumer into directly
specifying if the component is provider/consumer. To do this we add
some new defines, and then to preserve bisectability, the migration is
done by adding a new callback, converting over all existing CPU side
drivers, converting the core, and then finally reverting back to the
old callback.
Converting the platform drivers makes sense as the existing defines
are from the perspective of the CODEC and there are more CODEC drivers
than platform drivers.
Obviously a fair amount of this patch chain I was only able to build
test, so any testing that can be done would be greatly appreciated.
2022-06-09 11:56:32 +01:00
Christophe JAILLET
8466579b63
ASoC: ux500: Remove some leftover from the "Replace GPLv2 boilerplate/reference with SPDX" rules
...
The "Replace GPLv2 boilerplate/reference with SPDX" has left some empty
"License terms" paragraphs.
Remove them as well.
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Link: https://lore.kernel.org/r/84d94977c57deee9e85249f18394ebf8d72497bc.1653724723.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-06-06 12:38:28 +01:00
Charles Keepax
e24ba1a21e
ASoC: ux500: Rename set_fmt_new back to set_fmt
...
Now the core has been migrated across to the new direct clock
specification we can move the drivers back to the normal set_fmt
callback.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20220519154318.2153729-54-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-06-06 12:34:19 +01:00
Charles Keepax
ce3467c784
ASoC: ux500: Update to use set_fmt_new callback
...
As part of updating the core to directly tell drivers if they are clock
provider or consumer update this CPU side driver to use the new direct
callback.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20220519154318.2153729-27-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-06-06 12:33:51 +01:00
Yihao Han
37a86b32bf
ASoC: ux500: mop500: Check before clk_put() not needed
...
clk_put() already checks the clk ptr using !clk and IS_ERR()
so there is no need to check it again before calling it.
Signed-off-by: Yihao Han <hanyihao@vivo.com >
Link: https://lore.kernel.org/r/20220517033050.5191-1-hanyihao@vivo.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-05-17 11:58:54 +01:00
Rikard Falkeborn
2831b71917
ASoC: ux500: mop500: Constify static snd_soc_ops
...
The struct mop500_ab8500_ops is only assigned to the ops field in the
snd_soc_dai_link struct which is a pointer to const struct snd_soc_ops.
Make it const to allow the compiler to put it in read-only memory.
Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com >
Link: https://lore.kernel.org/r/20210929094401.28086-1-rikard.falkeborn@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-09-29 13:06:38 +01:00
Pierre-Louis Bossart
b4d09a0166
ASoC: ux500: mop500: align function prototype
...
cppcheck warning:
sound/soc/ux500/mop500_ab8500.c:360:60: style:inconclusive: Function
'mop500_ab8500_machine_init' argument 1 names different: declaration
'runtime' definition 'rtd'. [funcArgNamesDifferent]
int mop500_ab8500_machine_init(struct snd_soc_pcm_runtime *rtd)
^
sound/soc/ux500/mop500_ab8500.h:16:60: note: Function
'mop500_ab8500_machine_init' argument 1 names different: declaration
'runtime' definition 'rtd'.
int mop500_ab8500_machine_init(struct snd_soc_pcm_runtime *runtime);
^
sound/soc/ux500/mop500_ab8500.c:360:60: note: Function
'mop500_ab8500_machine_init' argument 1 names different: declaration
'runtime' definition 'rtd'.
int mop500_ab8500_machine_init(struct snd_soc_pcm_runtime *rtd)
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20210326215927.936377-18-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-03-31 18:03:28 +01:00
Pierre-Louis Bossart
5b920abeea
ASoC: ux500: mop500: rename shadowing variable
...
cppcheck warning:
sound/soc/ux500/mop500.c:143:23: style: Local variable 'mop500_card'
shadows outer variable [shadowVariable]
struct snd_soc_card *mop500_card = platform_get_drvdata(pdev);
^
sound/soc/ux500/mop500.c:54:28: note: Shadowed declaration
static struct snd_soc_card mop500_card = {
^
sound/soc/ux500/mop500.c:143:23: note: Shadow variable
struct snd_soc_card *mop500_card = platform_get_drvdata(pdev);
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Link: https://lore.kernel.org/r/20210326215927.936377-17-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-03-31 18:03:27 +01:00
Kuninori Morimoto
3e44c47979
ASoC: ux500: use asoc_substream_to_rtd()
...
Now we can use asoc_substream_to_rtd() macro,
let's use it.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87v9ij0yv9.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-07-23 19:07:20 +01:00
Lee Jones
79b094c9dc
ASoC: ux500: ux500_msp_i2s: Remove unused variables 'reg_val_DR' and 'reg_val_TSTDR'
...
Looks like these have been unchecked since the driver's inception in 2012.
Fixes the following W=1 kernel build warning(s):
sound/soc/ux500/ux500_msp_i2s.c: In function ‘flush_fifo_rx’:
sound/soc/ux500/ux500_msp_i2s.c:398:6: warning: variable ‘reg_val_DR’
set but not used [-Wunused-but-set-variable]
sound/soc/ux500/ux500_msp_i2s.c: In function ‘flush_fifo_tx’:
sound/soc/ux500/ux500_msp_i2s.c:415:6: warning: variable
‘reg_val_TSTDR’ set but not used [-Wunused-but-set-variable]
Signed-off-by: Lee Jones <lee.jones@linaro.org >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Cc: zhong jiang <zhongjiang@huawei.com >
Cc: Ola Lilja <ola.o.lilja@stericsson.com >
Cc: Roger Nilsson <roger.xr.nilsson@stericsson.com >
Cc: Sandeep Kaushik <sandeep.kaushik@st.com >
Link: https://lore.kernel.org/r/20200709162328.259586-7-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2020-07-10 15:13:48 +01:00