- 02 6月, 2018 1 次提交
-
-
由 Guenter Roeck 提交于
Commit dc31e741 ("ASoC: topology: ABI - Add the types for BE DAI") introduced sound topology files version 5. Initially, this change made the topology code incompatible with v4 topology files. Backwards compatibility with v4 configuration files was subsequently added with commit 288b8da7 ("ASoC: topology: Support topology file of ABI v4"). Unfortunately, backwards compatibility was never fully implemented. First, the manifest size in (Skylake) v4 configuration files is set to 0, which causes manifest_new_ver() to bail out with error messages similar to the following. snd_soc_skl 0000:00:1f.3: ASoC: invalid manifest size snd_soc_skl 0000:00:1f.3: tplg component load failed-22 snd_soc_skl 0000:00:1f.3: Failed to init topology! snd_soc_skl 0000:00:1f.3: ASoC: failed to probe component -22 skl_n88l25_m98357a skl_n88l25_m98357a: ASoC: failed to instantiate card -22 skl_n88l25_m98357a: probe of skl_n88l25_m98357a failed with error -22 After this problem is fixed, the following error message is seen instead. snd_soc_skl 0000:00:1f.3: ASoC: old version of manifest snd_soc_skl 0000:00:1f.3: Invalid descriptor token 1093938482 snd_soc_skl 0000:00:1f.3: ASoC: failed to load widget media0_in cpr 0 snd_soc_skl 0000:00:1f.3: tPlg component load failed-22 This message is seen because backwards compatibility for loading widgets was never implemented. The lack of audio support when running the upstream kernel on recent Chromebooks has been reported in various forums, and can be traced back to this problem. Attempts to fix the problem, usually by providing v5 configuration files, were only partially successful. Let's implement backward compatibility properly to solve the problem for good. Signed-off-by: NGuenter Roeck <groeck@chromium.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 01 6月, 2018 6 次提交
-
-
由 Steven Eckhoff 提交于
Currently there is no support for Tempo Semiconductor's TSCS454 CODEC. Add support for it. Signed-off-by: NSteven Eckhoff <steven.eckhoff.opensource@gmail.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Mac Chiang 提交于
On APL, commit fd0f2375 ("ASoC: Intel: bxt: Move codec sysclk config to codec_init function") fixed an issue related to jack detection. The MCLK for DA7219 does not change in this platform, but is currently being configured everytime as part of the platform_clock event handler for DAPM. The upshot of this is that we have unnecessary calls to this function, and it also means that if a stream hasn't yet been started, DA7219 driver does not have the correct MCLK rates programmed and so the HP detection feature does not operate as expected. The same fix is needed on KBL. This patch rectifies this issue by moving the sysclk call to codec_init function so it's only called once at initialisation. Signed-off-by: NMac Chiang <mac.chiang@intel.com> Acked-by: NPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Daniel Mack 提交于
The simple-card driver currently accepts a clock node in the cpu dai sub-node and only uses it as an alternative to the 'system-clock-frequency' property to get the current frequency. This patch adds another use of the passed clock node. If mclk-fs is specified, the clocks in cpu and codec dai sub-nodes will be set to the calculated rate (stream rate * mclk_fs) in hw_params. This allows platforms to pass tuneable clocks as phandle that will automatically be set to the right rates. Signed-off-by: NDaniel Mack <daniel@zonque.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Xie Yisheng 提交于
match_string() returns the index of an array for a matching string, which can be used instead of open coded variant. Reviewed-by: NAndy Shevchenko <andy.shevchenko@gmail.com> Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Mark Brown <broonie@kernel.org> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.com> Cc: alsa-devel@alsa-project.org Signed-off-by: NYisheng Xie <xieyisheng1@huawei.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Xie Yisheng 提交于
match_string() returns the index of an array for a matching string, which can be used instead of open coded variant. Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Mark Brown <broonie@kernel.org> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.com> Cc: alsa-devel@alsa-project.org Signed-off-by: NYisheng Xie <xieyisheng1@huawei.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Xie Yisheng 提交于
match_string() returns the index of an array for a matching string, which can be used instead of open coded variant. Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Mark Brown <broonie@kernel.org> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.com> Cc: alsa-devel@alsa-project.org Signed-off-by: NYisheng Xie <xieyisheng1@huawei.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 31 5月, 2018 6 次提交
-
-
由 Hans de Goede 提交于
Many X86 devices using a BYT SoC + RT5651 codec are cheap devices with generic DMI strings, causing snd_soc_set_dmi_name() to fail to set a long_name, making it impossible for userspace to have a correct UCM profile which knowns which input is connected to the internal mic, which input is connected to the hsmic (for correct jack-based switching) and which inputs are unused. Our quirks already specify which inputs the internal and headset mic are connected to. This commit sets a long_name based on the quirks so that userspace can have UCM profiles doing the right thing based on the long_name. Note that if we ever encounter the need for a special UCM profile for some device we can add a quirk to set a specific long_name for the device, Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Kai Chieh Chuang 提交于
Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Kai Chieh Chuang 提交于
add path for hosltess lpbk from ADDA Capture to ADDA Playback add path for hostless phone call between ADDA DAI and PCM DAI Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Kai Chieh Chuang 提交于
Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Arnd Bergmann 提交于
The new mt6797-afe driver uses some functions in a common file, which works for a built-in driver but fails for a loadable module: ERROR: "mtk_afe_pcm_free" [sound/soc/mediatek/mt6797/snd-soc-mt6797-afe.ko] undefined! ERROR: "mtk_afe_add_sub_dai_control" [sound/soc/mediatek/mt6797/snd-soc-mt6797-afe.ko] undefined! ERROR: "mtk_afe_pcm_new" [sound/soc/mediatek/mt6797/snd-soc-mt6797-afe.ko] undefined! ERROR: "mtk_afe_combine_sub_dai" [sound/soc/mediatek/mt6797/snd-soc-mt6797-afe.ko] undefined! ERROR: "mtk_afe_pcm_ops" [sound/soc/mediatek/mt6797/snd-soc-mt6797-afe.ko] undefined! This exports the five symbols above for modules. Fixes: b3c702f5 ("ASoC: mt6797: combine DAI to register component") Signed-off-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Arnd Bergmann 提交于
When CONFIG_GPIOLIB is disabled, this codec fails to build because gpio/consumer.h is not included implicitly. sound/soc/codecs/pcm1789.c: In function 'pcm1789_common_init': sound/soc/codecs/pcm1789.c:247:19: error: implicit declaration of function 'devm_gpiod_get_optional'; did you mean 'devm_gpio_request_one'? [-Werror=implicit-function-declaration] pcm1789->reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH); ^~~~~~~~~~~~~~~~~~~~~~~ Fixes: 4ae340d1 ("ASoC: codecs: Add support for PCM1789") Signed-off-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 30 5月, 2018 1 次提交
-
-
由 Jon Hunter 提交于
When the call to hw_params for a component fails, the error code is held by the variable '__ret' but the error message displays the value held by the variable 'ret'. Fix the return code shown when hw_params fails for a component. Fixes: b8135864 ("ASoC: snd_soc_component_driver has snd_pcm_ops") Signed-off-by: NJon Hunter <jonathanh@nvidia.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 29 5月, 2018 10 次提交
-
-
由 Cyrille Pitchen 提交于
This patch adds support for the Atmel I2S controller embedded into sama5d2x SoCs. Signed-off-by: NCyrille Pitchen <cyrille.pitchen@atmel.com> Signed-off-by: NCodrin Ciubotariu <codrin.ciubotariu@microchip.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds TX and RX TDM mixers for 40 TDM ports. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
All the mixer controls are pretty much same from all the afe ports. Make these as proper macros for 2 reasons. 1> To avoid any typos in adding new mixer controls for each port. 2> Easy to edit from single place, easy to add new ports This also prepares the routing driver to accomdate 40 tdm dais. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds support to 40 TDM ports supported in AFE. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
Use common q6afe_dai_prepare() for MI2S dais, this will remove some code duplication. Also make the if statement to switch to make the code look neater. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds support to tdm ports in AFE. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Kai Chieh Chuang 提交于
We should set BE symmetric constraint on FE substream. in case one BE is used by two FE1/FE2, the first BE runtime will use FE1's substream->runtime. hence the FE1's will be constrained by BE symmetry property. Though, second FE2 call dpcm_apply_symmetry, the be_substream->runtime == FE1's substream->runtime. The FE2's substream->runtime will not be constrained by BE's symmetry property. Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Kai Chieh Chuang 提交于
In case, one BE is used by two FE1/FE2 FE1--->BE--> | FE2----] when FE1/FE2 call dpcm_be_dai_hw_free() together the BE users will be 2 (> 1), hence cannot be hw_free the be state will leave at, ex. SND_SOC_DPCM_STATE_STOP later FE1/FE2 call dpcm_be_dai_shutdown(), will be skip due to wrong state. leaving the BE not being hw_free and shutdown. The BE dai will be hw_free later when calling dpcm_be_dai_shutdown() if still in invalid state. Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Agrawal, Akshu 提交于
channel 1: SYSMEM<->ACP channel 2: ACP<->I2S Instead of waiting on period interrupt of ch 2 and then starting dma on ch1, we make ch1 dma as circular. This removes dependency of period granularity on hw pointer. Signed-off-by: NAkshu Agrawal <akshu.agrawal@amd.com> Reviewed-by: NDaniel Kurtz <djkurtz@chromium.org> Tested-by: NDaniel Kurtz <djkurtz@chromium.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Hans de Goede 提交于
Add a quirk for the ARCHOS 80 Cesium 8" windows tablet, this device mostly works with the default settings, except that it has only one speaker. So add a quirk with the default settings + the mono-speaker flag. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 26 5月, 2018 4 次提交
-
-
由 KaiChieh Chuang 提交于
Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 KaiChieh Chuang 提交于
Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 KaiChieh Chuang 提交于
In MediaTek SoC chip we have multiple DAI, such as I2S, ADDA, PCM, etc. Organize each DAI in to one sub dai, with its dai driver, controls, widgets, routes. add mtk_afe_combine_sub_dai() to combine dai driver from each DAI. add mtk_afe_add_sub_dai_control() to register the control, widget, routes to component. Signed-off-by: NKaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Arnd Bergmann 提交于
The newly introduced driver causes a harmless Kconfig warning when compile-testing random configurations: WARNING: unmet direct dependencies detected for SND_SDMA_SOC Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && DMA_OMAP [=n] Selected by [y]: - SND_OMAP_SOC [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && (ARCH_OMAP [=y] && DMA_OMAP [=n] || ARM [=y] && COMPILE_TEST [=y]) By simply allow build testing without DMA_OMAP, we can shut up that warning. Fixes: dde637f2 ("ASoC: omap: Introduce the generic_dmaengine_pcm based sdma-pcm") Signed-off-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 23 5月, 2018 2 次提交
-
-
由 Hans de Goede 提交于
The nau8824 codec can detect whether a headset or plain headphones is inserted (as well as button presses on the headset) as such the jack_type passed to snd_soc_card_jack_new() should include SND_JACK_MICROPHONE. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Lin Huang 提交于
some monitors care about the parity bit in the sub-frame of I2S, but the cdn-dp always set this bit to "1", so these monitors do not have sound output if use i2s, use spdif can fix this issue. Signed-off-by: NChris Zhong <zyw@rock-chips.com> Signed-off-by: NLin Huang <hl@rock-chips.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 22 5月, 2018 4 次提交
-
-
由 Daniel Mack 提交于
FOr platforms that use the simple-card driver, the codec cannot be selected through 'select' magic in Kconfig. So turn this into a real config option. Signed-off-by: NDaniel Mack <daniel@zonque.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Daniel Mack 提交于
This is needed when the codec is instanciated from from a device tree. Signed-off-by: NDaniel Mack <daniel@zonque.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Daniel Mack 提交于
There's no need to read the register again prior to writing it, we did that in the beginning of the function. Signed-off-by: NDaniel Mack <daniel@zonque.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Daniel Mack 提交于
The pxa-ssp driver currently assumes that .set_fmt() is called before .set_clkdiv(), .set_pll() etc. Commit a8bd0ee5 ("ASoC: raumfeld: Use static DAI format setup") broke support for Raumfeld hardware (and possible other PXA based ones) because it effectively changed the order of these calls. Also, as the call to .set_fmt() is now done at probe time, the port clock is not yet enabled. To fix this, strip all hardware register access code from the .set_fmt() callback and memorize the desired value, so we can use it from the .hw_params() callback. Also make the .set_fmt() callback less destructive by reading all registers that it writes to in the beginning and only masking out the bits that it possibly fiddles with. Signed-off-by: NDaniel Mack <daniel@zonque.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 21 5月, 2018 6 次提交
-
-
由 Srinivas Kandagatla 提交于
This patch adds support to DB820c machine driver. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: NBanajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds support to q6asm dai driver which configures Q6ASM streams to pass pcm data. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-and-tested-by: NRohit kumar <rohitkr@codeaurora.org> Reviewed-by: NBanajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds support to q6afe backend dais driver. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-and-tested-by: NRohit kumar <rohitkr@codeaurora.org> Reviewed-by: NBanajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch add support to MI2S mixers required to select path between ASM stream and AFE ports. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-and-tested-by: NRohit kumar <rohitkr@codeaurora.org> Reviewed-by: NBanajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds support to SLIMBus related mixers to control mux between ASM stream and AFE port. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-and-tested-by: NRohit kumar <rohitkr@codeaurora.org> Reviewed-by: NBanajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Srinivas Kandagatla 提交于
This patch adds support to q6 routing driver which configures route between ASM and AFE module using ADM apis. This driver uses dapm widgets to setup the matrix between AFE ports and ASM streams. Signed-off-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-and-tested-by: NRohit kumar <rohitkr@codeaurora.org> Reviewed-by: NBanajit Goswami <bgoswami@codeaurora.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-