- 04 3月, 2019 1 次提交
-
-
由 Russell King 提交于
When using the S/PDIF DAI, there is no requirement to call snd_soc_dai_set_fmt() as there is no DAI format definition that defines S/PDIF. In any case, S/PDIF does not have separate clocks, this is embedded into the data stream. Consequently, when attempting to use TDA998x in S/PDIF mode, the attempt to configure TDA998x via the hw_params callback fails as the hdmi_codec_daifmt is left initialised to zero. Since the S/PDIF DAI will only be used by S/PDIF, prepare the hdmi_codec_daifmt structure for this format. Signed-off-by: NRussell King <rmk+kernel@armlinux.org.uk> Reviewed-by: NJyri Sarha <jsarha@ti.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 28 2月, 2019 1 次提交
-
-
由 KaiChieh Chuang 提交于
add direct loopback path from rx to tx Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 26 2月, 2019 11 次提交
-
-
由 Olivier Moysan 提交于
Dummy write in capture master mode is used to gate bus clocks. This write is useless in slave mode as the clocks are not managed by slave. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olivier Moysan 提交于
When snd_pcm_stop_xrun() is called in interrupt routine, substream context may have already been released. Add protection on substream context. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olivier Moysan 提交于
Clocks do not need to be released on driver removal, as this is already managed before. Remove useless remove callback. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olivier Moysan 提交于
DMA configuration is not balanced on start/stop. Move DMA configuration to trigger callback. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olivier Moysan 提交于
Move counter handling to trigger start section to manage multiple start/stop events. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olivier Moysan 提交于
I2S supports 16 bits data in 32 channel length. However the expected driver behavior, is to set channel length to 16 bits when data format is 16 bits. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olivier Moysan 提交于
Because of regmap cache, interrupts may not be cleared as expected. Declare IFCR register as write only and make writings to IFCR register unconditional. Signed-off-by: NOlivier Moysan <olivier.moysan@st.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Mark Brown 提交于
Merge branch 'for-5.0' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.1
-
由 Cheng-Yi Chiang 提交于
SND_SOC_CROS_EC_CODEC depends on MFD_CROS_EC. Add that dependency to SND_SOC_SDM845 to fix unmet direct dependencies warning. Fixes: 74c6ecf4 (ASoC: qcom: Kconfig: select dmic for sdm845) Signed-off-by: NCheng-Yi Chiang <cychiang@chromium.org> Reported-by: NRandy Dunlap <rdunlap@infradead.org> Tested-by: NEnric Balletbo i Serra <enric.balletbo@collabora.com> Tested-by: NRandy Dunlap <rdunlap@infradead.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jenny TC 提交于
This patch enables the reuse of kbl_da7219_max98927 machine driver to support max98373. The same machine driver is modified for cases where one amplifier is swapped out with another. Most of the changes are about renaming the codec and codec_dai names, with minor differences due to support for 24 bits in one case and 16 in the other. Signed-off-by: NJenny TC <jenny.tc@intel.com> Acked-by: NPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Jiada Wang 提交于
Currently each SSI unit 's busif mode/adinr/dalign address is registered by: (in busif4 case) RSND_GEN_M_REG(SSI_BUSIF4_MODE, 0x500, 0x80) RSND_GEN_M_REG(SSI_BUSIF4_ADINR,0x504, 0x80) RSND_GEN_M_REG(SSI_BUSIF4_DALIGN, 0x508, 0x80) But according to user manual 41.1.4 Register Configuration ssi9 4/5/6/7 busif mode/adinr/dalign register address ( SSI9-[4/5/6/7]_BUSIF_[MODE/ADINR/DALIGN] ) are out of this rule. This patch registers ssi9 4/5/6/7 mode/adinr/dalign register as single register, and access these registers in case of SSI9 BUSIF 4/5/6/7. Fixes: commit 8c9d7503 ("ASoC: rsnd: ssiu: Support BUSIF other than BUSIF0") Signed-off-by: NJiada Wang <jiada_wang@mentor.com> Signed-off-by: NTimo Wischer <twischer@de.adit-jv.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 22 2月, 2019 6 次提交
-
-
由 Charles Keepax 提交于
As the compressed stream implementation has acquired support for multiple DAI links and compressed streams it has become harder to interpret messages in the kernel log. Add additional macros to include the compressed DAI name in the log messages, allowing different streams to be easily disambiguated. Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Stuart Henderson 提交于
Currently, only a single compressed stream is supported per firmware. Add support for multiple compressed streams on a single firmware, this allows additional features like completely independent trigger words or separate debug capture streams to be implemented. Signed-off-by: NStuart Henderson <stuarth@opensource.cirrus.com> Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Charles Keepax 提交于
Make the code slightly clearer and prepare things for the addition of multiple compressed streams on a single DSP core. Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Charles Keepax 提交于
Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Charles Keepax 提交于
In preparation for more refactoring add a helper function to strip the padding from ADSP data. Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Dan Carpenter 提交于
The irq_get_irq_data() function doesn't return error pointers, it returns NULL. Fixes: 6ba9dd6c ("ASoC: cs35l36: Add support for Cirrus CS35L36 Amplifier") Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Reviewed-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 21 2月, 2019 4 次提交
-
-
由 Sylwester Nawrocki 提交于
This addresses an issue pointed out by compiler warning: sound/soc/samsung/odroid.c: In function ‘odroid_audio_probe’: sound/soc/samsung/odroid.c:298:22: warning: ‘cpu_dai’ may be used uninitialized in this function [-Wmaybe-uninitialized] priv->clk_i2s_bus = of_clk_get_by_name(cpu_dai, "iis"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Takashi Iwai 提交于
Although qcom_snd_parse_of() tries to manage the of-node refcount, there are still a few places that lead to the unblanced refcount in the error code path. Namely, - for_each_child_of_node() needs to unreference the iterator node if aborting the loop in the middle, - cpu, codec and platform node objects have to be unreferenced at each iteration, - platform and codec node objects have to be referred before jumping to the error handling code that unreference them unconditionally. This patch tries to address these by moving the assignment of platform and codec node objects to the beginning of the loop and adding the of_node_put() calls adequately. Fixes: c25e295c ("ASoC: qcom: Add support to parse common audio device nodes") Cc: Patrick Lai <plai@codeaurora.org> Cc: Banajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Takashi Iwai 提交于
The apq8016 driver leaves the of-node refcount at aborting from the loop of for_each_child_of_node() in the error path. Not only the iterator node of for_each_child_of_node(), the children nodes referred from it for codec and cpu have to be properly unreferenced. Fixes: bdb052e8 ("ASoC: qcom: add apq8016 sound card support") Cc: Patrick Lai <plai@codeaurora.org> Cc: Banajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Sylwester Nawrocki 提交于
In odroid_audio_probe() some OF nodes are left without reference count decrease after use. Fix it by ensuring required of_node_calls() are done before exiting probe. Reported-by: NTakashi Iwai <tiwai@suse.de> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 20 2月, 2019 7 次提交
-
-
由 Takashi Iwai 提交于
The function simple_for_each_link() has a few missing places that forgot unrefereing of-nodes after the use. The main do-while loop may abort when loop=0, and this leaves the node object still referenced. A similar leak is found in the error handling of NULL codec that aborts the loop as well. Last but not least, the inner for_each_child_of_node() loop may abort in the middle, and this leaks the refcount of the iterator node. This patch addresses these missing refcount issues. Signed-off-by: NTakashi Iwai <tiwai@suse.de> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Takashi Iwai 提交于
We forgot to unreference the platform node object obtained from of_get_child_by_name(). This leads to the unbalance of node refcount. Fixes: e0ae225b ("ASoC: simple-card: support platform in dts parse") Signed-off-by: NTakashi Iwai <tiwai@suse.de> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Takashi Iwai 提交于
The node obtained from of_find_node_by_path() has to be unreferenced after the use, but we forgot it for the root node. Fixes: f0fba2ad ("ASoC: multi-component - ASoC Multi-Component Support") Cc: Timur Tabi <timur@kernel.org> Cc: Nicolin Chen <nicoleotsuka@gmail.com> Cc: Xiubo Li <Xiubo.Lee@gmail.com> Cc: Fabio Estevam <festevam@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de> Acked-by: NNicolin Chen <nicoleotsuka@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Andrew Ford 提交于
Currently, compressed buffers can only be specified in the XM memory region. There is no reason to have such a restriction with the newer meta-data based way of specifying the buffers, so remove it. Signed-off-by: NAndrew Ford <aford@opensource.cirrus.com> Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Stuart Henderson 提交于
If a compressed stream is restarted after getting an error, the cached error value will still be used on the next pointer request, preventing the stream from starting. Resolve this by ensuring the error status is updated on trigger start. Signed-off-by: NStuart Henderson <stuarth@opensource.cirrus.com> Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Codrin Ciubotariu 提交于
The ADCs are sleeping when the SLEEP bit is set and running when it's cleared, so the bit should be inverted. Tested on pcm1863. Signed-off-by: NCodrin Ciubotariu <codrin.ciubotariu@microchip.com> Acked-by: NAndrew F. Davis <afd@ti.com> Signed-off-by: NMark Brown <broonie@kernel.org> Cc: stable@vger.kernel.org
-
由 Codrin Ciubotariu 提交于
According to DS, the gain is between -12 dB and 40 dB, with a 0.5 dB step. Tested on pcm1863. Signed-off-by: NCodrin Ciubotariu <codrin.ciubotariu@microchip.com> Acked-by: NAndrew F. Davis <afd@ti.com> Signed-off-by: NMark Brown <broonie@kernel.org> Cc: stable@vger.kernel.org
-
- 19 2月, 2019 10 次提交
-
-
由 Mark Brown 提交于
Merge branch 'for-5.0' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.1
-
由 Sylwester Nawrocki 提交于
On some SoCs (e.g. Exynos5433) there are multiple "IIS multi audio interfaces" and the driver will try to register there multiple times same platform device for the secondary FIFO, which of course fails miserably. To fix this we derive the secondary platform device name from the primary device name. The secondary device name will now be <primary_dev_name>-sec instead of fixed "samsung-i2s-sec". The fixed platform_device_id table entry is removed as the secondary device name is now dynamic and device/driver matching is done through driver_override. Reported-by: NMarek Szyprowski <m.szyprowski@samsung.com> Suggested-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Acked-by: NKrzysztof Kozlowski <krzk@kernel.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Sylwester Nawrocki 提交于
This fixes unregistration of the secondary platform device so all resources are properly released. Additionally the removal sequence is corrected so it is in reverse order comparing to probe sequence. The test against NULL priv->pdev_sec is removed as it is not necessary. Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Acked-by: NKrzysztof Kozlowski <krzk@kernel.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Yong Zhi 提交于
Add FE DAI link to support parallel playback on 2 ports simultaneously. Acked-by: NPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: NNaveen Manohar <naveen.m@intel.com> Signed-off-by: NYong Zhi <yong.zhi@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Yong Zhi 提交于
This patch enables support for GeminiLake with the DA7219 codec and MAX98357A amplifier. To avoid duplicating code, the existing machine driver for ApolloLake is reused with only changes in hardware connectivity (SSP2 for DA7219 and SSP1 for MAX98357A). The dailinks are directly modified in this patch. Using a helper would be nicer, but it'll be done in a follow-up step with validation done across multiple machine drivers. Acked-by: NPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: NYong Zhi <yong.zhi@intel.com> Signed-off-by: NNaveen Manohar <naveen.m@intel.com> Signed-off-by: NHarsha Priya <harshapriya.n@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Yong Zhi 提交于
Map the 4 headset buttons to KEY_PAUSE, KEY_VOLUMEUP, KEY_VOLUMEDOWN and KEY_VOICECOMMAND. Acked-by: NPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: NNaveen Manohar <naveen.m@intel.com> Signed-off-by: NYong Zhi <yong.zhi@intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Chen-Yu Tsai 提交于
The A64 datasheet lists the supply rail for the headphone amp's charge pump as "CPVDD". cpvdd-supply is the name of the property for this power rail specified in the device tree bindings. "HPVCC" was the name used in the A33 datasheet for the same function. Rename the supply so it matches the datasheet, bindings, and the subject from the original commit. Fixes: ca0412a0 ("ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supply") Signed-off-by: NChen-Yu Tsai <wens@csie.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Bogdan Togorean 提交于
If platform_data is NULL add reading of optional adi,micbias property from DT. If adi,micbias is not set keep the default value for micbias. Signed-off-by: NBogdan Togorean <bogdan.togorean@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Bogdan Togorean 提交于
Add MICBIAS property to the optional devicetree bindings. Signed-off-by: NBogdan Togorean <bogdan.togorean@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Dan Carpenter 提交于
We should free "w" on the error path. Fixes: 199ed3e8 ("ASoC: dapm: fix use-after-free issue with dailink sname") Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-