Commit Graph

825800 Commits

Author SHA1 Message Date
Mark Brown
93f38ef6a4
Merge branch 'asoc-5.1' into asoc-5.2 2019-04-26 11:02:03 +01:00
Paul Cercueil
552f2d7edd
ASoC: simple-card: Read pin switches conf from devicetree
When the routing path between a widget (e.g. "Speaker") and the codec
goes through an external amplifier, having a pin switch for this widget
allows the amplifier to be disabled when the widget is not to be used
(e.g. when using headphones).

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-26 10:50:51 +01:00
Nicolin Chen
b46ea8f4d2
ASoC: fsl_sai: Add missing return 0 in remove()
Build warning being reported:
    sound/soc/fsl/fsl_sai.c: In function 'fsl_sai_remove':
    sound/soc/fsl/fsl_sai.c:921:1: warning: no return statement in
    function returning non-void [-Wreturn-type]

So this patch just adds a "return 0" to fix it.

Fixes: 812ad463e0 ("ASoC: fsl_sai: Add support for runtime pm")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-26 10:50:29 +01:00
Paul Cercueil
90194281ee
ASoC: simple-card-utils: add asoc_simple_parse_pin_switches()
This function is a helper that permits to create pin switch controls for
a list of widgets whose names are listed in the PREFIX "pin-switches"
devicetree property.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-26 10:50:02 +01:00
KaiChieh Chuang
780f202f2b
ASoC: mediatek: btcvsd fix irq mask
disable = 1
enable = 0
prevent AP wake up, when not AP BTSCO scenario

Signed-off-by: KaiChieh Chuang <kaichieh.chuang@mediatek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-26 10:48:37 +01:00
Pierre-Louis Bossart
fb45befa7e
ASoC: Intel: bytcr_rt5651: align quirk override handling
As discussed on alsa-devel, a zero value is useful to get rid of all
quirks. Set default to -1 and align types as done in other machine
drivers.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 20:23:21 +01:00
Pierre-Louis Bossart
2fb2a19af1
ASoC: Intel: bytcr_rt5640: align quirk override handling
As discussed on alsa-devel, a zero value is useful to get rid of all
quirks. Set default to -1 and align types as done in other machine
drivers.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 20:23:16 +01:00
Pierre-Louis Bossart
1fb1e93a1d
ASoC: Intel: bytcht_es8316: fix compilation warning
Remove warning below, align with other machine drivers.

bytcht_es8316.c:508:11: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]

   quirk = (int)dmi_id->driver_data;
           ^
Fixes: a8d218f4fe ('ASoC: Intel: bytcht_es8316: Add quirk for the Teclast X98+ II')
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 20:23:03 +01:00
Daniel Baluta
812ad463e0
ASoC: fsl_sai: Add support for runtime pm
Basically the same actions as for system PM, so make use
of pm_runtime_force_suspend/pm_runtime_force_resume.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:51:23 +01:00
Daniel Baluta
ddb351145a
ASoC: fsl_sai: Update is_slave_mode with correct value
is_slave_mode defaults to false because sai structure
that contains it is kzalloc'ed.

Anyhow, if we decide to set the following configuration
SAI slave -> SAI master, is_slave_mode will remain set on true
although SAI being master it should be set to false.

Fix this by updating is_slave_mode for each call of
fsl_sai_set_dai_fmt.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:50:49 +01:00
Paul Cercueil
6b903f9bdd
ASoC: doc: simple-card: Add pin-switches property
The simple-audio-card,pin-switches property can contain the list of
widget names for which pin switches must be created.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:49:17 +01:00
Baolin Wang
d7bff893e0
ASoC: sprd: Add Spreadtrum multi-channel data transfer support
On Spreadtrum platform, the audio subsystem will use the multi-channel
data transfer controller to transfer sound stream between audio subsystem
and other AP/CP subsystem.

It can support 10 DAC channel and 10 ADC channel, and each channel has
512 bytes depth data fifo. Moreover each channel can be used DMA mode
or interrupt mode to transfer data.

Signed-off-by: Baolin Wang <baolin.wang@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:43:49 +01:00
Baolin Wang
c634d3ffc6
dt-bindings: ASoC: Add Spreadtrum multi-channel data transfer support
On Spreadtrum platform, the audio subsystem will use the multi-channel
data transfer controller to transfer sound stream between audio subsystem
and other AP/CP subsystem.

