Mark Brown [Mon, 8 Mar 2021 16:41:22 +0000 (16:41 +0000)]
Merge series "Report jack and button detection + Capture Support" from Lucas Tanure <tanureal@opensource.cirrus.com>:
Hi All,
Here is a patch series for reporting to user space jack and button events and
add the support for Capture. With some cleanups and fixes along the way.
Regards,
Lucas Tanure
Lucas Tanure (12):
ASoC: cs42l42: Fix Bitclock polarity inversion
ASoC: cs42l42: Fix channel width support
ASoC: cs42l42: Fix mixer volume control
ASoC: cs42l42: Don't enable/disable regulator at Bias Level
ASoC: cs42l42: Always wait at least 3ms after reset
ASoC: cs42l42: Remove power if the driver is being removed
ASoC: cs42l42: Disable regulators if probe fails
ASoC: cs42l42: Provide finer control on playback path
ASoC: cs42l42: Set clock source for both ways of stream
ASoC: cs42l42: Add Capture Support
ASoC: cs42l42: Report jack and button detection
ASoC: cs42l42: Use bclk from hw_params if set_sysclk was not called
Richard Fitzgerald (3):
ASoC: cs42l42: Wait at least 150us after writing SCLK_PRESENT
ASoC: cs42l42: Only start PLL if it is needed
ASoC: cs42l42: Wait for PLL to lock before switching to it
sound/soc/codecs/cs42l42.c | 437 +++++++++++++++++++++----------------
sound/soc/codecs/cs42l42.h | 41 +++-
2 files changed, 282 insertions(+), 196 deletions(-)
--
2.30.1
Shuming Fan [Tue, 2 Mar 2021 09:15:06 +0000 (17:15 +0800)]
ASoC: rt711-sdca: Add RT711 SDCA vendor-specific driver
This is the initial codec driver for rt711 SDCA version.
Signed-off-by: Shuming Fan <shumingf@realtek.com>
Link: https://lore.kernel.org/r/20210302091506.18745-1-shumingf@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Hans de Goede [Sat, 6 Mar 2021 23:02:23 +0000 (00:02 +0100)]
ASoC: rt5645: The ALC3270 variant does not have a headset-mic pin
The Asus T100HA and T101HA 2-in-1s use a rt5645 family codec and always
report that a headset (rather then headphones) are plugged in even when
regular headphones are plugged in.
And when a headset is used, then the headset-microphone does not work.
According to RealTek the ALC3270 variant used in these devices does not
support headsets only headphones.
Since the ALC3270 is a budget version of the regular ALC5645 codec,
I assume that it is using a package with less pins and the headset-mic
pin is simply not connected.
Detect if the codec is an ALC3270 based on the ACPI HID and if it is
an ALC3270 then always report SND_JACK_MICROPHONE as false, so that
userspace will not try to use the not-connected headset-mic.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20210306230223.516566-2-hdegoede@redhat.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Hans de Goede [Sat, 6 Mar 2021 23:02:22 +0000 (00:02 +0100)]
ASoC: rt5645: Move rt5645_platform_data to sound/soc/codecs/rt5645.c
sound/soc/codecs/rt5645.c is the only user of the rt5645_platform_data,
move its definition to sound/soc/codecs/rt5645.c and remove the now
empty include/sound/rt5645.h file.
Note since the DMI quirk mechanism uses pointers to the
rt5645_platform_data struct we can NOT simply add its members to
the rt5645_priv struct and completely remove the struct.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20210306230223.516566-1-hdegoede@redhat.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Tang Bin [Sun, 7 Mar 2021 07:21:33 +0000 (15:21 +0800)]
ASoC: codecs/jz4770: Remove superfluous error message
The function devm_platform_ioremap_resource has already contained
error message if failed, so remove superfluous dev_err here.
Signed-off-by: Zhang Shengju <zhangshengju@cmss.chinamobile.com>
Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com>
Acked-by: Paul Cercueil <paul@crapouillou.net>
Link: https://lore.kernel.org/r/20210307072133.10832-1-tangbin@cmss.chinamobile.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Jack Yu [Tue, 2 Mar 2021 10:30:42 +0000 (18:30 +0800)]
ASoC: rt715-sdca: Add RT715 sdca vendor-specific driver
This is initial sdca version of codec driver for rt715.
Signed-off-by: Jack Yu <jack.yu@realtek.com>
Link: https://lore.kernel.org/r/20210302103042.19528-1-jack.yu@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Tang Bin [Tue, 2 Mar 2021 12:50:02 +0000 (20:50 +0800)]
ASoC: fsl_xcvr: Use devm_platform_ioremap_resource_byname() to simplify code
In this function, devm_platform_ioremap_resource_byname() should be
suitable to simplify code.
Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com>
Link: https://lore.kernel.org/r/20210302125002.23900-1-tangbin@cmss.chinamobile.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Shengjiu Wang [Mon, 8 Mar 2021 02:34:37 +0000 (10:34 +0800)]
ASoC: wm8962: Relax bit clock divider searching
With S20_3LE format case, the sysclk = rate * 384,
the bclk = rate * 20 * 2, there is no proper bclk divider
for 384 / 40, because current condition needs exact match.
So driver fails to configure the clocking:
wm8962 3-001a: Unsupported BCLK ratio 9
Fix this by relaxing bitclk divider searching, so that when
no exact value can be derived from sysclk pick the closest
value greater than expected bitclk.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/1615170877-25918-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Thu, 4 Mar 2021 00:52:07 +0000 (00:52 +0000)]
Merge series "ASoC: remove more make W=1 warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
These warnings get in the way of automation/CI, let's remove them.
Pierre-Louis Bossart (9):
ASoC: cs4270: fix kernel-doc
ASoC: jz4760: fix set but not used warning
ASoC: rt5631: fix kernel-doc warning
ASoC: sigmadsp-regmap: fix kernel-doc warning
ASoC: amd: renoir: remove invalid kernel-doc comment
ASoC: fsl: fsl_ssi: fix kernel-doc warning
ASoC: fsl: fsl_easrc: fix kernel-doc warning
ASoC: Intel: bytcr_wm5102: remove unused static variable
ASoC: qcom: q6dsp: fix kernel-doc warning
sound/soc/amd/renoir/rn-pci-acp3x.c | 2 +-
sound/soc/codecs/cs4270.c | 1 +
sound/soc/codecs/jz4760.c | 4 ++--
sound/soc/codecs/rt5631.c | 2 +-
sound/soc/codecs/sigmadsp-regmap.c | 2 +-
sound/soc/fsl/fsl_easrc.c | 2 +-
sound/soc/fsl/fsl_ssi.c | 2 +-
sound/soc/intel/boards/bytcr_wm5102.c | 8 --------
sound/soc/qcom/qdsp6/q6afe.c | 2 +-
9 files changed, 9 insertions(+), 16 deletions(-)
--
2.25.1
Mark Brown [Thu, 4 Mar 2021 00:52:05 +0000 (00:52 +0000)]
Merge series "ASoC: realtek: fix cppcheck warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
Lots of trivial issues that make cppcheck too verbose. There shouldn't
be any functionality change with this patchset.
Pierre-Louis Bossart (24):
ASoC: rt1011: use logical OR
ASoC: rt1011: remove redundant test
ASoC: rt1011: clarify expression
ASoC: rt1015: clarify expression
ASoC: rt1016: clarify expression
ASoC: rt1305: clarify expression
ASoC: rt1308: clarify expression
ASoC: rt5640: clarify expression
ASoC: rt5645: use logical OR
ASoC: rt5645: clarify expression
ASoC: rt5651: clarify expression
ASoC: rt5651: remove useless assignment
ASoC: rt5659: clarify expression
ASoC: rt5660: clarify expression
ASoC: rt5663: clarify expression
ASoC: rt5665: clarify expression
ASoC: rt5668: clarify expression
ASoC: rt5668: remove useless assignments
ASoC: rt5670: clarify expression
ASoC: rt5677: clarify expression
ASoC: rt5677: remove useless assignment
ASoC: rt5682: clarify expression
ASoC: rt5682: remove useless assignments
ASoC: rt5682: remove useless initialization
sound/soc/codecs/rt1011.c | 47 ++++++++++++++++++---------------------
sound/soc/codecs/rt1015.c | 5 +++--
sound/soc/codecs/rt1016.c | 7 +++---
sound/soc/codecs/rt1305.c | 4 ++--
sound/soc/codecs/rt1308.c | 8 +++----
sound/soc/codecs/rt5640.c | 6 ++---
sound/soc/codecs/rt5645.c | 6 ++---
sound/soc/codecs/rt5651.c | 6 ++---
sound/soc/codecs/rt5659.c | 4 ++--
sound/soc/codecs/rt5660.c | 4 ++--
sound/soc/codecs/rt5663.c | 4 ++--
sound/soc/codecs/rt5665.c | 4 ++--
sound/soc/codecs/rt5668.c | 8 +++----
sound/soc/codecs/rt5670.c | 4 ++--
sound/soc/codecs/rt5677.c | 6 ++---
sound/soc/codecs/rt5682.c | 12 +++++-----
16 files changed, 67 insertions(+), 68 deletions(-)
--
2.25.1
Colin Ian King [Wed, 3 Mar 2021 09:18:35 +0000 (09:18 +0000)]
ASoC: fsl: fsl_easrc: Fix uninitialized variable st2_mem_alloc
A previous cleanup commit removed the ininitialization of st2_mem_alloc.
Fix this by restoring the original behaviour by initializing it to zero.
Addresses-Coverity: ("Uninitialized scalar variable")
Fixes:
e80382fe721f ("ASoC: fsl: fsl_easrc: remove useless assignments")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Link: https://lore.kernel.org/r/20210303091835.5024-1-colin.king@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Yang Li [Wed, 3 Mar 2021 09:08:01 +0000 (17:08 +0800)]
ASoC: codecs: fix platform_no_drv_owner.cocci warnings
./sound/soc/codecs/lpass-rx-macro.c:3588:3-8: No need to set .owner here.
The core will do it.
Remove .owner field if calls are used which set it automatically
Reported-by: Abaci Robot <abaci@linux.alibaba.com>
Signed-off-by: Yang Li <yang.lee@linux.alibaba.com>
Link: https://lore.kernel.org/r/1614762481-102466-1-git-send-email-yang.lee@linux.alibaba.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Wei Yongjun [Wed, 3 Mar 2021 06:40:41 +0000 (06:40 +0000)]
ASoC: rt1316: Fix return value check in rt1316_sdw_probe()
In case of error, the function devm_regmap_init_sdw() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check should
be replaced with IS_ERR().
Fixes:
a262057df513 ("ASoC: rt1316: Add RT1316 SDCA vendor-specific driver")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Link: https://lore.kernel.org/r/20210303064041.898281-1-weiyongjun1@huawei.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Fabio Estevam [Tue, 2 Mar 2021 14:28:17 +0000 (11:28 -0300)]
ASoC: sgtl5000: Fix identation of .driver elements
The .driver elements are not correctly idented.
Fix the identation of the .driver elements.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Link: https://lore.kernel.org/r/20210302142817.2141923-1-festevam@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Tang Bin [Tue, 2 Mar 2021 13:56:30 +0000 (21:56 +0800)]
ASoC: codec: Omit superfluous error message in jz4760_codec_probe()
The function devm_platform_ioremap_resource has already contained
error message, so remove the redundant dev_err here.
Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com>
Acked-by: Paul Cercueil <paul@crapouillou.net>
Link: https://lore.kernel.org/r/20210302135630.11456-1-tangbin@cmss.chinamobile.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:26 +0000 (14:59 -0600)]
ASoC: qcom: q6dsp: fix kernel-doc warning
make W=1 warning:
sound/soc/qcom/qdsp6/q6afe.c:1460: warning: expecting prototype for
q6afe_dam_port_prepare(). Prototype was for
q6afe_cdc_dma_port_prepare() instead
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-10-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:25 +0000 (14:59 -0600)]
ASoC: Intel: bytcr_wm5102: remove unused static variable
make W=1 warning:
sound/soc/intel/boards/bytcr_wm5102.c:216:40: error:
‘byt_wm5102_dai_params’ defined but not used
[-Werror=unused-const-variable=]
216 | static const struct snd_soc_pcm_stream byt_wm5102_dai_params = {
| ^~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-9-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:24 +0000 (14:59 -0600)]
ASoC: fsl: fsl_easrc: fix kernel-doc warning
make W=1 warning:
sound/soc/fsl/fsl_easrc.c:383: warning: wrong kernel-doc identifier on
line:
* Scale filter coefficients (64 bits float)
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-8-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:23 +0000 (14:59 -0600)]
ASoC: fsl: fsl_ssi: fix kernel-doc warning
make W=1 warning:
sound/soc/fsl/fsl_ssi.c:371: warning: expecting prototype for
fsl_ssi_irq(). Prototype was for fsl_ssi_isr() instead
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-7-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:22 +0000 (14:59 -0600)]
ASoC: amd: renoir: remove invalid kernel-doc comment
make W=1 warning:
sound/soc/amd/renoir/rn-pci-acp3x.c:24: warning: wrong kernel-doc
identifier on line:
* dmic_acpi_check = -1 - Use ACPI/DMI method to detect the DMIC
hardware presence at runtime
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:21 +0000 (14:59 -0600)]
ASoC: sigmadsp-regmap: fix kernel-doc warning
make W=1 warning:
sound/soc/codecs/sigmadsp-regmap.c:42: warning: expecting prototype
for devm_sigmadsp_init_i2c(). Prototype was for
devm_sigmadsp_init_regmap() instead
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-5-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:20 +0000 (14:59 -0600)]
ASoC: rt5631: fix kernel-doc warning
make W=1 warning:
sound/soc/codecs/rt5631.c:446: warning: expecting prototype for
onebit_depop_power_stage(). Prototype was for depop_seq_power_stage()
instead
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:19 +0000 (14:59 -0600)]
ASoC: jz4760: fix set but not used warning
make W=1 warning:
sound/soc/codecs/jz4760.c: In function ‘jz4760_codec_startup’:
sound/soc/codecs/jz4760.c:201:6: error: variable ‘ret’ set but not
used [-Werror=unused-but-set-variable]
201 | int ret;
| ^~~
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 20:59:18 +0000 (14:59 -0600)]
ASoC: cs4270: fix kernel-doc
Add missing parameter (which happens to be ignored)
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302205926.49063-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:27 +0000 (15:25 -0600)]
ASoC: rt5682: remove useless initialization
cppcheck complains about a possible null pointer dereference, but the
problem is rather an useless initialization before walking through a
list.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-25-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:26 +0000 (15:25 -0600)]
ASoC: rt5682: remove useless assignments
cppcheck warnings:
sound/soc/codecs/rt5682.c:1234:6: style: Redundant initialization for
'idx'. The initialized value is overwritten before it is
read. [redundantInitialization]
idx = rt5682_div_sel(rt5682, dmic_clk_rate, div, ARRAY_SIZE(div));
^
sound/soc/codecs/rt5682.c:1228:10: note: idx is initialized
int idx = -EINVAL, dmic_clk_rate =
3072000;
^
sound/soc/codecs/rt5682.c:1234:6: note: idx is overwritten
idx = rt5682_div_sel(rt5682, dmic_clk_rate, div, ARRAY_SIZE(div));
^
sound/soc/codecs/rt5682.c:1263:6: style: Redundant initialization for
'idx'. The initialized value is overwritten before it is
read. [redundantInitialization]
idx = rt5682_div_sel(rt5682, ref, div_f, ARRAY_SIZE(div_f));
^
sound/soc/codecs/rt5682.c:1248:25: note: idx is initialized
int ref, val, reg, idx = -EINVAL;
^
sound/soc/codecs/rt5682.c:1263:6: note: idx is overwritten
idx = rt5682_div_sel(rt5682, ref, div_f, ARRAY_SIZE(div_f));
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-24-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:25 +0000 (15:25 -0600)]
ASoC: rt5682: clarify expression
cppcheck warning:
sound/soc/codecs/rt5682.c:2401:65: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5682_PLL_M_SFT |
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-23-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:24 +0000 (15:25 -0600)]
ASoC: rt5677: remove useless assignment
cppcheck warning:
sound/soc/codecs/rt5677.c:5335:10: style: Variable 'ret' is assigned a
value that is never used. [unreadVariable]
int ret = 0, loop, i, reg_irq, virq;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-22-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:23 +0000 (15:25 -0600)]
ASoC: rt5677: clarify expression
cppcheck warning:
sound/soc/codecs/rt5677.c:4571:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5677_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-21-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:22 +0000 (15:25 -0600)]
ASoC: rt5670: clarify expression
cppcheck warning:
sound/soc/codecs/rt5670.c:2519:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5670_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-20-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:21 +0000 (15:25 -0600)]
ASoC: rt5668: remove useless assignments
cppcheck warnings:
sound/soc/codecs/rt5668.c:1177:6: style: Redundant initialization for
'idx'. The initialized value is overwritten before it is
read. [redundantInitialization]
idx = rt5668_div_sel(rt5668,
1500000, div, ARRAY_SIZE(div));
^
sound/soc/codecs/rt5668.c:1174:10: note: idx is initialized
int idx = -EINVAL;
^
sound/soc/codecs/rt5668.c:1177:6: note: idx is overwritten
idx = rt5668_div_sel(rt5668,
1500000, div, ARRAY_SIZE(div));
^
sound/soc/codecs/rt5668.c:1202:6: style: Redundant initialization for
'idx'. The initialized value is overwritten before it is
read. [redundantInitialization]
idx = rt5668_div_sel(rt5668, ref, div, ARRAY_SIZE(div));
^
sound/soc/codecs/rt5668.c:1191:25: note: idx is initialized
int ref, val, reg, idx = -EINVAL;
^
sound/soc/codecs/rt5668.c:1202:6: note: idx is overwritten
idx = rt5668_div_sel(rt5668, ref, div, ARRAY_SIZE(div));
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-19-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:20 +0000 (15:25 -0600)]
ASoC: rt5668: clarify expression
cppcheck warning:
sound/soc/codecs/rt5668.c:2185:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5668_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-18-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:19 +0000 (15:25 -0600)]
ASoC: rt5665: clarify expression
cppcheck warning:
sound/soc/codecs/rt5665.c:4388:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5665_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-17-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:18 +0000 (15:25 -0600)]
ASoC: rt5663: clarify expression
cppcheck warning:
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5663_PLL_M_SHIFT |
^
sound/soc/codecs/rt5663.c:2955:63: style: Boolean result is used in
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-16-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:17 +0000 (15:25 -0600)]
ASoC: rt5660: clarify expression
cppcheck warning:
sound/soc/codecs/rt5660.c:1060:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5660_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-15-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:16 +0000 (15:25 -0600)]
ASoC: rt5659: clarify expression
cppcheck warning:
sound/soc/codecs/rt5659.c:3515:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5659_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-14-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:15 +0000 (15:25 -0600)]
ASoC: rt5651: remove useless assignment
cppcheck warning:
sound/soc/codecs/rt5651.c:1786:13: style: Variable 'report' is
assigned a value that is never used. [unreadVariable]
int report = 0;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-13-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:14 +0000 (15:25 -0600)]
ASoC: rt5651: clarify expression
cppcheck warning:
sound/soc/codecs/rt5659.c:3515:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5659_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-12-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:13 +0000 (15:25 -0600)]
ASoC: rt5645: clarify expression
cppcheck warning:
sound/soc/codecs/rt5645.c:2959:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5645_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-11-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:12 +0000 (15:25 -0600)]
ASoC: rt5645: use logical OR
cppcheck warning:
sound/soc/codecs/rt5645.c:693:37: style:inconclusive: Boolean
expression 'reg>=420&®<=461' is used in bitwise operation. Did you
mean '||'? [bitwiseOnBoolean]
if ((reg >= 0x1a4 && reg <= 0x1cd) | (reg >= 0x1e5 && reg <= 0x1f8) |
^
sound/soc/codecs/rt5645.c:693:70: style:inconclusive: Boolean
expression 'reg==177' is used in bitwise operation. Did you mean '||'?
[bitwiseOnBoolean]
if ((reg >= 0x1a4 && reg <= 0x1cd) | (reg >= 0x1e5 && reg <= 0x1f8) |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-10-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:11 +0000 (15:25 -0600)]
ASoC: rt5640: clarify expression
cppcheck warning:
sound/soc/codecs/rt5640.c:1923:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT5640_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-9-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:10 +0000 (15:25 -0600)]
ASoC: rt1308: clarify expression
cppcheck warning:
sound/soc/codecs/rt1308.c:676:40: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
pll_code.k_code << RT1308_PLL1_K_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-8-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:09 +0000 (15:25 -0600)]
ASoC: rt1305: clarify expression
cppcheck warning:
sound/soc/codecs/rt1305.c:853:63: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT1305_PLL_1_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-7-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:08 +0000 (15:25 -0600)]
ASoC: rt1016: clarify expression
cppcheck warning:
sound/soc/codecs/rt1016.c:503:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT1016_PLL_M_SFT |
^
sound/soc/codecs/rt1016.c:506:40: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
pll_code.k_bp << RT1016_PLL_K_BP_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:07 +0000 (15:25 -0600)]
ASoC: rt1015: clarify expression
cppcheck warning:
sound/soc/codecs/rt1015.c:894:61: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT1015_PLL_M_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-5-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:06 +0000 (15:25 -0600)]
ASoC: rt1011: clarify expression
cppcheck warning:
sound/soc/codecs/rt1011.c:1781:63: style: Boolean result is used in
bitwise operation. Clarify expression with
parentheses. [clarifyCondition]
(pll_code.m_bp ? 0 : pll_code.m_code) << RT1011_PLL1_QM_SFT |
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:05 +0000 (15:25 -0600)]
ASoC: rt1011: remove redundant test
cppcheck warning:
sound/soc/codecs/rt1011.c:1994:6: style: Condition 'tx_slotnum' is
always true [knownConditionTrueFalse]
if (tx_slotnum)
^
sound/soc/codecs/rt1011.c:1895:24: note: Assuming that condition
'!tx_slotnum' is not redundant
if (tx_slotnum > 2 || !tx_slotnum) {
^
sound/soc/codecs/rt1011.c:1994:6: note: Condition 'tx_slotnum' is
always true
if (tx_slotnum)
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Tue, 2 Mar 2021 21:25:04 +0000 (15:25 -0600)]
ASoC: rt1011: use logical OR
cppcheck complains a lot about mixing booleans and bitwise operations.
There is no good reason to use && and |, fix with ||
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210302212527.55158-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Tue, 2 Mar 2021 14:50:45 +0000 (14:50 +0000)]
Merge series "ASoC: Intel: soc-acpi: remove unused TigerLake configurations" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
Remove two machine descriptors which were added for development on
Intel RVPs but are no longer used or productized. This will not have
any impact on end-users. The corresponding cleanup was applied in the
SOF topologies.
Pierre-Louis Bossart (2):
ASoC: Intel: soc-acpi: remove unused TGL table with rt5682 only
ASoC: Intel: soc-acpi: remove TGL RVP mixed SoundWire/TDM config
.../intel/common/soc-acpi-intel-tgl-match.c | 23 -------------------
1 file changed, 23 deletions(-)
--
2.25.1
Mark Brown [Tue, 2 Mar 2021 14:50:44 +0000 (14:50 +0000)]
Merge series "Add I2S-MCC support for Microchip's SAMA7G5" from Codrin Ciubotariu <codrin.ciubotariu@microchip.com>:
SAMA7G5 includes an updated version of I2S-MCC, found previously on
SAM9X60. This controller includes 8 data pins, 4 for playback and 4 for
capture. For I2S and LEFT_J formats, these pins can be used to
send/receive up to 8 audio channels. For DSP_A, with TDM, any pins pair
(DIN/DOUT) from these 4 can be selected to send/receive data. This
version also includes 2 FIFOs (send and receive).
This patch set starts by moving the driver's bindings to yaml and
continues with adding a new compatible for the SAMA7G5 variant, followed
by the changes needed for I2S/LEFT_J support, TDM pin pair selection and
FIFO support, exclusively for SAMA7G5.
Changes in v2:
- moved DT binding conversion patch from the beginning to the end of the
patch serieses
- patches that update the DT binding are modified to change .txt file
instead of .yaml
Codrin Ciubotariu (7):
dt-bindings: mchp,i2s-mcc: Add SAMA7G5 to binding
ASoC: mchp-i2s-mcc: Add compatible for SAMA7G5
ASoC: mchp-i2s-mcc: Add multi-channel support for I2S and LEFT_J
formats
dt-bindings: mchp,i2s-mcc: Add property to specify pin pair for TDM
ASoC: mchp-i2s-mcc: Add support to select TDM pins
ASoC: mchp-i2s-mcc: Add FIFOs support
ASoC: convert Microchip I2SMCC binding to yaml
.../bindings/sound/mchp,i2s-mcc.yaml | 108 ++++++++++++
.../bindings/sound/mchp-i2s-mcc.txt | 43 -----
sound/soc/atmel/Kconfig | 3 +
sound/soc/atmel/mchp-i2s-mcc.c | 161 +++++++++++++++---
4 files changed, 252 insertions(+), 63 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/mchp,i2s-mcc.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/mchp-i2s-mcc.txt
--
2.27.0
Ranjani Sridharan [Mon, 1 Mar 2021 17:01:57 +0000 (09:01 -0800)]
ASoC: SOF: Intel: hda: enable async suspend
The skylake driver disabled async suspend to prevent disabling
the DSP before the card was suspended during system suspend.
This code was carried over to the SOF driver. But, there is no
risk of the DSP getting disabled before the card is suspended
with the SOF driver. Therefore, it is safe to enable async suspend
and thereby optimize the system resume time.
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20210301170157.36584-1-ranjani.sridharan@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Fabio Estevam [Mon, 1 Mar 2021 19:33:28 +0000 (16:33 -0300)]
ASoC: wm8524: Do not print probe defer error
On an imx8mq-evk the following error is seen:
[ 1.375809] wm8524-codec audio-codec: Failed to get mute line: -517
It happens because the codec driver may probe prior to the imx gpio
driver, which causes a probe defer.
Change to dev_err_probe() to avoid printing this error.
Reported-by: Chris Healy <cphealy@gmail.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Link: https://lore.kernel.org/r/20210301193328.2123511-1-festevam@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Mon, 1 Mar 2021 16:53:47 +0000 (10:53 -0600)]
ASoC: Intel: atom: fix kernel-doc
v5.12-rc1 flags new warnings with make W=1, fix missing or broken
function descriptors.
sound/soc/intel/atom/sst/sst_loader.c:85: warning: expecting prototype
for sst_start_merrifield(). Prototype was for sst_start_mrfld()
instead
sound/soc/intel/atom/sst/sst_acpi.c:339: warning: expecting prototype
for intel_sst_remove(). Prototype was for sst_acpi_remove() instead
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210301165349.114952-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Mon, 1 Mar 2021 17:46:59 +0000 (11:46 -0600)]
ASoC: soc-dai: fix kernel-doc
v5.12-rc1 flags new warnings with make W=1, fix missing or broken
function descriptors.
sound/soc/soc-dai.c:167: warning: expecting prototype for
snd_soc_xlate_tdm_slot(). Prototype was for
snd_soc_xlate_tdm_slot_mask() instead
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210301174659.117122-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Mon, 1 Mar 2021 17:46:39 +0000 (11:46 -0600)]
ASoC: codecs: nau8825: fix kernel-doc
v5.12-rc1 flags new warnings with make W=1, fix missing or broken
function descriptors.
sound/soc/codecs/nau8825.c:298: warning: wrong kernel-doc identifier
on line:
* Ramp up the headphone volume change gradually to target level.
sound/soc/codecs/nau8825.c:358: warning: expecting prototype for This
func(). Prototype was for nau8825_intlog10_dec3() instead
sound/soc/codecs/nau8825.c:411: warning: wrong kernel-doc identifier
on line:
* computes cross talk suppression sidetone gain.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210301174639.117017-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Mon, 1 Mar 2021 23:56:37 +0000 (17:56 -0600)]
ASoC: Intel: soc-acpi: remove TGL RVP mixed SoundWire/TDM config
The TGL RVP can be configured in many ways. We initially supported a
mixed configuration with RT711 in SoundWire mode and RT1308 in
TDM mode.
However Intel teams no longer have any hardware with this
configuration and there are no commercially-available devices using it
either, so let's remove this entry. The corresponding topology will
also be removed from the SOF tree.
This patch partially reverts Commit
d985d208bf8f ("ASoC: Intel: common: add match tables for TGL w/ SoundWire")
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Link: https://lore.kernel.org/r/20210301235637.1177525-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Mon, 1 Mar 2021 23:56:36 +0000 (17:56 -0600)]
ASoC: Intel: soc-acpi: remove unused TGL table with rt5682 only
This patch partially reverts Commit
095ee71907ea ("ASoC: Intel: common: add match table for TGL RT5682 SoundWire driver").
This commit was added as an enabling patch before the Maxim98373 codec
driver was available. This codec is now fully functional and the
topology with only RT5682 no longer maintained or used.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Link: https://lore.kernel.org/r/20210301235637.1177525-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Codrin Ciubotariu [Mon, 1 Mar 2021 17:09:02 +0000 (19:09 +0200)]
ASoC: mchp, i2s-mcc: Add property to specify pin pair for TDM
SAMA7G5's I2S-MCC has 4 pairs of DIN/DOUT pins. Since TDM only uses a
single pair of pins for synchronous capture and playback, the controller
needs to be told which of the pair is connected. This can be mentioned
using the new "microchip,tdm-data-pair" property. The property is optional,
needed only if TDM is used, and if it's missing DIN/DOUT 0 pins will be
used by default.
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Link: https://lore.kernel.org/r/20210301170905.835091-5-codrin.ciubotariu@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Codrin Ciubotariu [Mon, 1 Mar 2021 17:08:59 +0000 (19:08 +0200)]
ASoC: mchp,i2s-mcc: Add SAMA7G5 to binding
SAMA7G5 includes an updated version of the I2S-MCC driver, that includes
3 more DIN/DOUT pin pairs for multi-channel.
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Link: https://lore.kernel.org/r/20210301170905.835091-2-codrin.ciubotariu@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Codrin Ciubotariu [Mon, 1 Mar 2021 17:09:04 +0000 (19:09 +0200)]
ASoC: mchp-i2s-mcc: Add FIFOs support
I2S-MCC found on SAMA7G5 includes 2 FIFOs (capture and playback). When
FIFOs are enabled, bits I2SMCC_ISRA.TXLRDYx and I2SMCC_ISRA.TXRRDYx must
not be used. Bits I2SMCC_ISRB.TXFFRDY and I2SMCC_ISRB.RXFFRDY must be used
instead.
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Link: https://lore.kernel.org/r/20210301170905.835091-7-codrin.ciubotariu@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Codrin Ciubotariu [Mon, 1 Mar 2021 17:09:03 +0000 (19:09 +0200)]
ASoC: mchp-i2s-mcc: Add support to select TDM pins
SAMA7G5's I2S-MCC has 4 pairs of DIN/DOUT pins. Since TDM only uses a
single pair of pins for synchronous capture and playback, the controller
needs to be told which of the pair is connected. This can be mentioned
using the "microchip,tdm-data-pair" property from DT. The property is
optional, useful only if TDM is used. If it's missing, DIN/DOUT 0 pins
will be used by default.
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Link: https://lore.kernel.org/r/20210301170905.835091-6-codrin.ciubotariu@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Codrin Ciubotariu [Mon, 1 Mar 2021 17:09:01 +0000 (19:09 +0200)]
ASoC: mchp-i2s-mcc: Add multi-channel support for I2S and LEFT_J formats
The latest I2S-MCC available in SAMA7G5 supports multi-channel for I2S and
Left-Justified formats. For this, the new version uses 8 (4 * 2) input and
output pins, with each pin being responsible for 2 channels. This sums up
to a total of 8 channels for synchronous capture and playback.
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Link: https://lore.kernel.org/r/20210301170905.835091-4-codrin.ciubotariu@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Codrin Ciubotariu [Mon, 1 Mar 2021 17:09:00 +0000 (19:09 +0200)]
ASoC: mchp-i2s-mcc: Add compatible for SAMA7G5
Microchip's new SAMA7G5 includes an updated I2S-MCC compatible with the
previous version found on SAM9X60. The new controller includes 8 (4 * 2)
input and output data pins for up to 8 channels for I2S and Left-Justified
formats.
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Link: https://lore.kernel.org/r/20210301170905.835091-3-codrin.ciubotariu@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Mark Brown [Mon, 1 Mar 2021 23:31:55 +0000 (23:31 +0000)]
Merge series "ASoC: rsnd: cleanup ppcheck warning for Renesas sound driver" from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
Hi Mark, Pierre-Louis
These patches are based on below patch-set which from Pierre-Louis,
and cleanup cppcheck warnings for Rensas sound driver.
[3/5] has Reported-by Pierre-Louis tag.
Subject: [PATCH 0/8] ASoC: sh: remove cppcheck warnings
Date: Fri, 19 Feb 2021 17:16:27 -0600
Kuninori Morimoto (5):
ASoC: rsnd: cleanup ppcheck warning for ssiu.c
ASoC: rsnd: cleanup ppcheck warning for ssi.c
ASoC: rsnd: cleanup ppcheck warning for core.c
ASoC: rsnd: cleanup ppcheck warning for cmd.c
ASoC: rsnd: cleanup ppcheck warning for adg.c
sound/soc/sh/rcar/adg.c | 15 +++++++-------
sound/soc/sh/rcar/cmd.c | 15 +++++++-------
sound/soc/sh/rcar/core.c | 32 +++++++++++++---------------
sound/soc/sh/rcar/ssi.c | 45 ++++++++++++++++++++--------------------
sound/soc/sh/rcar/ssiu.c | 22 +++++++++++---------
5 files changed, 64 insertions(+), 65 deletions(-)
--
2.25.1
Mark Brown [Mon, 1 Mar 2021 23:31:53 +0000 (23:31 +0000)]
Merge series "drop unneeded snd_soc_dai_set_drvdata" from Julia Lawall <Julia.Lawall@inria.fr>:
snd_soc_dai_set_drvdata is not needed when the set data comes from
snd_soc_dai_get_drvdata or dev_get_drvdata.
---
sound/soc/fsl/fsl_micfil.c | 2 --
sound/soc/fsl/fsl_sai.c | 2 --
sound/soc/fsl/fsl_xcvr.c | 1 -
sound/soc/mxs/mxs-saif.c | 10 ----------
sound/soc/pxa/mmp-sspa.c | 1 -
sound/soc/sunxi/sun4i-i2s.c | 2 --
6 files changed, 18 deletions(-)
Mark Brown [Mon, 1 Mar 2021 23:31:52 +0000 (23:31 +0000)]
Merge series "ASoC: sh: remove cppcheck warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
No functional changes except for patch 4 where a missing error check
was added for consistency.
Pierre-Louis Bossart (8):
ASoC: sh: dma-sh7760: remove unused variable
ASoC: sh: rcar: align function prototypes
ASoC: sh: rcar: simplify return
ASoC: sh: rcar: core: rename shadowing variables
ASoC: sh: rcar: ctu: add missing error check
ASoC: sh: rcar: ssi: remove redundant assignment
ASoC: sh: siu_pcm: remove useless assignment
ASoC: sh: siu_pcm: remove unused variable
sound/soc/sh/dma-sh7760.c | 1 -
sound/soc/sh/rcar/core.c | 14 +++++++-------
sound/soc/sh/rcar/ctu.c | 2 ++
sound/soc/sh/rcar/rsnd.h | 6 +++---
sound/soc/sh/rcar/ssi.c | 1 -
sound/soc/sh/siu_pcm.c | 6 +-----
6 files changed, 13 insertions(+), 17 deletions(-)
--
2.25.1
Mark Brown [Mon, 1 Mar 2021 23:31:51 +0000 (23:31 +0000)]
Merge series "ASoC: core: remove cppcheck warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
This is the first batch of cleanups to make cppcheck more usable,
currently we have way too many warnings that drown real issues.
Pierre-Louis Bossart (6):
ASoC: soc-ops: remove useless assignment
ASoC: soc-pcm: remove redundant assignment
ASoC: soc-pcm: remove shadowing variable
ASoC: soc-pcm: add error log
ASoC: soc-topology: clarify expression
ASoC: generic: simple-card-utils: remove useless assignment
sound/soc/generic/simple-card-utils.c | 2 +-
sound/soc/soc-ops.c | 2 +-
sound/soc/soc-pcm.c | 4 ++--
sound/soc/soc-topology.c | 16 ++++++++--------
4 files changed, 12 insertions(+), 12 deletions(-)
--
2.25.1
Mark Brown [Mon, 1 Mar 2021 23:31:50 +0000 (23:31 +0000)]
Merge series "ASoC: samsung: remove cppcheck warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
No functional changes except for patch 2 and 3 where missing error
checks were added for consistency.
Pierre-Louis Bossart (6):
ASoC: samsung: i2s: remove unassigned variable
ASoC: samsung: s3c24xx_simtec: add missing error check
ASoC: samsung: smdk_wm8994: add missing return
ASoC: samsung: snow: remove useless test
ASoC: samsung: tm2_wm5110: check of_parse return value
ASoC: samsung: tm2_wm5510: remove shadowing variable
sound/soc/samsung/i2s.c | 3 +--
sound/soc/samsung/s3c24xx_simtec.c | 5 +++++
sound/soc/samsung/smdk_wm8994.c | 1 +
sound/soc/samsung/snow.c | 5 +----
sound/soc/samsung/tm2_wm5110.c | 3 +--
5 files changed, 9 insertions(+), 8 deletions(-)
--
2.25.1
Mark Brown [Mon, 1 Mar 2021 23:31:49 +0000 (23:31 +0000)]
Merge series "soc-pcm: tidyup snd_pcm_hardware setup for FE/BE" from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
Hi Mark
These patches tidyup snd_pcm_hardware setup for FE/BE.
[1/5] changes behavior, but I think it is bug-fix.
Kuninori Morimoto (5):
ASoC: soc-pcm: remove strange format storing
ASoC: soc-pcm: unpack dpcm_init_runtime_hw()
ASoC: soc-pcm: add dpcm_runtime_setup_fe()
ASoC: soc-pcm: add dpcm_runtime_setup()
ASoC: soc-pcm: unpack dpcm_set_fe_runtime()
sound/soc/soc-pcm.c | 79 +++++++++++++++++++++------------------------
1 file changed, 36 insertions(+), 43 deletions(-)
--
2.25.1
Mark Brown [Mon, 1 Mar 2021 23:31:48 +0000 (23:31 +0000)]
Merge series "ASoC: fsl: remove cppcheck warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
Nothing critical and no functional changes.
The only change that needs attention if the 'fsl_ssi: remove
unnecessary tests' patch, where variables are to zero, then tested to
set register fields. Either the tests are indeed redundant or the
entire programming sequence is incorrect.
Pierre-Louis Bossart (9):
ASoC: fsl: fsl_asrc: remove useless assignment
ASoC: fsl: fsl_dma: remove unused variable
ASoC: fsl: fsl_easrc: remove useless assignments
ASoC: fsl: fsl_esai: clarify expression
ASoC: fsl: fsl_ssi: remove unnecessary tests
ASoC: fsl: imx-hdmi: remove unused structure members
ASoC: fsl: mpc5200: signed parameter in snprintf format
ASoC: fsl: mpc8610: remove useless assignment
ASoC: fsl: p1022_ds: remove useless assignment
sound/soc/fsl/fsl_asrc.c | 2 +-
sound/soc/fsl/fsl_dma.c | 3 ---
sound/soc/fsl/fsl_easrc.c | 6 +++---
sound/soc/fsl/fsl_esai.c | 2 +-
sound/soc/fsl/fsl_ssi.c | 5 ++---
sound/soc/fsl/imx-hdmi.c | 4 ----
sound/soc/fsl/mpc5200_dma.c | 2 +-
sound/soc/fsl/mpc8610_hpcd.c | 2 +-
sound/soc/fsl/p1022_ds.c | 2 +-
9 files changed, 10 insertions(+), 18 deletions(-)
--
2.25.1
Mark Brown [Mon, 1 Mar 2021 23:31:47 +0000 (23:31 +0000)]
Merge series "ASoC: rt*: Constify static structs" from Rikard Falkeborn <rikard.falkeborn@gmail.com>:
Constify a number of static structs that are never modified in RealTek
codecs. The most important patches are the first two, which constifies
snd_soc_dai_ops and sdw_slave_ops, both which contain function pointers.
The other two patches are for good measure, since I was already touching
the code there.
When doing this, I discovered sound/soc/codecs/rt1016.c is not in a
Makefile, so there is not really any way to build it (I added locally to
the Makefile to compile-test my changes). Is this expected or an oversight?
Rikard Falkeborn (4):
ASoC: rt*: Constify static struct sdw_slave_ops
ASoC: rt*: Constify static struct snd_soc_dai_ops
ASoC: rt*: Constify static struct acpi_device_id
ASoc: rt5631: Constify static struct coeff_clk_div
sound/soc/codecs/rt1011.c | 2 +-
sound/soc/codecs/rt1015.c | 4 ++--
sound/soc/codecs/rt1016.c | 4 ++--
sound/soc/codecs/rt1305.c | 2 +-
sound/soc/codecs/rt1308-sdw.c | 2 +-
sound/soc/codecs/rt1308.c | 2 +-
sound/soc/codecs/rt5631.c | 2 +-
sound/soc/codecs/rt5682-sdw.c | 4 ++--
sound/soc/codecs/rt700-sdw.c | 2 +-
sound/soc/codecs/rt700.c | 2 +-
sound/soc/codecs/rt711-sdw.c | 2 +-
sound/soc/codecs/rt711.c | 2 +-
sound/soc/codecs/rt715-sdw.c | 2 +-
sound/soc/codecs/rt715.c | 2 +-
14 files changed, 17 insertions(+), 17 deletions(-)
--
2.30.1
Mark Brown [Mon, 1 Mar 2021 23:31:46 +0000 (23:31 +0000)]
Merge series "ASoC: qcom: remove cppcheck warnings" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
Second batch of cleanups for Qualcomm SOCs and codecs. The only
functional change is the addition of a missing error check in the last
patch.
Pierre-Louis Bossart (10):
ASoC: qcom: lpass-hdmi: remove useless return
ASoC: qcom: lpass-platform: remove useless assignment
ASoC: qcom: q6dsp-dai: clarify expression
ASoC: qcom: q6afe: remove useless assignments
ASoC: qcom: q6afe: align function prototype
ASoC: qcom: q6asm: align function prototypes
ASoC: wcd-clsh-v2: align function prototypes
ASoC: wcd9335: clarify return value
ASoC: wcd934x: remove useless return
ASoC: lpass-wsa-macro: add missing test
sound/soc/codecs/lpass-wsa-macro.c | 2 ++
sound/soc/codecs/wcd-clsh-v2.h | 6 +++---
sound/soc/codecs/wcd9335.c | 2 +-
sound/soc/codecs/wcd934x.c | 2 --
sound/soc/qcom/lpass-hdmi.c | 4 ----
sound/soc/qcom/lpass-platform.c | 2 +-
sound/soc/qcom/qdsp6/q6afe-dai.c | 2 +-
sound/soc/qcom/qdsp6/q6afe.c | 5 ++---
sound/soc/qcom/qdsp6/q6afe.h | 2 +-
sound/soc/qcom/qdsp6/q6asm.h | 6 +++---
10 files changed, 14 insertions(+), 19 deletions(-)
--
2.25.1
Shuming Fan [Tue, 23 Feb 2021 09:07:59 +0000 (17:07 +0800)]
ASoC: rt1316: Add RT1316 SDCA vendor-specific driver
This is the initial amplifier driver for rt1316 SDCA version.
Signed-off-by: Shuming Fan <shumingf@realtek.com>
Link: https://lore.kernel.org/r/20210223090759.15323-1-shumingf@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Cezary Rojewski [Mon, 25 Jan 2021 11:54:41 +0000 (12:54 +0100)]
ASoC: Intel: Skylake: Compile when any configuration is selected
Skylake is dependent on SND_SOC_INTEL_SKYLAKE (aka "all SST platforms")
whereas selecting specific configuration such as KBL-only will not
cause driver code to compile. Switch to SND_SOC_INTEL_SKYLAKE_COMMON
dependency so selecting any configuration causes the driver to be built.
Reported-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Suggested-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Fixes:
35bc99aaa1a3 ("ASoC: Intel: Skylake: Add more platform granularity")
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://lore.kernel.org/r/20210125115441.10383-1-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Viorel Suman [Mon, 22 Feb 2021 09:09:50 +0000 (17:09 +0800)]
ASoC: fsl_xcvr: move reset assert into runtime_resume
Move reset assert into runtime_resume since we
cannot rely on reset assert state when the device
is put out from suspend.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1613984990-5534-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Kai Vehmanen [Wed, 24 Feb 2021 14:15:41 +0000 (16:15 +0200)]
ASoC: SOF: Intel: hda: turn off display power in resume
Turn off display power at the end of controller resume flow. This is now
possible with the changes done in commit
87fc20e4a0cb ("ASoC: SOF:
Intel: hda: use hdac_ext fine-grained link management"). As codec driver
is able to request the HDA link to be brought back up, the controller
no longer needs to blindly keep display power enabled.
Co-developed-by: Sathyanarayana Nujella <sathyanarayana.nujella@intel.com>
Signed-off-by: Sathyanarayana Nujella <sathyanarayana.nujella@intel.com>
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Keyon Jie <yang.jie@intel.com>
Link: https://lore.kernel.org/r/20210224141541.3331254-1-kai.vehmanen@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Colin Ian King [Fri, 26 Feb 2021 18:56:53 +0000 (18:56 +0000)]
ASoC: Intel: boards: sof-wm8804: add check for PLL setting
Currently the return from snd_soc_dai_set_pll is not checking for
failure, this is the only driver in the kernel that ignores this,
so it probably should be added for sake of completeness. Fix this
by adding an error return check.
Addresses-Coverity: ("Unchecked return value")
Fixes:
f139546fb7d4 ("ASoC: Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210226185653.1071321-1-colin.king@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Colin Ian King [Mon, 15 Feb 2021 20:05:01 +0000 (20:05 +0000)]
ASoC: codecs: lpass-rx-macro: remove redundant initialization of variable hph_pwr_mode
The variable hph_pwr_mode is being initialized with a value that is
never read and it is being updated later with a new value. The
initialization is redundant and can be removed.
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20210215200501.90697-1-colin.king@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Shengjiu Wang [Mon, 22 Feb 2021 08:40:20 +0000 (16:40 +0800)]
ASoC: fsl_sai: Add pm qos cpu latency support
On SoCs such as i.MX7ULP, cpuidle has some levels which
may disable system/bus clocks, so need to add pm_qos to
prevent cpuidle from entering low level idles and make sure
system/bus clocks are enabled when sai is active.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1613983220-5373-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
dingsenjie [Wed, 24 Feb 2021 08:54:07 +0000 (16:54 +0800)]
ASoC: uniphier: Simplify the return expression of uniphier_aio_startup
Simplify the return expression in the aio-cpu.c.
Signed-off-by: dingsenjie <dingsenjie@yulong.com>
Link: https://lore.kernel.org/r/20210224085407.22120-1-dingsenjie@163.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Krzysztof Kozlowski [Sun, 21 Feb 2021 15:30:24 +0000 (16:30 +0100)]
ASoC: constify of_phandle_args in snd_soc_get_dai_name()
The pointer to of_phandle_args passed to snd_soc_get_dai_name() and
of_xlate_dai_name() implementations is not modified. Since it is being
used only to translate passed OF node to a DAI name, it should not be
modified, so mark it as const for correctness and safer code.
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Link: https://lore.kernel.org/r/20210221153024.453583-1-krzk@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Kuninori Morimoto [Thu, 25 Feb 2021 00:25:23 +0000 (09:25 +0900)]
ASoC: rsnd: cleanup ppcheck warning for adg.c
This patch cleanups below ppcheck warning.
sound/soc/sh/rcar/adg.c:67:9: style: The scope of the variable 'ratio' can be reduced. [variableScope]
int i, ratio;
^
sound/soc/sh/rcar/adg.c:114:6: style: The scope of the variable 'idx' can be reduced. [variableScope]
int idx, sel, div, step;
^
sound/soc/sh/rcar/adg.c:114:21: style: The scope of the variable 'step' can be reduced. [variableScope]
int idx, sel, div, step;
^
sound/soc/sh/rcar/adg.c:397:14: style: The scope of the variable 'clk' can be reduced. [variableScope]
struct clk *clk;
^
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87ft1lro24.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Kuninori Morimoto [Thu, 25 Feb 2021 00:25:19 +0000 (09:25 +0900)]
ASoC: rsnd: cleanup ppcheck warning for cmd.c
This patch cleanups below ppcheck warning.
sound/soc/sh/rcar/cmd.c:46:20: style: The scope of the variable 'src' can be reduced. [variableScope]
struct rsnd_mod *src;
^
sound/soc/sh/rcar/cmd.c:47:27: style: The scope of the variable 'tio' can be reduced. [variableScope]
struct rsnd_dai_stream *tio;
^
sound/soc/sh/rcar/cmd.c:145:13: style: The scope of the variable 'ret' can be reduced. [variableScope]
int i, nr, ret;
^
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87h7m1ro28.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Kuninori Morimoto [Thu, 25 Feb 2021 00:25:14 +0000 (09:25 +0900)]
ASoC: rsnd: cleanup ppcheck warning for core.c
This patch cleanups below ppcheck warning.
sound/soc/sh/rcar/core.c:233:26: style: The scope of the variable 'io' can be reduced. [variableScope]
struct rsnd_dai_stream *io;
^
sound/soc/sh/rcar/core.c:489:19: style: The scope of the variable 'mod' can be reduced. [variableScope]
struct rsnd_mod *mod;
^
sound/soc/sh/rcar/core.c:1064:9: style: The scope of the variable 'j' can be reduced. [variableScope]
int i, j;
^
sound/soc/sh/rcar/core.c:1143:19: style: The scope of the variable 'mod' can be reduced. [variableScope]
struct rsnd_mod *mod;
^
sound/soc/sh/rcar/core.c:1261:22: style: The scope of the variable 'playback' can be reduced. [variableScope]
struct device_node *playback, *capture;
^
sound/soc/sh/rcar/core.c:1261:33: style: The scope of the variable 'capture' can be reduced. [variableScope]
struct device_node *playback, *capture;
^
sound/soc/sh/rcar/core.c:1419:29: style: The scope of the variable 'be_params' can be reduced. [variableScope]
struct snd_pcm_hw_params *be_params;
^
sound/soc/sh/rcar/core.c:1369:22: style: Local variable 'rdai' shadows outer variable [shadowVariable]
struct rsnd_dai *rdai = rsnd_rdai_get(priv, dai_i);
^
sound/soc/sh/rcar/core.c:1338:19: note: Shadowed declaration
struct rsnd_dai *rdai;
^
sound/soc/sh/rcar/core.c:1369:22: note: Shadow variable
struct rsnd_dai *rdai = rsnd_rdai_get(priv, dai_i);
^
sound/soc/sh/rcar/core.c:1380:22: style: Local variable 'rdai' shadows outer variable [shadowVariable]
struct rsnd_dai *rdai = rsnd_rdai_get(priv, dai_i);
^
Reported-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87im6hro2d.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Kuninori Morimoto [Thu, 25 Feb 2021 00:25:08 +0000 (09:25 +0900)]
ASoC: rsnd: cleanup ppcheck warning for ssi.c
This patch cleanups below ppcheck warning.
sound/soc/sh/rcar/ssi.c:170:19: style: The scope of the variable 'mod' can be reduced. [variableScope]
struct rsnd_mod *mod;
^
sound/soc/sh/rcar/ssi.c:535:6: style: The scope of the variable 'i' can be reduced. [variableScope]
int i;
^
sound/soc/sh/rcar/ssi.c:1212:19: style: The scope of the variable 'mod' can be reduced. [variableScope]
struct rsnd_mod *mod;
^
sound/soc/sh/rcar/ssi.c:328:16: portability: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
ssi->cr_clk = FORCE | rsnd_rdai_width_to_swl(rdai) |
^
sound/soc/sh/rcar/ssi.c:387:12: portability: Shifting signed 32-bit value by 31 bits is implementation-defined behaviour [shiftTooManyBitsSigned]
cr_own |= FORCE | rsnd_rdai_width_to_swl(rdai);
^
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87k0qxro2j.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Kuninori Morimoto [Thu, 25 Feb 2021 00:25:02 +0000 (09:25 +0900)]
ASoC: rsnd: cleanup ppcheck warning for ssiu.c
This patch cleanups below ppcheck warning.
sound/soc/sh/rcar/ssiu.c:212:10: style: The scope of the variable 'shift' can be reduced. [variableScope]
int i, shift;
^
sound/soc/sh/rcar/ssiu.c:337:19: style: The scope of the variable 'mod' can be reduced. [variableScope]
struct rsnd_mod *mod;
^
sound/soc/sh/rcar/ssiu.c:362:22: style: The scope of the variable 'np' can be reduced. [variableScope]
struct device_node *np;
^
sound/soc/sh/rcar/ssiu.c:363:19: style: The scope of the variable 'mod' can be reduced. [variableScope]
struct rsnd_mod *mod;
^
sound/soc/sh/rcar/ssiu.c:366:6: style: The scope of the variable 'i' can be reduced. [variableScope]
int i;
^
sound/soc/sh/rcar/ssiu.c:397:13: style: The scope of the variable 'ret' can be reduced. [variableScope]
int i, nr, ret;
^
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87lfbdro2p.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Julia Lawall [Sat, 13 Feb 2021 10:19:07 +0000 (11:19 +0100)]
ASoC: fsl: drop unneeded snd_soc_dai_set_drvdata
snd_soc_dai_set_drvdata is not needed when the set data comes from
snd_soc_dai_get_drvdata or dev_get_drvdata. The problem was fixed
usingthe following semantic patch: (http://coccinelle.lip6.fr/)
// <smpl>
@@
expression x,y,e;
@@
x = dev_get_drvdata(y->dev)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
@@
expression x,y,e;
@@
x = snd_soc_dai_get_drvdata(y)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
// </smpl>
Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
Link: https://lore.kernel.org/r/20210213101907.1318496-5-Julia.Lawall@inria.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
Julia Lawall [Sat, 13 Feb 2021 10:19:06 +0000 (11:19 +0100)]
ASoC: sun4i-i2s: drop unneeded snd_soc_dai_set_drvdata
snd_soc_dai_set_drvdata is not needed when the set data comes from
snd_soc_dai_get_drvdata or dev_get_drvdata. The problem was fixed
usingthe following semantic patch: (http://coccinelle.lip6.fr/)
// <smpl>
@@
expression x,y,e;
@@
x = dev_get_drvdata(y->dev)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
@@
expression x,y,e;
@@
x = snd_soc_dai_get_drvdata(y)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
// </smpl>
Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Link: https://lore.kernel.org/r/20210213101907.1318496-4-Julia.Lawall@inria.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
Julia Lawall [Sat, 13 Feb 2021 10:19:05 +0000 (11:19 +0100)]
ASoC: mxs-saif: drop unneeded snd_soc_dai_set_drvdata
snd_soc_dai_set_drvdata is not needed when the set data comes from
snd_soc_dai_get_drvdata or dev_get_drvdata. The problem was fixed
usingthe following semantic patch: (http://coccinelle.lip6.fr/)
// <smpl>
@@
expression x,y,e;
@@
x = dev_get_drvdata(y->dev)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
@@
expression x,y,e;
@@
x = snd_soc_dai_get_drvdata(y)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
// </smpl>
In this case, the whole probe function then does nothing, so drop it.
Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Link: https://lore.kernel.org/r/20210213101907.1318496-3-Julia.Lawall@inria.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
Julia Lawall [Sat, 13 Feb 2021 10:19:04 +0000 (11:19 +0100)]
ASoC: mmp-sspa: drop unneeded snd_soc_dai_set_drvdata
snd_soc_dai_set_drvdata is not needed when the set data comes from
snd_soc_dai_get_drvdata or dev_get_drvdata. The problem was fixed
usingthe following semantic patch: (http://coccinelle.lip6.fr/)
// <smpl>
@@
expression x,y,e;
@@
x = dev_get_drvdata(y->dev)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
@@
expression x,y,e;
@@
x = snd_soc_dai_get_drvdata(y)
... when != x = e
- snd_soc_dai_set_drvdata(y,x);
// </smpl>
Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Link: https://lore.kernel.org/r/20210213101907.1318496-2-Julia.Lawall@inria.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:35 +0000 (17:16 -0600)]
ASoC: sh: siu_pcm: remove unused variable
cppcheck warning:
sound/soc/sh/siu_pcm.c:225:8: style: Variable 'virt' is assigned a
value that is never used. [unreadVariable]
virt = PERIOD_OFFSET(rt->dma_area,
^
It's not clear what this variable was needed for, remove it.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-9-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:34 +0000 (17:16 -0600)]
ASoC: sh: siu_pcm: remove useless assignment
cppcheck warning:
sound/soc/sh/siu_pcm.c:375:5: style: Redundant initialization for
'rt'. The initialized value is overwritten before it is
read. [redundantInitialization]
rt = siu_stream->substream->runtime;
^
sound/soc/sh/siu_pcm.c:366:30: note: rt is initialized
struct snd_pcm_runtime *rt = ss->runtime;
^
sound/soc/sh/siu_pcm.c:375:5: note: rt is overwritten
rt = siu_stream->substream->runtime;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-8-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:33 +0000 (17:16 -0600)]
ASoC: sh: rcar: ssi: remove redundant assignment
cppcheck warning:
sound/soc/sh/rcar/ssi.c:403:6: style: Redundant initialization for
'wsr'. The initialized value is overwritten before it is
read. [redundantInitialization]
wsr = ssi->wsr;
^
sound/soc/sh/rcar/ssi.c:372:11: note: wsr is initialized
u32 wsr = ssi->wsr;
^
sound/soc/sh/rcar/ssi.c:403:6: note: wsr is overwritten
wsr = ssi->wsr;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-7-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:32 +0000 (17:16 -0600)]
ASoC: sh: rcar: ctu: add missing error check
cppcheck warning:
sound/soc/sh/rcar/ctu.c:212:6: style: Variable 'ret' is reassigned a
value before the old one has been used. [redundantAssignment]
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV0",
^
sound/soc/sh/rcar/ctu.c:205:6: note: ret is assigned
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU Pass",
^
sound/soc/sh/rcar/ctu.c:212:6: note: ret is overwritten
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV0",
^
All the kcontrol creations are checked for errors, except for one. Add
the missing error check.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:30 +0000 (17:16 -0600)]
ASoC: sh: rcar: simplify return
cppcheck warning:
sound/soc/sh/rcar/core.c:219:9: warning: Identical condition and
return expression 'ret', return value is always 0
[identicalConditionAfterEarlyExit]
return ret;
^
sound/soc/sh/rcar/core.c:210:6: note: If condition 'ret' is true, the
function will return/exit
if (ret)
^
sound/soc/sh/rcar/core.c:219:9: note: Returning identical expression
'ret'
return ret;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:29 +0000 (17:16 -0600)]
ASoC: sh: rcar: align function prototypes
cppcheck warnings:
sound/soc/sh/rcar/adg.c:208:51: style:inconclusive: Function
'rsnd_adg_set_cmd_timsel_gen2' argument 1 names different: declaration
'mod' definition 'cmd_mod'. [funcArgNamesDifferent]
int rsnd_adg_set_cmd_timsel_gen2(struct rsnd_mod *cmd_mod,
^
sound/soc/sh/rcar/rsnd.h:608:51: note: Function
'rsnd_adg_set_cmd_timsel_gen2' argument 1 names different: declaration
'mod' definition 'cmd_mod'.
int rsnd_adg_set_cmd_timsel_gen2(struct rsnd_mod *mod,
^
sound/soc/sh/rcar/adg.c:208:51: note: Function
'rsnd_adg_set_cmd_timsel_gen2' argument 1 names different: declaration
'mod' definition 'cmd_mod'.
int rsnd_adg_set_cmd_timsel_gen2(struct rsnd_mod *cmd_mod,
^
sound/soc/sh/rcar/adg.c:322:44: style:inconclusive: Function
'rsnd_adg_ssi_clk_stop' argument 1 names different: declaration 'mod'
definition 'ssi_mod'. [funcArgNamesDifferent]
int rsnd_adg_ssi_clk_stop(struct rsnd_mod *ssi_mod)
^
sound/soc/sh/rcar/rsnd.h:600:44: note: Function
'rsnd_adg_ssi_clk_stop' argument 1 names different: declaration 'mod'
definition 'ssi_mod'.
int rsnd_adg_ssi_clk_stop(struct rsnd_mod *mod);
^
sound/soc/sh/rcar/adg.c:322:44: note: Function 'rsnd_adg_ssi_clk_stop'
argument 1 names different: declaration 'mod' definition 'ssi_mod'.
int rsnd_adg_ssi_clk_stop(struct rsnd_mod *ssi_mod)
^
sound/soc/sh/rcar/adg.c:329:49: style:inconclusive: Function
'rsnd_adg_ssi_clk_try_start' argument 1 names different: declaration
'mod' definition 'ssi_mod'. [funcArgNamesDifferent]
int rsnd_adg_ssi_clk_try_start(struct rsnd_mod *ssi_mod, unsigned int rate)
^
sound/soc/sh/rcar/rsnd.h:601:49: note: Function
'rsnd_adg_ssi_clk_try_start' argument 1 names different: declaration
'mod' definition 'ssi_mod'.
int rsnd_adg_ssi_clk_try_start(struct rsnd_mod *mod, unsigned int rate);
^
sound/soc/sh/rcar/adg.c:329:49: note: Function
'rsnd_adg_ssi_clk_try_start' argument 1 names different: declaration
'mod' definition 'ssi_mod'.
int rsnd_adg_ssi_clk_try_start(struct rsnd_mod *ssi_mod, unsigned int rate)
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Fri, 19 Feb 2021 23:16:28 +0000 (17:16 -0600)]
ASoC: sh: dma-sh7760: remove unused variable
cppcheck warning:
sound/soc/sh/dma-sh7760.c:180:6: style: Unused variable: ret
[unusedVariable]
int ret;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210219231635.5749-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Thu, 18 Feb 2021 22:19:21 +0000 (16:19 -0600)]
ASoC: generic: simple-card-utils: remove useless assignment
cppcheck warning:
sound/soc/generic/simple-card-utils.c:258:10: style: Variable 'ret' is
assigned a value that is never used. [unreadVariable]
int ret = 0;
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210218221921.88991-7-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Thu, 18 Feb 2021 22:19:20 +0000 (16:19 -0600)]
ASoC: soc-topology: clarify expression
cppcheck warning:
sound/soc/soc-topology.c:1676:52: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_RATES ? 1 : 0;
^
sound/soc/soc-topology.c:1680:55: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_CHANNELS ?
^
sound/soc/soc-topology.c:1685:57: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_SAMPLEBITS ?
^
sound/soc/soc-topology.c:1768:52: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_RATES ? 1 : 0;
^
sound/soc/soc-topology.c:1772:55: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_CHANNELS ?
^
sound/soc/soc-topology.c:1777:57: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_SAMPLEBITS ?
^
sound/soc/soc-topology.c:1782:48: style: Clarify calculation
precedence for '&' and '?'. [clarifyCalculation]
flags & SND_SOC_TPLG_LNK_FLGBIT_VOICE_WAKEUP ?
^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210218221921.88991-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Pierre-Louis Bossart [Thu, 18 Feb 2021 22:19:19 +0000 (16:19 -0600)]
ASoC: soc-pcm: add error log
cppcheck warning:
sound/soc/soc-pcm.c:1907:6: style: Variable 'err' is assigned a value
that is never used. [unreadVariable]
err = dpcm_be_dai_hw_free(fe, stream);
^
it's not clear why dpcm_be_dai_hw_free() is sometimes called without
testing the error status, and sometimes an error message is provided.
When in doubt, add an error message for consistency. This may have to
be revisited.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210218221921.88991-5-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>