summaryrefslogtreecommitdiff
path: root/sound/soc/uniphier/aio-core.c
AgeCommit message (Collapse)Author
2024-10-23ASoC: uniphier: Handle regmap_write errors in aio_iecout_set_enable()Ingyu Jang
The aio_oport_set_stream_type() function did not previously check the return values of regmap_write(). If these functions fail, it could lead to silent failures when configuring the audio playback port, causing improper behavior in audio stream output via S/PDIF without any indication of an error. This patch modifies aio_oport_set_stream_type() to check the return values of regmap_write(). If regmap_write() fails, the error code is propagated back to the caller to ensure proper error handling. Signed-off-by: Ingyu Jang <ingyujang25@unist.ac.kr> Link: https://patch.msgid.link/SE1P216MB2287962B462AE91B26248D19FD7E2@SE1P216MB2287.KORP216.PROD.OUTLOOK.COM Signed-off-by: Mark Brown <broonie@kernel.org>
2024-10-05ASoC: uniphier: Handle regmap_write errors in aio_src_set_param()Ingyu Jang
The aio_src_set_param() function did not previously check the return values of regmap_write() and regmap_update_bits(). If these functions fail, it could lead to silent failures when configuring the sample rate converter (SRC), causing improper behavior in audio processing without any indication of an error. This patch modifies aio_src_set_param to check the return values of regmap_write() and regmap_update_bits(). If either function returns an error, the error code is propagated back to the caller to ensure proper error handling. This change aligns with the existing error-handling behavior in functions like uniphier_aio_prepare(), where a failure in a sub-function should result in an immediate return of the error. Signed-off-by: Ingyu Jang <ingyujang25@unist.ac.kr> Link: https://patch.msgid.link/SE1P216MB2287F4D575CFBDC9755E896BFD6A2@SE1P216MB2287.KORP216.PROD.OUTLOOK.COM Signed-off-by: Mark Brown <broonie@kernel.org>
2022-12-05ASoC: uniphier: aio-core: Make some read-only arrays static constColin Ian King
Don't populate the read-only arrays slotsel_2ch, slotsel_multi, v_pll and v_div on the stack but instead make them static const. Also makes the object code a little smaller. Signed-off-by: Colin Ian King <colin.i.king@gmail.com> Link: https://lore.kernel.org/r/20221202164156.1812971-1-colin.i.king@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2020-07-09ASoC: uniphier: aio-core: fix kernel-docPierre-Louis Bossart
Fix W=1 warning - wrong parameter description and bad format Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Masahiro Yamada <yamada.masahiro@socionext.com> Link: https://lore.kernel.org/r/20200707190612.97799-6-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2018-07-30ASoC: uniphier: change functions to staticKatsuhiro Suzuki
This patch changes some functions that are not used by other objects to static. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-07-30ASoC: uniphier: add support for multichannel outputKatsuhiro Suzuki
This patch adds multichannel PCM output support for LD11/LD20. Currently driver tested and supported only 2ch, 6ch, and 8ch. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-05-09ASoC: uniphier: add digital output volume for UniPhier sound systemKatsuhiro Suzuki
This patch adds controllers for digital volume of PCM output. Volume effects simply linear, not dB scale as follows: Gained PCM = Original * 0x4000 / Volume The value range of volume is from 0x0001 to 0xffff. 0x0000 works as mute. Initial value is 0x4000 (+0dB). Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-04-27ASoC: uniphier: remove boilerplate from lisence commentKatsuhiro Suzuki
This patch removes boilerplate of GPLv2, use only SPDX identifier as same as other recently ASoC DAI drivers. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-03-18ASoC: uniphier: add syscon property for UniPhier sound systemKatsuhiro Suzuki
This patch adds syscon property for specifying soc-glue core. Currently, soc-glue core is used for changing the state of S/PDIF signal output pin to signal output state or Hi-Z state. After resetting of SoC Hi-Z state is selected. This driver set to signal output state when syscon property is available. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-26ASoC: uniphier: fix broken sound if use SRC in replayKatsuhiro Suzuki
This patch fixes settings for ports with SRC. These ports need to set the fixed audio rate and clock. If not, the SRC outputs broken sound. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-13ASoC: uniphier: aiodma_rb_get_rp() can be staticWu Fengguang
Fixes: f37fe2f9987b ("ASoC: uniphier: add support for UniPhier AIO common driver") Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-12ASoC: uniphier: add support for UniPhier AIO common driverKatsuhiro Suzuki
This patch adds common functions for UniPhier AIO audio sound system. This provides commonly used APIs for input/output control registers for UniPhier AIO. This module provides all sound devices for I2S, S/PDIF and so on. Since the AIO has mixed register map for those I/Os, it is hard to split register areas for each sound devices. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>