summaryrefslogtreecommitdiff
path: root/sound/soc/tegra
AgeCommit message (Collapse)Author
2024-05-08ASoC: tegra: Use *-y instead of *-objs in MakefileTakashi Iwai
*-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-30-tiwai@suse.de Signed-off-by: Mark Brown <broonie@kernel.org>
2024-05-06ASoC: tegra: Use snd_soc_substream_to_rtd() for accessing private_dataKrzysztof Kozlowski
Do not open-code snd_soc_substream_to_rtd(). Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20240430-asoc-snd-substream-clean-v1-2-6f8a8902b479@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-04-08ASoC: tegra: Fix DSPK 16-bit playbackSameer Pujar
DSPK configuration is wrong for 16-bit playback and this happens because the client config is always fixed at 24-bit in hw_params(). Fix this by updating the client config to 16-bit for the respective playback. Fixes: 327ef6470266 ("ASoC: tegra: Add Tegra186 based DSPK driver") Cc: stable@vger.kernel.org Signed-off-by: Sameer Pujar <spujar@nvidia.com> Acked-by: Thierry Reding <treding@nvidia.com> Link: https://msgid.link/r/20240405104306.551036-1-spujar@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-12-18ASoC: tegra: tegra20_ac97: Convert to use GPIO descriptorsLinus Walleij
The Tegra20 AC97 driver is using the legacy GPIO APIs in <linux/of_gpio.h> and <linux/gpio.h> to obtain GPIOs for reset and sync. Convert it over and fix the polarity error on the RESET line in the process: this reset line is clearly active low. Just fix the one in-tree device tree site using it at the same time. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://msgid.link/r/20231214-gpio-descriptors-sound-misc-v1-4-e3004176bd8b@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-11-13ASoC: tegra: convert not to use dma_request_slave_channel()Christophe JAILLET
dma_request_slave_channel() is deprecated. dma_request_chan() should be used directly instead. Switch to the preferred function and update the error handling accordingly. Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://lore.kernel.org/r/b78685e4103f12931ddb09c1654bc6b04b640868.1699724240.git.christophe.jaillet@wanadoo.fr Signed-off-by: Mark Brown <broonie@kernel.org>
2023-10-26ASoC: tegra: machine: Handle component name prefixKrzysztof Kozlowski
Use snd_soc_dapm_widget_name_cmp() helper when comparing widget names, to include also the component's name prefix. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20231023095428.166563-18-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-10-23ASoC: simple-card-utils: Make simple_util_remove() return voidUwe Kleine-König
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. simple_util_remove() returned zero unconditionally. Make it return void instead and convert all users to struct platform_device::remove_new(). Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by: Herve Codina <herve.codina@bootlin.com> Link: https://lore.kernel.org/r/20231013221945.1489203-13-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-10-12ASoC: tegra: Fix -Wuninitialized in tegra210_amx_platform_probe()Nathan Chancellor
Clang warns (or errors with CONFIG_WERROR=y): sound/soc/tegra/tegra210_amx.c:553:10: error: variable 'soc_data' is uninitialized when used here [-Werror,-Wuninitialized] 553 | soc_data->regmap_conf); | ^~~~~~~~ A refactoring removed the initialization of this variable but its use was not updated. Use the soc_data value in the amx variable to resolve the warning and remove the soc_data variable, as it is now entirely unused. Closes: https://github.com/ClangBuiltLinux/linux/issues/1943 Fixes: 9958d85968ed ("ASoC: Use device_get_match_data()") Signed-off-by: Nathan Chancellor <nathan@kernel.org> Link: https://lore.kernel.org/r/20231011-asoc-tegra-fix-uninit-soc_data-v1-1-0ef0ab44cf48@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-10-09ASoC: Use device_get_match_data()Rob Herring
Use preferred device_get_match_data() instead of of_match_device() to get the driver match data. With this, adjust the includes to explicitly include the correct headers. Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-5-13a4f0f7fee6@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-10-09ASoC: Explicitly include correct DT includesRob Herring
The DT of_device.h and of_platform.h date back to the separate of_platform_bus_type before it was merged into the regular platform bus. As part of that merge prepping Arm DT support 13 years ago, they "temporarily" include each other. They also include platform_device.h and of.h. As a result, there's a pretty much random mix of those include files used throughout the tree. In order to detangle these headers and replace the implicit includes with struct declarations, users need to explicitly include the correct includes. Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Reviewed-by: Claudiu Beznea <claudiu.beznea@tuxon.dev> # for at91 Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-1-13a4f0f7fee6@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-09-25ASoC: tegra: convert not to use asoc_xxx()Kuninori Morimoto
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/87msxsqni9.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-09-11ASoC: tegra: Fix redundant PLLA and PLLA_OUT0 updatesSameer Pujar
Tegra audio graph card has many DAI links which connects internal AHUB modules and external audio codecs. Since these are DPCM links, hw_params() call in the machine driver happens for each connected BE link and PLLA is updated every time. This is not really needed for all links as only I/O link DAIs derive respective clocks from PLLA_OUT0 and thus from PLLA. Hence add checks to limit the clock updates to DAIs over I/O links. This found to be fixing a DMIC clock discrepancy which is suspected to happen because of back to back quick PLLA and PLLA_OUT0 rate updates. This was observed on Jetson TX2 platform where DMIC clock ended up with unexpected value. Fixes: 202e2f774543 ("ASoC: tegra: Add audio graph based card driver") Cc: stable@vger.kernel.org Signed-off-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/1694098945-32760-3-git-send-email-spujar@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-08-28Merge tag 'asoc-fix-v6.5-merge-window' of ↵Takashi Iwai
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus ASoC: Fixes that got left after v6.4 These were some changes in my v6.4 branch that never got sent as fixes, none of them super urgent thankfully.
2023-08-14ASoC: tegra: merge DAI call back functions into opsKuninori Morimoto
ALSA SoC merges DAI call backs into .ops. This patch merge these into one. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/874jl9b0sl.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-07-17ASoC: tegra: tegra20_ac97: Use devm_platform_get_and_ioremap_resource()Yangtao Li
Convert platform_get_resource(), devm_ioremap_resource() to a single call to devm_platform_get_and_ioremap_resource(), as this is exactly what this function does. Signed-off-by: Yangtao Li <frank.li@vivo.com> Acked-by: Thierry Reding <treding@nvidia.com> Link: https://lore.kernel.org/r/20230711034846.69437-5-frank.li@vivo.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-29ASoC: tegra: Fix ADX byte mapSheetal
Byte mask for channel-1 of stream-1 is not getting enabled and this causes failures during ADX use cases. This happens because the byte map value 0 matches the byte map array and put() callback returns without enabling the corresponding bits in the byte mask. ADX supports 4 output streams and each stream can have a maximum of 16 channels. Each byte in the input frame is uniquely mapped to a byte in one of these 4 outputs. This mapping is done with the help of byte map array via user space control setting. The byte map array size in the driver is 16 and each array element is of size 4 bytes. This corresponds to 64 byte map values. Each byte in the byte map array can have any value between 0 to 255 to enable the corresponding bits in the byte mask. The value 256 is used as a way to disable the byte map. However the byte map array element cannot store this value. The put() callback disables the byte mask for 256 value and byte map value is reset to 0 for this case. This causes problems during subsequent runs since put() callback, for value of 0, just returns without enabling the byte mask. In short, the problem is coming because 0 and 256 control values are stored as 0 in the byte map array. Right now fix the put() callback by actually looking at the byte mask array state to identify if any change is needed and update the fields accordingly. The get() callback needs an update as well to return the correct control value that user has set before. Note that when user set 256, the value is stored as 0 and byte mask is disabled. So byte mask state is used to either return 256 or the value from byte map array. Given above, this looks bit complicated and all this happens because the byte map array is tightly packed and cannot actually store the 256 value. Right now the priority is to fix the existing failure and a TODO item is put to improve this logic. Fixes: 3c97881b8c8a ("ASoC: tegra: Fix kcontrol put callback in ADX") Cc: stable@vger.kernel.org Signed-off-by: Sheetal <sheetal@nvidia.com> Reviewed-by: Mohan Kumar D <mkumard@nvidia.com> Reviewed-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/1688015537-31682-3-git-send-email-spujar@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-29ASoC: tegra: Fix AMX byte mapSheetal
Byte mask for channel-1 of stream-1 is not getting enabled and this causes failures during AMX use cases. This happens because the byte map value 0 matches the byte map array and put() callback returns without enabling the corresponding bits in the byte mask. AMX supports 4 input streams and each stream can take a maximum of 16 channels. Each byte in the output frame is uniquely mapped to a byte in one of these 4 inputs. This mapping is done with the help of byte map array via user space control setting. The byte map array size in the driver is 16 and each array element is of size 4 bytes. This corresponds to 64 byte map values. Each byte in the byte map array can have any value between 0 to 255 to enable the corresponding bits in the byte mask. The value 256 is used as a way to disable the byte map. However the byte map array element cannot store this value. The put() callback disables the byte mask for 256 value and byte map value is reset to 0 for this case. This causes problems during subsequent runs since put() callback, for value of 0, just returns without enabling the byte mask. In short, the problem is coming because 0 and 256 control values are stored as 0 in the byte map array. Right now fix the put() callback by actually looking at the byte mask array state to identify if any change is needed and update the fields accordingly. The get() callback needs an update as well to return the correct control value that user has set before. Note that when user sets 256, the value is stored as 0 and byte mask is disabled. So byte mask state is used to either return 256 or the value from byte map array. Given above, this looks bit complicated and all this happens because the byte map array is tightly packed and cannot actually store the 256 value. Right now the priority is to fix the existing failure and a TODO item is put to improve this logic. Fixes: 8db78ace1ba8 ("ASoC: tegra: Fix kcontrol put callback in AMX") Cc: stable@vger.kernel.org Signed-off-by: Sheetal <sheetal@nvidia.com> Reviewed-by: Mohan Kumar D <mkumard@nvidia.com> Reviewed-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/1688015537-31682-2-git-send-email-spujar@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-24ASoC: tegra: Fix SFC conversion for few ratesSheetal
Sample rate conversions for rates greater than 48kHz are found to be failing. It means x->y conversions fail when either x or y is greater than 48kHz. This happens because, tegra210_sfc_rate_to_idx() returns incorrect index for rates greater than 48kHz. This actually depends on the tegra210_sfc_rates[] array and it is not in sync with frequency values of SFC TX/RX register. To be precise, 64kHz entry is missing in above array defined in the driver. Due to this wrong index is returned and this results in incorrect programming of coefficients. To fix this, align the tegra210_sfc_rates[] array with SFC register specification and thus add 64kHz entry to it. Also, the coefficient table is updated to reflect that none of the conversions are supported for 64kHz. Fixes: b2f74ec53a6c ("ASoC: tegra: Add Tegra210 based SFC driver") Cc: stable@vger.kernel.org Signed-off-by: Sheetal <sheetal@nvidia.com> Reviewed-by: Mohan Kumar D <mkumard@nvidia.com> Reviewed-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/Message-Id: <1687433656-7892-2-git-send-email-spujar@nvidia.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-22ASoC: tegra: Remove stale comments in AHUBSameer Pujar
Remove stale comments in AHUB driver which is related to DAPM widgets and routes. This is misleading otherwise. Signed-off-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/Message-Id: <1687433656-7892-7-git-send-email-spujar@nvidia.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-22ASoC: tegra: Use normal system sleep for ASRCSameer Pujar
Align with other AHUB module drivers and use normal system sleep for ASRC as well. Signed-off-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/Message-Id: <1687433656-7892-6-git-send-email-spujar@nvidia.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-16ASoC: Merge fixes due to dependenciesMark Brown
So we can apply the tlv320aic3xxx DT conversion.
2023-06-13ASoC: tegra: Fix Master Volume ControlJon Hunter
Commit 3ed2b549b39f ("ALSA: pcm: fix wait_time calculations") corrected the PCM wait_time calculations and in doing so reduced the calculated wait_time. This exposed an issue with the Tegra Master Volume Control (MVC) device where the reduced wait_time caused the MVC to fail. For now fix this by setting the default wait_time for Tegra to be 500ms. Fixes: 3ed2b549b39f ("ALSA: pcm: fix wait_time calculations") Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Link: https://lore.kernel.org/r/20230613093453.13927-1-jonathanh@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-06-08ASoC: tegra: Simplify code around clk_get_rate() handlingChristophe JAILLET
clk_get_rate() returns an unsigned long, so there is no point in storing it in a long, and test for negative values. So, turn 'parent_rate' into an unsigned long, simplify the sanity check, the error message and the return value, in case of error (i.e. 0). Doing so also turns 'i' and 'valid_rates' into unsigned long, but it is fine and harmless. Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://lore.kernel.org/r/53f928290f08f50ff43031e17fe1d88443c2c441.1686202022.git.christophe.jaillet@wanadoo.fr Signed-off-by: Mark Brown <broonie@kernel.org>
2023-05-23ASoC: do not include pm_runtime.h if not usedClaudiu Beznea
Do not include pm_runtime.h header in files where APIs exported by pm_runtime.h are not used. Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com> # for omap-mcbsp-st.c Link: https://lore.kernel.org/r/20230517094903.2895238-2-claudiu.beznea@microchip.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-05-17ASoC: tegra: tegra210_adx: fix snd_pcm_format_t typeMin-Hua Chen
use snd_pcm_format_t instead of unsigned int to fix the following sparse warnings: sound/soc/tegra/tegra210_adx.c:125:14: sparse: warning: restricted snd_pcm_format_t degrades to integer sound/soc/tegra/tegra210_adx.c:128:14: sparse: warning: restricted snd_pcm_format_t degrades to integer sound/soc/tegra/tegra210_adx.c:131:14: sparse: warning: restricted snd_pcm_format_t degrades to integer Signed-off-by: Min-Hua Chen <minhuadotchen@gmail.com Link: https://lore.kernel.org/r/20230516223700.185569-1-minhuadotchen@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org
2023-04-04ASoC: tegra20_ac97: Add missing unwind goto in tegra20_ac97_platform_probe()Zihao Wang
Smatch Warns: sound/soc/tegra/tegra20_ac97.c:321 tegra20_ac97_platform_probe() warn: missing unwind goto? The goto will set the "soc_ac97_ops" and "soc_ac97_bus" operations to NULL. But they are already NULL at this point so it is a no-op. However, just for consistency, change the direct return to a goto. No functional change. Signed-off-by: Zihao Wang <u202012060@hust.edu.cn> Reviewed-by: Dan Carpenter <error27@gmail.com> Link: https://lore.kernel.org/r/20230404084622.1202-1-u202012060@hust.edu.cn Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-22ASoC: tegra: remove unneeded semicolonJiapeng Chong
./sound/soc/tegra/tegra_asoc_machine.c:206:3-4: Unneeded semicolon. Reported-by: Abaci Robot <abaci@linux.alibaba.com> Link: https://bugzilla.openanolis.cn/show_bug.cgi?id=4583 Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> Link: https://lore.kernel.org/r/20230322014330.97079-1-jiapeng.chong@linux.alibaba.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-21ALSA/ASoC: Convert to platform remove callbackMark Brown
Merge series from Uwe Kleine-König <u.kleine-koenig@pengutronix.de>: Hello, this series adapts the platform drivers below sound/ to use the .remove_new() callback. Compared to the traditional .remove() callback .remove_new() returns no value. This is a good thing because the driver core doesn't (and cannot) cope for errors during remove. The only effect of a non-zero return value in .remove() is that the driver core emits a warning. The device is removed anyhow and an early return from .remove() usually yields a resource leak. By changing the remove callback to return void driver authors cannot reasonably assume any more that there is some kind of cleanup later. The first two patches simplify a driver each to return zero unconditionally, and then all drivers are trivially converted to .remove_new(). There are nearly no interdependencies in this patch set---only 1 <- 11 and 2 <- 16. So even if some individual problems are found (I don't expect that), the other patches can (and from my POV should) still be applied. Best regards Uwe Uwe Kleine-König (173): ALSA: sh: aica: Drop if blocks with always false condition ASoC: amd: acp: rembrandt: Drop if blocks with always false condition ALSA: pxa2xx: Convert to platform remove callback returning void ALSA: atmel: ac97: Convert to platform remove callback returning void ALSA: mts64: Convert to platform remove callback returning void ALSA: portman2x4: Convert to platform remove callback returning void ALSA: mips/hal2: Convert to platform remove callback returning void ALSA: mips/sgio2audio: Convert to platform remove callback returning void ALSA: hda/tegra: Convert to platform remove callback returning void ALSA: ppc/powermac: Convert to platform remove callback returning void ALSA: sh: aica: Convert to platform remove callback returning void ALSA: sh_dac_audio: Convert to platform remove callback returning void ASoC: adi: axi-i2s: Convert to platform remove callback returning void ASoC: adi: axi-spdif: Convert to platform remove callback returning void ASoC: amd: acp-pcm-dma: Convert to platform remove callback returning void ASoC: amd: acp: rembrandt: Convert to platform remove callback returning void ASoC: amd: acp: renoir: Convert to platform remove callback returning void ASoC: amd: ps: Convert to platform remove callback returning void ASoC: amd: raven: acp3x-pcm-dma: Convert to platform remove callback returning void ASoC: amd: raven: acp3x-pdm-dma: Convert to platform remove callback returning void ASoC: amd: vangogh: acp5x-pcm-dma: Convert to platform remove callback returning void ASoC: amd: yc: acp6x-pdm-dma: Convert to platform remove callback returning void ASoC: apple: mca: Convert to platform remove callback returning void ASoC: atmel: atmel-i2s: Convert to platform remove callback returning void ASoC: atmel: atmel_wm8904: Convert to platform remove callback returning void ASoC: atmel: mchp-i2s-mcc: Convert to platform remove callback returning void ASoC: atmel: mchp-pdmc: Convert to platform remove callback returning void ASoC: atmel: mchp-spdifrx: Convert to platform remove callback returning void ASoC: atmel: mchp-spdiftx: Convert to platform remove callback returning void ASoC: atmel: mikroe-proto: Convert to platform remove callback returning void ASoC: atmel: sam9g20_wm8731: Convert to platform remove callback returning void ASoC: atmel: sam9x5_wm8731: Convert to platform remove callback returning void ASoC: atmel: tse850-pcm5142: Convert to platform remove callback returning void ASoC: au1x: ac97c: Convert to platform remove callback returning void ASoC: au1x: i2sc: Convert to platform remove callback returning void ASoC: au1x: psc-ac97: Convert to platform remove callback returning void ASoC: au1x: psc-i2s: Convert to platform remove callback returning void ASoC: bcm: bcm63xx-i2s-whistler: Convert to platform remove callback returning void ASoC: bcm: cygnus-ssp: Convert to platform remove callback returning void ASoC: cirrus: edb93xx: Convert to platform remove callback returning void ASoC: cirrus: ep93xx-i2s: Convert to platform remove callback returning void ASoC: codecs: cs47l15: Convert to platform remove callback returning void ASoC: codecs: cs47l24: Convert to platform remove callback returning void ASoC: codecs: cs47l35: Convert to platform remove callback returning void ASoC: codecs: cs47l85: Convert to platform remove callback returning void ASoC: codecs: cs47l90: Convert to platform remove callback returning void ASoC: codecs: cs47l92: Convert to platform remove callback returning void ASoC: codecs: inno_rk3036: Convert to platform remove callback returning void ASoC: codecs: lpass-rx-macro: Convert to platform remove callback returning void ASoC: codecs: lpass-tx-macro: Convert to platform remove callback returning void ASoC: codecs: lpass-va-macro: Convert to platform remove callback returning void ASoC: codecs: lpass-wsa-macro: Convert to platform remove callback returning void ASoC: codecs: msm8916-wcd-analog: Convert to platform remove callback returning void ASoC: codecs: msm8916-wcd-digital: Convert to platform remove callback returning void ASoC: codecs: rk817_codec: Convert to platform remove callback returning void ASoC: codecs: wcd938x: Convert to platform remove callback returning void ASoC: codecs: wm5102: Convert to platform remove callback returning void ASoC: codecs: wm5110: Convert to platform remove callback returning void ASoC: codecs: wm8994: Convert to platform remove callback returning void ASoC: codecs: wm8997: Convert to platform remove callback returning void ASoC: codecs: wm8998: Convert to platform remove callback returning void ASoC: dwc: dwc-i2s: Convert to platform remove callback returning void ASoC: fsl: eukrea-tlv320: Convert to platform remove callback returning void ASoC: fsl: fsl_asrc: Convert to platform remove callback returning void ASoC: fsl: fsl_aud2htx: Convert to platform remove callback returning void ASoC: fsl: fsl_audmix: Convert to platform remove callback returning void ASoC: fsl: fsl_dma: Convert to platform remove callback returning void ASoC: fsl: fsl_easrc: Convert to platform remove callback returning void ASoC: fsl: fsl_esai: Convert to platform remove callback returning void ASoC: fsl: fsl_mqs: Convert to platform remove callback returning void ASoC: fsl: fsl_rpmsg: Convert to platform remove callback returning void ASoC: fsl: fsl_sai: Convert to platform remove callback returning void ASoC: fsl: fsl_spdif: Convert to platform remove callback returning void ASoC: fsl: fsl_ssi: Convert to platform remove callback returning void ASoC: fsl: fsl_xcvr: Convert to platform remove callback returning void ASoC: fsl: imx-audmux: Convert to platform remove callback returning void ASoC: fsl: imx-pcm-rpmsg: Convert to platform remove callback returning void ASoC: fsl: imx-sgtl5000: Convert to platform remove callback returning void ASoC: fsl: mpc5200_psc_ac97: Convert to platform remove callback returning void ASoC: fsl: mpc5200_psc_i2s: Convert to platform remove callback returning void ASoC: fsl: mpc8610_hpcd: Convert to platform remove callback returning void ASoC: fsl: p1022_ds: Convert to platform remove callback returning void ASoC: fsl: p1022_rdk: Convert to platform remove callback returning void ASoC: fsl: pcm030-audio-fabric: Convert to platform remove callback returning void ASoC: generic: test-component: Convert to platform remove callback returning void ASoC: img: img-i2s-in: Convert to platform remove callback returning void ASoC: img: img-i2s-out: Convert to platform remove callback returning void ASoC: img: img-parallel-out: Convert to platform remove callback returning void ASoC: img: img-spdif-in: Convert to platform remove callback returning void ASoC: img: img-spdif-out: Convert to platform remove callback returning void ASoC: img: pistachio-internal-dac: Convert to platform remove callback returning void ASoC: Intel: sst-mfld-platform-pcm: Convert to platform remove callback returning void ASoC: Intel: sst: Convert to platform remove callback returning void ASoC: Intel: bytcht_es8316: Convert to platform remove callback returning void ASoC: Intel: bytcr_rt5640: Convert to platform remove callback returning void ASoC: Intel: boards: bytcr_rt5651: Convert to platform remove callback returning void ASoC: Intel: bytcr_wm5102: Convert to platform remove callback returning void ASoC: Intel: cht_bsw_max98090_ti: Convert to platform remove callback returning void ASoC: Intel: sof_es8336: Convert to platform remove callback returning void ASoC: Intel: sof_pcm512x: Convert to platform remove callback returning void ASoC: Intel: sof_sdw: Convert to platform remove callback returning void ASoC: Intel: sof_wm8804: Convert to platform remove callback returning void ASoC: Intel: catpt: Convert to platform remove callback returning void ASoC: Intel: skl-ssp-clk: Convert to platform remove callback returning void ASoC: kirkwood: kirkwood-i2s: Convert to platform remove callback returning void ASoC: mediatek: mtk-btcvsd: Convert to platform remove callback returning void ASoC: mediatek: mt2701-afe-pcm: Convert to platform remove callback returning void ASoC: mediatek: mt6797-afe-pcm: Convert to platform remove callback returning void ASoC: mediatek: mt8173-afe-pcm: Convert to platform remove callback returning void ASoC: mediatek: mt8183-afe-pcm: Convert to platform remove callback returning void ASoC: mediatek: mt8188-afe-pcm: Convert to platform remove callback returning void ASoC: mediatek: mt8192-afe-pcm: Convert to platform remove callback returning void ASoC: mediatek: mt8195-afe-pcm: Convert to platform remove callback returning void ASoC: meson: aiu: Convert to platform remove callback returning void ASoC: mxs: mxs-sgtl5000: Convert to platform remove callback returning void ASoC: pxa: mmp-sspa: Convert to platform remove callback returning void ASoC: pxa: pxa2xx-ac97: Convert to platform remove callback returning void ASoC: qcom: qdsp6: Convert to platform remove callback returning void ASoC: rockchip: rockchip_i2s: Convert to platform remove callback returning void ASoC: rockchip: rockchip_i2s_tdm: Convert to platform remove callback returning void ASoC: rockchip: rockchip_pdm: Convert to platform remove callback returning void ASoC: rockchip: rockchip_rt5645: Convert to platform remove callback returning void ASoC: rockchip: rockchip_spdif: Convert to platform remove callback returning void ASoC: samsung: arndale: Convert to platform remove callback returning void ASoC: samsung: i2s: Convert to platform remove callback returning void ASoC: samsung: odroid: Convert to platform remove callback returning void ASoC: samsung: pcm: Convert to platform remove callback returning void ASoC: samsung: snow: Convert to platform remove callback returning void ASoC: samsung: spdif: Convert to platform remove callback returning void ASoC: sh: fsi: Convert to platform remove callback returning void ASoC: sh: hac: Convert to platform remove callback returning void ASoC: sh: rcar: Convert to platform remove callback returning void ASoC: sh: rz-ssi: Convert to platform remove callback returning void ASoC: sh: siu_dai: Convert to platform remove callback returning void ASoC: sprd: sprd-mcdt: Convert to platform remove callback returning void ASoC: stm: stm32_adfsdm: Convert to platform remove callback returning void ASoC: stm: stm32_i2s: Convert to platform remove callback returning void ASoC: stm: stm32_sai_sub: Convert to platform remove callback returning void ASoC: stm: stm32_spdifrx: Convert to platform remove callback returning void ASoC: sunxi: sun4i-codec: Convert to platform remove callback returning void ASoC: sunxi: sun4i-i2s: Convert to platform remove callback returning void ASoC: sunxi: sun4i-spdif: Convert to platform remove callback returning void ASoC: sunxi: sun50i-dmic: Convert to platform remove callback returning void ASoC: sunxi: sun8i-codec: Convert to platform remove callback returning void ASoC: tegra: tegra186_asrc: Convert to platform remove callback returning void ASoC: tegra: tegra186_dspk: Convert to platform remove callback returning void ASoC: tegra: tegra20_ac97: Convert to platform remove callback returning void ASoC: tegra: tegra20_i2s: Convert to platform remove callback returning void ASoC: tegra: tegra210_admaif: Convert to platform remove callback returning void ASoC: tegra: tegra210_adx: Convert to platform remove callback returning void ASoC: tegra: tegra210_ahub: Convert to platform remove callback returning void ASoC: tegra: tegra210_amx: Convert to platform remove callback returning void ASoC: tegra: tegra210_dmic: Convert to platform remove callback returning void ASoC: tegra: tegra210_i2s: Convert to platform remove callback returning void ASoC: tegra: tegra210_mixer: Convert to platform remove callback returning void ASoC: tegra: tegra210_mvc: Convert to platform remove callback returning void ASoC: tegra: tegra210_ope: Convert to platform remove callback returning void ASoC: tegra: tegra210_sfc: Convert to platform remove callback returning void ASoC: tegra: tegra30_ahub: Convert to platform remove callback returning void ASoC: tegra: tegra30_i2s: Convert to platform remove callback returning void ASoC: ti: ams-delta: Convert to platform remove callback returning void ASoC: ti: davinci-i2s: Convert to platform remove callback returning void ASoC: ti: davinci-mcasp: Convert to platform remove callback returning void ASoC: ti: omap-hdmi: Convert to platform remove callback returning void ASoC: ti: omap-mcbsp: Convert to platform remove callback returning void ASoC: uniphier: evea: Convert to platform remove callback returning void ASoC: ux500: mop500: Convert to platform remove callback returning void ASoC: ux500: ux500_msp_dai: Convert to platform remove callback returning void ASoC: xilinx: xlnx_formatter_pcm: Convert to platform remove callback returning void ASoC: xilinx: xlnx_spdif: Convert to platform remove callback returning void ASoC: xtensa: xtfpga-i2s: Convert to platform remove callback returning void ALSA: sparc/cs4231: Convert to platform remove callback returning void ALSA: sparc/dbri: Convert to platform remove callback returning void sound/arm/pxa2xx-ac97.c | 6 ++---- sound/atmel/ac97c.c | 6 ++---- sound/drivers/mts64.c | 6 ++---- sound/drivers/portman2x4.c | 6 ++---- sound/mips/hal2.c | 5 ++--- sound/mips/sgio2audio.c | 5 ++--- sound/pci/hda/hda_tegra.c | 6 ++---- sound/ppc/powermac.c | 5 ++--- sound/sh/aica.c | 7 ++----- sound/sh/sh_dac_audio.c | 5 ++--- sound/soc/adi/axi-i2s.c | 6 ++---- sound/soc/adi/axi-spdif.c | 6 ++---- sound/soc/amd/acp-pcm-dma.c | 6 ++---- sound/soc/amd/acp/acp-rembrandt.c | 13 +++---------- sound/soc/amd/acp/acp-renoir.c | 5 ++--- sound/soc/amd/ps/ps-pdm-dma.c | 5 ++--- sound/soc/amd/raven/acp3x-pcm-dma.c | 5 ++--- sound/soc/amd/renoir/acp3x-pdm-dma.c | 5 ++--- sound/soc/amd/vangogh/acp5x-pcm-dma.c | 5 ++--- sound/soc/amd/yc/acp6x-pdm-dma.c | 5 ++--- sound/soc/apple/mca.c | 5 ++--- sound/soc/atmel/atmel-i2s.c | 6 ++---- sound/soc/atmel/atmel_wm8904.c | 6 ++---- sound/soc/atmel/mchp-i2s-mcc.c | 6 ++---- sound/soc/atmel/mchp-pdmc.c | 6 ++---- sound/soc/atmel/mchp-spdifrx.c | 6 ++---- sound/soc/atmel/mchp-spdiftx.c | 6 ++---- sound/soc/atmel/mikroe-proto.c | 6 ++---- sound/soc/atmel/sam9g20_wm8731.c | 6 ++---- sound/soc/atmel/sam9x5_wm8731.c | 6 ++---- sound/soc/atmel/tse850-pcm5142.c | 6 ++---- sound/soc/au1x/ac97c.c | 6 ++---- sound/soc/au1x/i2sc.c | 6 ++---- sound/soc/au1x/psc-ac97.c | 6 ++---- sound/soc/au1x/psc-i2s.c | 6 ++---- sound/soc/bcm/bcm63xx-i2s-whistler.c | 5 ++--- sound/soc/bcm/cygnus-ssp.c | 6 ++---- sound/soc/cirrus/edb93xx.c | 6 ++---- sound/soc/cirrus/ep93xx-i2s.c | 5 ++--- sound/soc/codecs/cs47l15.c | 6 ++---- sound/soc/codecs/cs47l24.c | 6 ++---- sound/soc/codecs/cs47l35.c | 6 ++---- sound/soc/codecs/cs47l85.c | 6 ++---- sound/soc/codecs/cs47l90.c | 6 ++---- sound/soc/codecs/cs47l92.c | 6 ++---- sound/soc/codecs/inno_rk3036.c | 6 ++---- sound/soc/codecs/lpass-rx-macro.c | 6 ++---- sound/soc/codecs/lpass-tx-macro.c | 6 ++---- sound/soc/codecs/lpass-va-macro.c | 6 ++---- sound/soc/codecs/lpass-wsa-macro.c | 6 ++---- sound/soc/codecs/msm8916-wcd-analog.c | 6 ++---- sound/soc/codecs/msm8916-wcd-digital.c | 6 ++---- sound/soc/codecs/rk817_codec.c | 6 ++---- sound/soc/codecs/wcd938x.c | 6 ++---- sound/soc/codecs/wm5102.c | 6 ++---- sound/soc/codecs/wm5110.c | 6 ++---- sound/soc/codecs/wm8994.c | 6 ++---- sound/soc/codecs/wm8997.c | 6 ++---- sound/soc/codecs/wm8998.c | 6 ++---- sound/soc/dwc/dwc-i2s.c | 5 ++--- sound/soc/fsl/eukrea-tlv320.c | 6 ++---- sound/soc/fsl/fsl_asrc.c | 6 ++---- sound/soc/fsl/fsl_aud2htx.c | 6 ++---- sound/soc/fsl/fsl_audmix.c | 6 ++---- sound/soc/fsl/fsl_dma.c | 6 ++---- sound/soc/fsl/fsl_easrc.c | 6 ++---- sound/soc/fsl/fsl_esai.c | 6 ++---- sound/soc/fsl/fsl_mqs.c | 5 ++--- sound/soc/fsl/fsl_rpmsg.c | 6 ++---- sound/soc/fsl/fsl_sai.c | 6 ++---- sound/soc/fsl/fsl_spdif.c | 6 ++---- sound/soc/fsl/fsl_ssi.c | 6 ++---- sound/soc/fsl/fsl_xcvr.c | 5 ++--- sound/soc/fsl/imx-audmux.c | 6 ++---- sound/soc/fsl/imx-pcm-rpmsg.c | 6 ++---- sound/soc/fsl/imx-sgtl5000.c | 6 ++---- sound/soc/fsl/mpc5200_psc_ac97.c | 5 ++--- sound/soc/fsl/mpc5200_psc_i2s.c | 5 ++--- sound/soc/fsl/mpc8610_hpcd.c | 6 ++---- sound/soc/fsl/p1022_ds.c | 6 ++---- sound/soc/fsl/p1022_rdk.c | 6 ++---- sound/soc/fsl/pcm030-audio-fabric.c | 6 ++---- sound/soc/generic/test-component.c | 6 ++---- sound/soc/img/img-i2s-in.c | 6 ++---- sound/soc/img/img-i2s-out.c | 6 ++---- sound/soc/img/img-parallel-out.c | 6 ++---- sound/soc/img/img-spdif-in.c | 6 ++---- sound/soc/img/img-spdif-out.c | 6 ++---- sound/soc/img/pistachio-internal-dac.c | 6 ++---- sound/soc/intel/atom/sst-mfld-platform-pcm.c | 5 ++--- sound/soc/intel/atom/sst/sst_acpi.c | 5 ++--- sound/soc/intel/boards/bytcht_es8316.c | 5 ++--- sound/soc/intel/boards/bytcr_rt5640.c | 5 ++--- sound/soc/intel/boards/bytcr_rt5651.c | 5 ++--- sound/soc/intel/boards/bytcr_wm5102.c | 5 ++--- sound/soc/intel/boards/cht_bsw_max98090_ti.c | 6 ++---- sound/soc/intel/boards/sof_es8336.c | 6 ++---- sound/soc/intel/boards/sof_pcm512x.c | 6 ++---- sound/soc/intel/boards/sof_sdw.c | 6 ++---- sound/soc/intel/boards/sof_wm8804.c | 5 ++--- sound/soc/intel/catpt/device.c | 6 ++---- sound/soc/intel/skylake/skl-ssp-clk.c | 6 ++---- sound/soc/kirkwood/kirkwood-i2s.c | 6 ++---- sound/soc/mediatek/common/mtk-btcvsd.c | 5 ++--- sound/soc/mediatek/mt2701/mt2701-afe-pcm.c | 6 ++---- sound/soc/mediatek/mt6797/mt6797-afe-pcm.c | 6 ++---- sound/soc/mediatek/mt8173/mt8173-afe-pcm.c | 5 ++--- sound/soc/mediatek/mt8183/mt8183-afe-pcm.c | 6 ++---- sound/soc/mediatek/mt8188/mt8188-afe-pcm.c | 6 ++---- sound/soc/mediatek/mt8192/mt8192-afe-pcm.c | 5 ++--- sound/soc/mediatek/mt8195/mt8195-afe-pcm.c | 5 ++--- sound/soc/meson/aiu.c | 6 ++---- sound/soc/mxs/mxs-sgtl5000.c | 6 ++---- sound/soc/pxa/mmp-sspa.c | 7 +++---- sound/soc/pxa/pxa2xx-ac97.c | 5 ++--- sound/soc/qcom/qdsp6/q6routing.c | 6 ++---- sound/soc/rockchip/rockchip_i2s.c | 6 ++---- sound/soc/rockchip/rockchip_i2s_tdm.c | 6 ++---- sound/soc/rockchip/rockchip_pdm.c | 6 ++---- sound/soc/rockchip/rockchip_rt5645.c | 6 ++---- sound/soc/rockchip/rockchip_spdif.c | 6 ++---- sound/soc/samsung/arndale.c | 5 ++--- sound/soc/samsung/i2s.c | 8 +++----- sound/soc/samsung/odroid.c | 6 ++---- sound/soc/samsung/pcm.c | 6 ++---- sound/soc/samsung/snow.c | 6 ++---- sound/soc/samsung/spdif.c | 6 ++---- sound/soc/sh/fsi.c | 6 ++---- sound/soc/sh/hac.c | 5 ++--- sound/soc/sh/rcar/core.c | 6 ++---- sound/soc/sh/rz-ssi.c | 6 ++---- sound/soc/sh/siu_dai.c | 5 ++--- sound/soc/sprd/sprd-mcdt.c | 6 ++---- sound/soc/stm/stm32_adfsdm.c | 6 ++---- sound/soc/stm/stm32_i2s.c | 6 ++---- sound/soc/stm/stm32_sai_sub.c | 6 ++---- sound/soc/stm/stm32_spdifrx.c | 6 ++---- sound/soc/sunxi/sun4i-codec.c | 6 ++---- sound/soc/sunxi/sun4i-i2s.c | 6 ++---- sound/soc/sunxi/sun4i-spdif.c | 6 ++---- sound/soc/sunxi/sun50i-dmic.c | 6 ++---- sound/soc/sunxi/sun8i-codec.c | 6 ++---- sound/soc/tegra/tegra186_asrc.c | 6 ++---- sound/soc/tegra/tegra186_dspk.c | 6 ++---- sound/soc/tegra/tegra20_ac97.c | 6 ++---- sound/soc/tegra/tegra20_i2s.c | 6 ++---- sound/soc/tegra/tegra210_admaif.c | 6 ++---- sound/soc/tegra/tegra210_adx.c | 6 ++---- sound/soc/tegra/tegra210_ahub.c | 6 ++---- sound/soc/tegra/tegra210_amx.c | 6 ++---- sound/soc/tegra/tegra210_dmic.c | 6 ++---- sound/soc/tegra/tegra210_i2s.c | 6 ++---- sound/soc/tegra/tegra210_mixer.c | 6 ++---- sound/soc/tegra/tegra210_mvc.c | 6 ++---- sound/soc/tegra/tegra210_ope.c | 6 ++---- sound/soc/tegra/tegra210_sfc.c | 6 ++---- sound/soc/tegra/tegra30_ahub.c | 6 ++---- sound/soc/tegra/tegra30_i2s.c | 6 ++---- sound/soc/ti/ams-delta.c | 5 ++--- sound/soc/ti/davinci-i2s.c | 6 ++---- sound/soc/ti/davinci-mcasp.c | 6 ++---- sound/soc/ti/omap-hdmi.c | 5 ++--- sound/soc/ti/omap-mcbsp.c | 6 ++---- sound/soc/uniphier/evea.c | 6 ++---- sound/soc/ux500/mop500.c | 6 ++---- sound/soc/ux500/ux500_msp_dai.c | 6 ++---- sound/soc/xilinx/xlnx_formatter_pcm.c | 5 ++--- sound/soc/xilinx/xlnx_spdif.c | 5 ++--- sound/soc/xtensa/xtfpga-i2s.c | 5 ++--- sound/sparc/cs4231.c | 6 ++---- sound/sparc/dbri.c | 6 ++---- 171 files changed, 345 insertions(+), 654 deletions(-) base-commit: fe15c26ee26efa11741a7b632e9f23b01aca4cc6 -- 2.39.2
2023-03-20ASoC: tegra: tegra30_i2s: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-161-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra30_ahub: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-160-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_sfc: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-159-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_ope: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-158-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_mvc: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-157-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_mixer: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-156-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_i2s: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-155-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_dmic: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-154-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_amx: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-153-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_ahub: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-152-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_adx: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-151-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra210_admaif: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-150-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra20_i2s: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-149-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra20_ac97: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-148-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra186_dspk: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-147-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: tegra186_asrc: Convert to platform remove callback returning voidUwe Kleine-König
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: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-146-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: Support MAX9808x by machine driverSvyatoslav Ryhel
Add Maxim MAX9808x codec support to the Tegra ASoC machine driver. This codec is found on LG T30 devices like Optimus 4X HD and Optimus Vu. Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com> Link: https://lore.kernel.org/r/20230308073502.5421-9-clamor95@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: Support RT5631 by machine driverSvyatoslav Ryhel
Add Realtek ALC5631/RT5631 codec support to the Tegra ASoC machine driver. The RT5631 codec is found on devices like ASUS Transformer TF201, TF700T and other Tegra-based Android tablets. Signed-off-by: Ion Agorria <ion@agorria.com> Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com> Link: https://lore.kernel.org/r/20230308073502.5421-6-clamor95@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-20ASoC: tegra: Support coupled mic-hp detectionSvyatoslav Ryhel
This quirk is used for cases when there is GPIO which detects any type of 3.5 Jack insertion and actual type of jack is defined by other GPIO. 3.5 Jack GPIO generates interrupt and MIC GPIO indicates type of Jack only if 3.5 Jack GPIO is active. Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com> Link: https://lore.kernel.org/r/20230308073502.5421-3-clamor95@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-03-11ASoC: Use of_property_present() for testing DT property presenceRob Herring
It is preferred to use typed property access functions (i.e. of_property_read_<type> functions) rather than low-level of_get_property/of_find_property functions for reading properties. As part of this, convert of_get_property/of_find_property calls to the recently added of_property_present() helper when we just want to test for presence of a property and nothing more. Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20230310144732.1546328-1-robh@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-31ASoC: tegra: use helper functionKuninori Morimoto
Current ASoC has many helper function. This patch use it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/87mt5zea3a.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-25ASoC: Kconfig: fix spelling of "up to"Randy Dunlap
Fix spelling in sound/soc/ Kconfig files: s/upto/up to/ (reported by codespell) Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Reviewed-by: Heiko Stuebner <heiko@sntech.de> #rockchip Link: https://lore.kernel.org/r/20230124181746.19028-1-rdunlap@infradead.org Signed-off-by: Mark Brown <broonie@kernel.org>