It can support 10 DAC channel and 10 ADC channel, and each channel has
512 bytes depth data fifo. Moreover each channel can be used DMA mode
or interrupt mode to transfer data.

Signed-off-by: Baolin Wang <baolin.wang@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:43:34 +01:00
Xun Zhang
c46ab1510d
ASoC: codecs: rt5682: initialize mutex before using
In rt5682 codec driver, a mutex called "calibrate_mutex" is used
in rt5682_calibrate() before initialization, which causes warning
in lock debug. Move the initialization before the usage of mutex.

Signed-off-by: Xun Zhang <xun2.zhang@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:41:58 +01:00
Fabien Dessenne
0bbf4084e0
ASoC: stm32: i2s: return the get_irq error
During probe, return the "get_irq" error value instead of -ENOENT. This
allows the driver to be deferred probed if needed.

Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:41:33 +01:00
Kuninori Morimoto
66287def43
ASoC: rsnd: fixup 6ch settings to 8ch
rsnd need to use 8ch clock settings for 6ch for TDM.
Otherwise, it can't work correctly.
This patch fixup it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-25 19:41:09 +01:00
Libin Yang
01c8327667
ASoC: codec: hdac_hdmi add device_link to card device
In resume from S3, HDAC HDMI codec driver dapm event callback may be
operated before HDMI codec driver turns on the display audio power
domain because of the contest between display driver and hdmi codec driver.

This patch adds the device_link between soc card device (consumer) and
hdmi codec device (supplier) to make sure the sequence is always correct.

Signed-off-by: Libin Yang <libin.yang@intel.com>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
2019-04-19 17:12:38 +01:00
YueHaibing
4798797017
ASoC: Intel: Haswell: Remove set but not used variable 'stage_type'
Fixes gcc '-Wunused-but-set-variable' warning:

sound/soc/intel/haswell/sst-haswell-ipc.c: In function 'hsw_stream_message':
sound/soc/intel/haswell/sst-haswell-ipc.c:669:29: warning: variable 'stage_type' set but not used [-Wunused-but-set-variable]

It is never used since introduction in
commit ba57f68235 ("ASoC: Intel: create haswell folder and move haswell platform files in")

Signed-off-by: YueHaibing <yuehaibing@huawei.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 17:00:59 +01:00
Libin Yang
ae061d2a85
ASoC: pcm: save fixed-up hw_params of BE
Some drivers mandate setting up hw params after resuming from system sleep.
Since, the hw_params ioctl is not invoked upon resuming, the fixed-up BE
dai hw params should be saved so the driver can use it in its resume
sequence.

