Srinivas Kandagatla
e8820dbddb
ASoC: codecs: add missing max_register in regmap config
...
For some reason setting max_register was missed from regmap_config.
Without this cat /sys/kernel/debug/regmap/sdw:0:217:2010:0:1/range
actually throws below Warning.
WARNING: CPU: 7 PID: 540 at drivers/base/regmap/regmap-debugfs.c:160
regmap_debugfs_get_dump_start.part.10+0x1e0/0x220
...
Call trace:
regmap_debugfs_get_dump_start.part.10+0x1e0/0x220
regmap_reg_ranges_read_file+0xc0/0x2e0
full_proxy_read+0x64/0x98
vfs_read+0xa8/0x1e0
ksys_read+0x6c/0x100
__arm64_sys_read+0x1c/0x28
el0_svc_common.constprop.3+0x6c/0x190
do_el0_svc+0x24/0x90
el0_svc+0x14/0x20
el0_sync_handler+0x90/0xb8
el0_sync+0x158/0x180
...
Fixes: a0aab9e140 ("ASoC: codecs: add wsa881x amplifier support")
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org >
Link: https://lore.kernel.org/r/20210201161429.28060-1-srinivas.kandagatla@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-02-01 16:23:18 +00:00
Sebastian Reichel
de5bfae2fd
ASoC: cpcap: fix microphone timeslot mask
...
The correct mask is 0x1f8 (Bit 3-8), but due to missing BIT() 0xf (Bit
0-3) was set instead. This means setting of CPCAP_BIT_MIC1_RX_TIMESLOT0
(Bit 3) still worked (part of both masks). On the other hand the code
does not properly clear the other MIC timeslot bits. I think this
is not a problem, since they are probably initialized to 0 and not
touched by the driver anywhere else. But the mask also contains some
wrong bits, that will be cleared. Bit 0 (CPCAP_BIT_SMB_CDC) should be
safe, since the driver enforces it to be 0 anyways.
Bit 1-2 are CPCAP_BIT_FS_INV and CPCAP_BIT_CLK_INV. This means enabling
audio recording forces the codec into SND_SOC_DAIFMT_NB_NF mode, which
is obviously bad.
The bug probably remained undetected, because there are not many use
cases for routing microphone to the CPU on platforms using cpcap and
user base is small. I do remember having some issues with bad sound
quality when testing voice recording back when I wrote the driver.
It probably was this bug.
Fixes: f6cdf2d344 ("ASoC: cpcap: new codec")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Sebastian Reichel <sre@kernel.org >
Reviewed-by: Tony Lindgren <tony@atomide.com >
Link: https://lore.kernel.org/r/20210123172945.3958622-1-sre@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-02-01 16:23:17 +00:00
Sameer Pujar
563c2681d4
ASoC: rt5659: Add Kconfig prompt
...
Add tristate prompt to allow codec selection.
Cc: Oder Chiou <oder_chiou@realtek.com >
Cc: Bard Liao <bardliao@realtek.com >
Signed-off-by: Sameer Pujar <spujar@nvidia.com >
Link: https://lore.kernel.org/r/1611944866-29373-5-git-send-email-spujar@nvidia.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-02-01 13:19:44 +00:00
Judy Hsiao
ded055eea6
ASoC: max98373: Fixes a typo in max98373_feedback_get
...
The snd_soc_put_volsw in max98373_feedback_get is a typo, change it
to snd_soc_get_volsw.
Fixes: 349dd23931 ("ASoC: max98373: don't access volatile registers in bias level off")
Signed-off-by: Judy Hsiao <judyhsiao@google.com >
Link: https://lore.kernel.org/r/20210127135620.1143942-1-judyhsiao@chromium.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-27 15:27:15 +00:00
Srinivas Kandagatla
7db4c4cd76
ASoC: codecs: lpass-wsa-macro: make use of snd_soc_component_read_field()
...
Make use of snd_soc_component_read_field() to make the code more readable!
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org >
Link: https://lore.kernel.org/r/20210126171749.1863-2-srinivas.kandagatla@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-27 13:06:52 +00:00
Eliot Blennerhassett
e953daeb68
ASoC: ak4458: correct reset polarity
...
Reset (aka power off) happens when the reset gpio is made active.
Change function name to ak4458_reset to match devicetree property "reset-gpios"
Signed-off-by: Eliot Blennerhassett <eliot@blennerhassett.gen.nz >
Reviewed-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/ce650f47-4ff6-e486-7846-cc3d033f3601@blennerhassett.gen.nz
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-25 12:53:43 +00:00
Mark Brown
ff385c1f4c
Merge series "ASoC: sync parameter naming : rate / sample_bits" from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
...
Hi Mark
snd_pcm_runtime / snd_soc_dai / snd_soc_dai_driver / snd_soc_dai_link
have related parameter which is similar but not same naming.
struct snd_pcm_runtime {
...
(A) unsigned int rate;
...
(B) unsigned int sample_bits;
...
};
struct snd_soc_dai {
...
(A) unsigned int rate;
(B) unsigned int sample_bits;
...
};
struct snd_soc_dai_driver {
...
(A) unsigned int symmetric_rates:1;
(B) unsigned int symmetric_samplebits:1;
...
};
struct snd_soc_dai_link {
...
(A) unsigned int symmetric_rates:1;
(B) unsigned int symmetric_samplebits:1;
...
};
Because it is similar but not same naming rule,
code can be verbose / can't share macro.
This patch-set sync naming rule
to struct snd_pcm_runtime base.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Kuninori Morimoto (44):
ASoC: soc-pcm: revert soc_pcm_apply_symmetry()
ASoC: sync parameter naming : rate / sample_bits
ASoC: adi: sync parameter naming (rate/sample_bits)
ASoC: atmel: sync parameter naming (rate/sample_bits)
ASoC: au1x: sync parameter naming (rate/sample_bits)
ASoC: bcm: sync parameter naming (rate/sample_bits)
ASoC: cirrus: sync parameter naming (rate/sample_bits)
ASoC: tegra: sync parameter naming (rate/sample_bits)
ASoC: rockchip: sync parameter naming (rate/sample_bits)
ASoC: samsung: sync parameter naming (rate/sample_bits)
ASoC: sh: sync parameter naming (rate/sample_bits)
ASoC: ti: sync parameter naming (rate/sample_bits)
ASoC: pxa: sync parameter naming (rate/sample_bits)
ASoC: mediatek: sync parameter naming (rate/sample_bits)
ASoC: fsl: sync parameter naming (rate/sample_bits)
ASoC: wm*: sync parameter naming (rate/sample_bits)
ASoC: tlv*: sync parameter naming (rate/sample_bits)
ASoC: rt*: sync parameter naming (rate/sample_bits)
ASoC: nau*: sync parameter naming (rate/sample_bits)
ASoC: tas*: sync parameter naming (rate/sample_bits)
ASoC: da*: sync parameter naming (rate/sample_bits)
ASoC: es*: sync parameter naming (rate/sample_bits)
ASoC: max*: sync parameter naming (rate/sample_bits)
ASoC: cs*: sync parameter naming (rate/sample_bits)
ASoC: tscs*: sync parameter naming (rate/sample_bits)
ASoC: ak*: sync parameter naming (rate/sample_bits)
ASoC: adau*: sync parameter naming (rate/sample_bits)
ASoC: jz4740: sync parameter naming (rate/sample_bits)
ASoC: sunxi: sync parameter naming (rate/sample_bits)
ASoC: zl38060: sync parameter naming (rate/sample_bits)
ASoC: ssm2602: sync parameter naming (rate/sample_bits)
ASoC: sgtl5000: sync parameter naming (rate/sample_bits)
ASoC: mc13783: sync parameter naming (rate/sample_bits)
ASoC: mt6660: sync parameter naming (rate/sample_bits)
ASoC: lochnagar-sc: sync parameter naming (rate/sample_bits)
ASoC: ab8500: sync parameter naming (rate/sample_bits)
ASoC: alc5632: sync parameter naming (rate/sample_bits)
ASoC: cx2072x: sync parameter naming (rate/sample_bits)
ASoC: inno_rk3036: sync parameter naming (rate/sample_bits)
ASoC: lm49453: sync parameter naming (rate/sample_bits)
ASoC: ml26124: sync parameter naming (rate/sample_bits)
ASoC: soc-dai.h: remove symmetric_rates/samplebits
ASoC: soc-pcm: cleanup soc_pcm_apply_symmetry()
ASoC: soc-pcm: cleanup soc_pcm_params_symmetry()
include/sound/soc-dai.h | 4 +-
include/sound/soc.h | 4 +-
sound/soc/adi/axi-i2s.c | 2 +-
sound/soc/atmel/atmel-i2s.c | 2 +-
sound/soc/atmel/mchp-i2s-mcc.c | 4 +-
sound/soc/au1x/i2sc.c | 2 +-
sound/soc/bcm/bcm2835-i2s.c | 4 +-
sound/soc/bcm/bcm63xx-i2s-whistler.c | 2 +-
sound/soc/cirrus/ep93xx-i2s.c | 2 +-
sound/soc/codecs/ab8500-codec.c | 4 +-
sound/soc/codecs/adau1372.c | 2 +-
sound/soc/codecs/adau1373.c | 6 +-
sound/soc/codecs/adau1701.c | 2 +-
sound/soc/codecs/ak4554.c | 2 +-
sound/soc/codecs/ak4613.c | 2 +-
sound/soc/codecs/ak4641.c | 4 +-
sound/soc/codecs/ak4642.c | 2 +-
sound/soc/codecs/alc5632.c | 2 +-
sound/soc/codecs/cs35l32.c | 2 +-
sound/soc/codecs/cs35l33.c | 2 +-
sound/soc/codecs/cs35l34.c | 2 +-
sound/soc/codecs/cs35l35.c | 2 +-
sound/soc/codecs/cs35l36.c | 2 +-
sound/soc/codecs/cs4234.c | 2 +-
sound/soc/codecs/cs4271.c | 2 +-
sound/soc/codecs/cs42l73.c | 6 +-
sound/soc/codecs/cs43130.c | 6 +-
sound/soc/codecs/cs4341.c | 2 +-
sound/soc/codecs/cs4349.c | 2 +-
sound/soc/codecs/cs47l15.c | 12 ++--
sound/soc/codecs/cs47l24.c | 12 ++--
sound/soc/codecs/cs47l35.c | 12 ++--
sound/soc/codecs/cs47l85.c | 16 ++---
sound/soc/codecs/cs47l90.c | 16 ++---
sound/soc/codecs/cs47l92.c | 12 ++--
sound/soc/codecs/cs53l30.c | 2 +-
sound/soc/codecs/cx2072x.c | 2 +-
sound/soc/codecs/da7210.c | 2 +-
sound/soc/codecs/da7213.c | 2 +-
sound/soc/codecs/da7218.c | 4 +-
sound/soc/codecs/da7219.c | 4 +-
sound/soc/codecs/da9055.c | 2 +-
sound/soc/codecs/es8316.c | 2 +-
sound/soc/codecs/es8328.c | 2 +-
sound/soc/codecs/inno_rk3036.c | 2 +-
sound/soc/codecs/jz4740.c | 2 +-
sound/soc/codecs/lm49453.c | 2 +-
sound/soc/codecs/lochnagar-sc.c | 12 ++--
sound/soc/codecs/max9860.c | 2 +-
sound/soc/codecs/max9867.c | 2 +-
sound/soc/codecs/mc13783.c | 2 +-
sound/soc/codecs/ml26124.c | 2 +-
sound/soc/codecs/mt6660.c | 4 +-
sound/soc/codecs/nau8810.c | 2 +-
sound/soc/codecs/nau8822.c | 2 +-
sound/soc/codecs/rt274.c | 2 +-
sound/soc/codecs/rt286.c | 4 +-
sound/soc/codecs/rt298.c | 4 +-
sound/soc/codecs/rt5670.c | 4 +-
sound/soc/codecs/sgtl5000.c | 2 +-
sound/soc/codecs/ssm2602.c | 4 +-
sound/soc/codecs/tas2764.c | 2 +-
sound/soc/codecs/tas2770.c | 2 +-
sound/soc/codecs/tlv320adcx140.c | 2 +-
sound/soc/codecs/tlv320aic31xx.c | 4 +-
sound/soc/codecs/tlv320aic32x4.c | 2 +-
sound/soc/codecs/tlv320aic3x.c | 2 +-
sound/soc/codecs/tscs42xx.c | 4 +-
sound/soc/codecs/tscs454.c | 12 ++--
sound/soc/codecs/wm5102.c | 12 ++--
sound/soc/codecs/wm5110.c | 12 ++--
sound/soc/codecs/wm8510.c | 2 +-
sound/soc/codecs/wm8731.c | 2 +-
sound/soc/codecs/wm8770.c | 2 +-
sound/soc/codecs/wm8804.c | 2 +-
sound/soc/codecs/wm8903.c | 2 +-
sound/soc/codecs/wm8904.c | 2 +-
sound/soc/codecs/wm8940.c | 2 +-
sound/soc/codecs/wm8960.c | 2 +-
sound/soc/codecs/wm8962.c | 2 +-
sound/soc/codecs/wm8974.c | 2 +-
sound/soc/codecs/wm8978.c | 2 +-
sound/soc/codecs/wm8983.c | 2 +-
sound/soc/codecs/wm8985.c | 2 +-
sound/soc/codecs/wm8988.c | 2 +-
sound/soc/codecs/wm8993.c | 2 +-
sound/soc/codecs/wm8994.c | 4 +-
sound/soc/codecs/wm8997.c | 8 +--
sound/soc/codecs/wm8998.c | 12 ++--
sound/soc/codecs/wm9713.c | 2 +-
sound/soc/codecs/zl38060.c | 4 +-
sound/soc/fsl/fsl_esai.c | 4 +-
sound/soc/fsl/fsl_sai.c | 8 +--
sound/soc/fsl/fsl_ssi.c | 4 +-
sound/soc/jz4740/jz4740-i2s.c | 2 +-
sound/soc/mediatek/mt2701/mt2701-afe-pcm.c | 10 +--
sound/soc/mediatek/mt6797/mt6797-dai-pcm.c | 8 +--
sound/soc/mediatek/mt8173/mt8173-afe-pcm.c | 2 +-
sound/soc/mediatek/mt8183/mt8183-dai-pcm.c | 8 +--
sound/soc/mediatek/mt8192/mt8192-dai-pcm.c | 8 +--
sound/soc/pxa/pxa2xx-i2s.c | 2 +-
sound/soc/rockchip/rockchip_i2s.c | 4 +-
sound/soc/rockchip/rockchip_pdm.c | 2 +-
sound/soc/samsung/i2s.c | 2 +-
sound/soc/samsung/pcm.c | 2 +-
sound/soc/sh/rcar/core.c | 4 +-
sound/soc/soc-pcm.c | 80 +++++++---------------
sound/soc/soc-topology.c | 8 +--
sound/soc/sunxi/sun4i-i2s.c | 2 +-
sound/soc/sunxi/sun8i-codec.c | 12 ++--
sound/soc/tegra/tegra186_dspk.c | 2 +-
sound/soc/tegra/tegra20_i2s.c | 2 +-
sound/soc/tegra/tegra210_dmic.c | 2 +-
sound/soc/tegra/tegra210_i2s.c | 2 +-
sound/soc/tegra/tegra30_i2s.c | 2 +-
sound/soc/ti/davinci-mcasp.c | 2 +-
116 files changed, 253 insertions(+), 283 deletions(-)
--
2.25.1
2021-01-21 18:13:25 +00:00
Shuming Fan
06c8456753
ASoC: rt5682: remove connection with LDO2 in DAPM graph
...
The application circuit shall provide MICVDD power.
In default, the codec driver doesn't need to enable LDO2.
In case, a board wants to use VBAT for micbias,
it should add a DAPM route which IN1P connects with LDO2 in the machine driver.
e.g. { "IN1P", NULL, "LDO2" },
Signed-off-by: Shuming Fan <shumingf@realtek.com >
Link: https://lore.kernel.org/r/20210121100353.6402-1-shumingf@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:40:24 +00:00
Kuninori Morimoto
6944db0ab8
ASoC: ml26124: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87czy6n6t0.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:19 +00:00
Kuninori Morimoto
3b940ecd2e
ASoC: lm49453: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87eeimn6t4.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:19 +00:00
Kuninori Morimoto
d5d396c8b0
ASoC: inno_rk3036: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87ft32n6t8.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:18 +00:00
Kuninori Morimoto
15d27c2b12
ASoC: cx2072x: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87h7nin6tc.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:17 +00:00
Kuninori Morimoto
278eacf3dc
ASoC: alc5632: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87im7yn6th.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:16 +00:00
Kuninori Morimoto
6058bcb497
ASoC: ab8500: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87k0sen6tl.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:15 +00:00
Kuninori Morimoto
65ba325625
ASoC: lochnagar-sc: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87lfcun6tp.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:14 +00:00
Kuninori Morimoto
852d4daa96
ASoC: mt6660: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87mtxan6tt.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:13 +00:00
Kuninori Morimoto
23df7f69ff
ASoC: mc13783: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87o8hqn6ty.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:12 +00:00
Kuninori Morimoto
bea17630c4
ASoC: sgtl5000: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87pn26n6u4.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:11 +00:00
Kuninori Morimoto
4735c8cadd
ASoC: ssm2602: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87r1mmn6ub.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:10 +00:00
Kuninori Morimoto
b33c088a9b
ASoC: zl38060: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87sg72n6ug.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:09 +00:00
Kuninori Morimoto
0547dece8d
ASoC: jz4740: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87v9byn6uo.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:08 +00:00
Kuninori Morimoto
f88f45861b
ASoC: adau*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87wnwen6v8.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:07 +00:00
Kuninori Morimoto
870b76ea7d
ASoC: ak*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87y2gun6vc.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:06 +00:00
Kuninori Morimoto
9b4488efde
ASoC: tscs*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87zh1an6vh.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:05 +00:00
Kuninori Morimoto
260b668cf3
ASoC: cs*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/871remolg1.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:04 +00:00
Kuninori Morimoto
cb40d1b458
ASoC: max*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/8735z2olg5.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:03 +00:00
Kuninori Morimoto
4060064e8b
ASoC: es*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/874kjiolga.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:02 +00:00
Kuninori Morimoto
1c6d1c4f68
ASoC: da*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/875z3yolgf.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:01 +00:00
Kuninori Morimoto
fa056c0736
ASoC: tas*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/877doeolgk.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:38:00 +00:00
Kuninori Morimoto
42c9b5bec1
ASoC: nau*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/878s8uolgo.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:37:59 +00:00
Kuninori Morimoto
bc03b3910e
ASoC: rt*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87a6taolgs.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:37:59 +00:00
Kuninori Morimoto
a9aef184f7
ASoC: tlv*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87bldqolgw.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:37:58 +00:00
Kuninori Morimoto
0769575294
ASoC: wm*: sync parameter naming (rate/sample_bits)
...
This patch syncs naming rule.
- xxx_rates;
+ xxx_rate;
- xxx_samplebits;
+ xxx_sample_bits;
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com >
Link: https://lore.kernel.org/r/87czy6olh0.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-21 12:37:57 +00:00
Arnd Bergmann
dc98f1d655
ASoC: remove zte zx drivers
...
The zte zx platform is getting removed, so this driver is no
longer needed.
Cc: Jun Nie <jun.nie@linaro.org >
Cc: Shawn Guo <shawnguo@kernel.org >
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Link: https://lore.kernel.org/r/20210120162553.21666-3-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-20 21:23:31 +00:00
Arnd Bergmann
61fbeb5dcb
ASoC: remove sirf prima/atlas drivers
...
The CSR SiRF prima2/atlas platforms are getting removed, so this driver
is no longer needed.
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Acked-by: Barry Song <baohua@kernel.org >
Link: https://lore.kernel.org/r/20210120162553.21666-2-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-20 21:23:21 +00:00
Tony Lindgren
0dedbde506
ASoC: cpcap: Implement set_tdm_slot for voice call support
...
ASoC: cpcap: Implement set_tdm_slot for voice call support
For using cpcap for voice calls, we need to route audio directly from
the modem to cpcap for TDM (Time Division Multiplexing). The voice call
is direct data between the modem and cpcap with no CPU involvment. In
this mode, the cpcap related audio mixer controls work for the speaker
selection and volume though.
To do this, we need to implement standard snd_soc_dai_set_tdm_slot()
for cpcap. Then the modem codec driver can use snd_soc_dai_set_sysclk(),
snd_soc_dai_set_fmt(), and snd_soc_dai_set_tdm_slot() to configure a
voice call.
Let's add cpcap_voice_set_tdm_slot() for this, and cpcap_voice_call()
helper to configure the additional registers needed for voice call.
Let's also clear CPCAP_REG_VAUDIOC on init in case we have the bit for
CPCAP_BIT_VAUDIO_MODE0 set on init.
Signed-off-by: Tony Lindgren <tony@atomide.com >
Signed-off-by: Pavel Machek <pavel@ucw.cz >
Link: https://lore.kernel.org/r/20210112174704.GA13496@duo.ucw.cz
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-19 14:09:24 +00:00
Yu-Hsuan Hsu
7f1f7ae102
ASoC: cros_ec_codec: Reset I2S RX when probing
...
It is not guaranteed that I2S RX is disabled when the kernel booting.
For example, if the kernel crashes while it is enabled, it will keep
enabled until the next time EC reboots. Reset I2S RX when probing to
fix this issue.
Signed-off-by: Yu-Hsuan Hsu <yuhsuan@chromium.org >
Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com >
Link: https://lore.kernel.org/r/20210115075301.47995-2-yuhsuan@chromium.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-19 14:09:23 +00:00
James Schulman
a8939f2e13
ASoC: wm_adsp: Fix control name parsing for multi-fw
...
When switching between firmware types, the wrong control
can be selected when requesting control in kernel API.
Use the currently selected DSP firwmare type to select
the proper mixer control.
Signed-off-by: James Schulman <james.schulman@cirrus.com >
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20210115201105.14075-1-james.schulman@cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-18 14:02:47 +00:00
Pierre-Louis Bossart
7ef8c9edc8
ASoC: codecs: soundwire: increase resume timeout
...
The resume operation relies on multiple transactions to synchronize
the regmap state, make sure the timeout is one order of magnitude
larger than an individual transaction, so that timeouts of failed
transactions are detected first.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com >
Link: https://lore.kernel.org/r/20210115061651.9740-2-yung-chuan.liao@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-15 14:15:29 +00:00
Dan Carpenter
856fe64da8
ASoC: cs42l56: fix up error handling in probe
...
There are two issues with this code. The first error path forgot to set
the error code and instead returns success. The second error path
doesn't clean up.
Fixes: 272b5edd3b ("ASoC: Add support for CS42L56 CODEC")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Link: https://lore.kernel.org/r/X9NE/9nK9/TuxuL+@mwanda
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-13 11:36:13 +00:00
Hans de Goede
f2973a1de9
ASoC: es8316: Fix possible NULL pointer deref in es8316_disable_jack_detect()
...
sound/soc/soc-core.c: soc_remove_component() unconditionally calls
snd_soc_component_set_jack(component, NULL, NULL); on any components
being removed.
This means that on machines where the machine-driver does not provide
a jack through snd_soc_component_set_jack() es8316_disable_jack_detect()
will still get called and at this time es8316->jack will be NULL and
the es8316->jack->status check in es8316_disable_jack_detect() will
lead to a NULL pointer deref.
Fix this by checking for es8316->jack bein NULL at the start of
es8316_disable_jack_detect() and turn the function into a no-op in
that case.
Cc: russianneuromancer <russianneuromancer@ya.ru >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Link: https://lore.kernel.org/r/20210112101725.44200-1-hdegoede@redhat.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-12 14:12:02 +00:00
Xu Wang
554a1b0095
ASoC: adau17x1: Remove redundant null check before clk_disable_unprepare
...
Because clk_disable_unprepare() already checked NULL clock parameter,
so the additional check is unnecessary, just remove it.
Signed-off-by: Xu Wang <vulab@iscas.ac.cn >
Link: https://lore.kernel.org/r/20210108084456.6603-1-vulab@iscas.ac.cn
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-12 14:12:00 +00:00
Mark Brown
1675cdd3d7
Merge series "ASoC: rt5645: Enable internal mic and headset on ECS EF20" from Chris Chiu <chiu@endlessos.org>:
...
These patches are trying to fix the jack detection and internal
microphone problems on ECS EF20 series laptops which are empowered
by Intel Atom x5-Z8350 CPU (CherryTrail) with Realtek rt5645 audio
codec.
---
v2 -> v3:
Restore the accidentally removed terminator of the
dmi_platform_data[].
v1 -> v2:
Invoke callback() of the DMI quirk if it exists, because
the dmi_first_match() doesn't.
---
Chris Chiu (4):
ASoC: rt5645: Introduce mapping for ACPI-defined GPIO
ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series
ASoC: rt5645: add inv_hp_det flag
ASoC: rt5645: Enable internal microphone and JD on ECS EF20
include/sound/rt5645.h | 2 ++
sound/soc/codecs/rt5645.c | 45 +++++++++++++++++++++++++++++++++++++++
2 files changed, 47 insertions(+)
--
2.20.1
2021-01-11 16:22:26 +00:00
Richard Fitzgerald
fe9989fb25
ASoC: wm_adsp: Fix uninitialized variable warnings
...
wm_adsp_read_data_word() used if (ret) to check for an error from
wm_adsp_read_raw_data_block(). While this is perfectly valid,
wm_adsp_read_raw_data_block() itself uses if (ret < 0) and three
calls to wm_adsp_read_data_word() also use if (ret < 0).
This creates an error check chain like this:
1st) if (ret < 0) return ret;
2nd) if (ret) return ret;
3rd) if (ret < 0) ...
This can confuse the compiler into thinking that there are possible
returns > 0 from the middle if() that are not handled by the final
if(). If this was true it would lead to using uninitialized variables
later in the outer function.
Fix this by changing the test in wm_adsp_read_data_word() to be
if (ret < 0).
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20210111133825.8758-1-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:53 +00:00
Shuming Fan
5a15cd7fce
ASoC: rt5682: enable fast discharge for headset unplugging
...
To avoid the pop noise, this patch enables the feature of fast discharge.
Signed-off-by: Shuming Fan <shumingf@realtek.com >
Link: https://lore.kernel.org/r/20210111092544.9064-1-shumingf@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:51 +00:00
Shuming Fan
867f8d18df
ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test
...
This patch will be the workaround to fix getting the wrong device ID on the rare chance.
It seems like something unstable when the system resumes. e.g. the bus clock
This patch tries to read the device ID to check several times.
After the test, the driver will get the correct device ID the second time.
Signed-off-by: Shuming Fan <shumingf@realtek.com >
Link: https://lore.kernel.org/r/20210111092740.9128-1-shumingf@realtek.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:51 +00:00
Chris Chiu
3ac2bfd52b
ASoC: rt5645: Enable internal microphone and JD on ECS EF20
...
On ECS EF20 series laptops, the internal mic is on DMIC2/IN2P.
And they need the inv_hp_det to make jack detection to work as
exoected.
Signed-off-by: Chris Chiu <chiu@endlessos.org >
Link: https://lore.kernel.org/r/20210111054141.4668-5-chiu@endlessos.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:10 +00:00
Chris Chiu
28c988492c
ASoC: rt5645: add inv_hp_det flag
...
The ECS EF20EA laptop use gpio for jack detection instead of rt5645
rt5645 JD. However, the GPIO polarity is inverse for hp-detect based
on the _DSD property of the RTK2 device.
Name (_DSD, Package () {
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () {"hp-detect-gpio", Package() {^RTK2, 0, 0, 1 }},
}
})
This flag will invert the hp-detect gpio polarity.
Signed-off-by: Chris Chiu <chiu@endlessos.org >
Link: https://lore.kernel.org/r/20210111054141.4668-4-chiu@endlessos.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:09 +00:00
Chris Chiu
a4dae468cf
ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series
...
Add the hp-detect gpio for ECS EF20 series laptops based on the
_CRS defined in DSDT table.
Method (_CRS, 0, NotSerialized)
{
Name (SBUF, ResourceTemplate ()
{
I2cSerialBusV2 (0x001A, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C2",
0x00, ResourceConsumer, , Exclusive,
)
GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x0000,
"\\_SB.GPO3", 0x00, ResourceConsumer, ,
)
{ // Pin list
0x004F
}
GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
"\\_SB.GPO3", 0x00, ResourceConsumer, ,
)
{ // Pin list
0x004F
}
})
Return (SBUF) /* \_SB_.PCI0.I2C2.RTK2._CRS.SBUF */
}
Signed-off-by: Chris Chiu <chiu@endlessos.org >
Link: https://lore.kernel.org/r/20210111054141.4668-3-chiu@endlessos.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:08 +00:00
Chris Chiu
21f603482a
ASoC: rt5645: Introduce mapping for ACPI-defined GPIO
...
On at least one laptop (ECS EF20EA) the 'hp-detect' GPIO is defined in
the DSDT table by the ACPI GpioIo resources in _CRS. The GPIO related
information should be mapped to the rt5645 driver to enable the jack
detection also on non-DT platforms.
Signed-off-by: Chris Chiu <chiu@endlessos.org >
Link: https://lore.kernel.org/r/20210111054141.4668-2-chiu@endlessos.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-01-11 14:03:07 +00:00