Signed-off-by: Libin Yang <libin.yang@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 17:00:28 +01:00
Sylwester Nawrocki
d18360e07f
ASoC: samsung: tobermory: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:59:55 +01:00
Sylwester Nawrocki
686f47bb72
ASoC: samsung: tm2_wm5110: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:59:23 +01:00
Sylwester Nawrocki
3f8b21fd79
ASoC: samsung: speyside: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:58:53 +01:00
Sylwester Nawrocki
dbf0344a4b
ASoC: samsung: spdif: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:58:21 +01:00
Sylwester Nawrocki
ebf4c423dd
ASoC: samsung: snow: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:57:36 +01:00
Sylwester Nawrocki
f9ff38071c
ASoC: samsung: smdk_wm8994*: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:56:50 +01:00
Sylwester Nawrocki
fe20039c8d
ASoC: samsung: smdk_wm8580: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:56:15 +01:00
Sylwester Nawrocki
64301240f8
ASoC: samsung: smdk_spdif: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:55:42 +01:00
Sylwester Nawrocki
8aa0ef201c
ASoC: samsung: smartq_wm8987: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:55:13 +01:00
Sylwester Nawrocki
4d19f2cf5f
ASoC: samsung: s3c24xx_uda134x: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:54:59 +01:00
Sylwester Nawrocki
ac64529df8
ASoC: samsung: s3c24xx_simtec*: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:54:45 +01:00
Sylwester Nawrocki
25bc05fbc4
ASoC: samsung: s3c2412-i2s: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:54:29 +01:00
Sylwester Nawrocki
2dab7021aa
ASoC: samsung: rx1950_uda1380: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:54:15 +01:00
Sylwester Nawrocki
521cc68ea5
ASoC: samsung: s3c24xx-i2s: Convert to SPDX License Identifier
Replace GPL v2.0(+) license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:54:00 +01:00
Sylwester Nawrocki
08ac76d01b
ASoC: samsung: s3c-i2s-v2: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:53:40 +01:00
Sylwester Nawrocki
65511dc748
ASoC: samsung: pcm: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:53:12 +01:00
Sylwester Nawrocki
1896b485d3
ASoC: samsung: odroid: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:52:44 +01:00
Sylwester Nawrocki
7cab920a89
ASoC: samsung: neo1973_wm8753: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:52:30 +01:00
Sylwester Nawrocki
d5943db34a
ASoC: samsung: lowland: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:51:37 +01:00
Sylwester Nawrocki
1643b9fb8c
ASoC: samsung: littlemill: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:51:12 +01:00
Sylwester Nawrocki
9c8df4cd99
ASoC: samsung: jive_wm8750: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:50:53 +01:00
Sylwester Nawrocki
1d3279c4ab
ASoC: samsung: idma: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:50:17 +01:00
Sylwester Nawrocki
7d5b1b8aaa
ASoC: samsung: i2s: Convert to SPDX License Identifier
Replace remaining GPL v2.0 license statements with SPDX license
identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:49:49 +01:00
Sylwester Nawrocki
392d20f60d
ASoC: samsung: h1940_uda1380: Convert to SPDX License Identifier
Replace GPL v2.0+ license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:49:32 +01:00
Sylwester Nawrocki
df504eda6a
ASoC: samsung: dmaengine: Convert to SPDX License Indentifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:48:52 +01:00
Sylwester Nawrocki
41ce2ac041
ASoC: samsung: bells: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:47:58 +01:00
Sylwester Nawrocki
4c61608402
ASoC: samsung: arndale: Convert to SPDX License Identifier
Replace GPL v2.0 license statements with SPDX license identifier.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-19 16:46:51 +01:00
Annaliese McDermond
daae4c5835
ASoC: tlv320aic32x4: Fix spacing
Fix some cosmetic spacing issues reported by Julia Lawall
<julia.lawall@lip6.fr>.

Signed-off-by: Annaliese McDermond <nh6z@nh6z.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-08 14:16:49 +07:00
Jenny TC
2390c9b473
ASoC: Intel: kbl_da7219_max98927: remove headset
kbl_da7219_max98927 supports two configurations - One with da7219 &
max98927/373 and other one with max98927/373 alone. This patch
removes the headset dais from max98927/373 configuration. Since the
snd_soc_dapm_ignore_suspend for DMIC is called from da7219_codec_init,
the code is re-arranged to invoke snd_soc_dapm_ignore_suspend from
kabylake_dmic_init.

Signed-off-by: Jenny TC <jenny.tc@intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-08 14:16:40 +07:00
Ranjani Sridharan
52034add75
ASoC: pcm: update module refcount if module_get_upon_open is set
Setting the module_get_upon_open field for component driver
prevents the module refcount from being incremented during
component probe(). This could lead to the module being
allowed to be unloaded when a pcm stream is open. So,
if this field is set, the module's refcount should be
incremented during pcm open to prevent module removal
when the component is in use. And, the refcount should
be decremented upon pcm close.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-08 14:15:53 +07:00
Ranjani Sridharan
b4ed6b51f3
ASoC: core: conditionally increase module refcount on component open
Recently, for Intel platforms the "ignore_module_refcount" field
was introduced for the component driver. In order to avoid a
deadlock preventing the PCI modules from being removed
even when the card was idle, the refcounts were not incremented
for the device driver module during component probe.

However, this change introduced a nasty side effect:
the device driver module can be unloaded while a pcm stream is open.

This patch proposes to change the field to be renamed as
"module_get_upon_open". When this field is set, the module
refcount should be incremented on pcm open amd decremented
upon pcm close. This will enable modules to be removed
when no PCM playback/capture happens and prevent removal
when the component is actually in use.

Also, align with the skylake component driver with the new name.

Fixes: b450b878('ASoC: core: don't increase component module refcount
                 unconditionally'
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-04-08 14:15:44 +07:00