- 16 Mar, 2020 9 commits
-
-
Vinod Koul authored
We have added support for bunch of new decoders and parameters for decoders. To help users find the support bump the version up to 0,2,0. Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-10-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Qualcomm DSPs also supports the ALAC and APE decoders, so add support for these and convert the snd_codec_params to qdsp format. Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-9-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Qualcomm DSPs expect ALAC and APE configs to be send for decoders, so add the API to program the respective config to the DSP. Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-8-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Add ALAC (Apple Lossless Audio Codec) and APE (Monkey's Lossless Audio Codec) defines and parameters required to configure these. Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-7-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Qualcomm DSPs also supports the wma decoder, so add support for wma decoder and convert the snd_codec_params to qdsp format. Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-6-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Qualcomm DSPs expect wma v9 and wma v10 configs to be set for wma decoders, so add the API to program the respective wma config to the DSP Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-5-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Codec profile is required to be passed for WMA codecs so that we know the codec profile present and tell DSP accordingly, so update this API to pass the codec profile as argument Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-4-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Some WMA decoders like WMAv10 etc need some additional encoder option parameters, so add these as WMA decoder params. Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-3-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vinod Koul authored
Some codec profiles were missing for WMA, like WMA9/10 lossless and wma10 pro, so add these profiles Signed-off-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20200316055221.1944464-2-vkoul@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
- 13 Mar, 2020 26 commits
-
-
Mark Brown authored
Merge branch 'for-5.6' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-5.7
-
Yong Zhi authored
Maxim MAX98360A audio amplifier is functionally identical to MAX98357A, add ACPI ID "MAX98360A" for driver reuse. Signed-off-by: Yong Zhi <yong.zhi@intel.com> Link: https://lore.kernel.org/r/1584114926-29287-1-git-send-email-yong.zhi@intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Mark Brown authored
Merge series "ASoC: SOF: multi-cpu dais, IPC and Intel improvements for 5.7" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>: Corrections for compatibility with the multi-cpu dai check for min-channels, IPC simplifications, and removal of unnecessary boot-related code for Intel platforms. Amery Song (2): ASoC: SOF: Intel: hda: remove unnecessary ROM IPC filter function ASoC: SOF: Intel: remove unnecessary waitq before loading firmware Bard Liao (2): ASoC: SOF: Intel: hda-dai: add stream capability ASoC: SOF: topology: connect dai widget to all cpu-dais Karol Trzcinski (2): ASoC: SOF: Make sof_ipc_ext_data enum more rigid ASoC: SOF: Remove SOF_IPC_EXT_DMA_BUFFER include/sound/sof/info.h | 22 +------- sound/soc/sof/intel/cnl.c | 5 -- sound/soc/sof/intel/hda-dai.c | 96 ++++++++++++++++++++++++++++++++ sound/soc/sof/intel/hda-ipc.c | 20 +------ sound/soc/sof/intel/hda-loader.c | 3 - sound/soc/sof/intel/hda.c | 3 - sound/soc/sof/intel/hda.h | 1 - sound/soc/sof/loader.c | 6 -- sound/soc/sof/sof-priv.h | 5 -- sound/soc/sof/topology.c | 8 ++- 10 files changed, 108 insertions(+), 61 deletions(-) base-commit: 101247a3 -- 2.20.1
-
Mark Brown authored
Merge series "ASoC: Intel: machine driver updates for 5.7" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>: Fix HDaudio/HDMI Kconfig dependencies, cleanup code, and add support for 2 new configs (DA7219+Maxim 98360A and RT5692+RT1015) Note that the last patch is the first case where we added the Reviewed-by tags automagically from the list of GitHub approvers. Feedback/comments welcome on the format, and thanks to Ranjani for the nice script! Changes since v1: Change base to broonie/for-5.7 Rebase and fix for_each_codec_dais() macro in Patch 9. Add new patch to remove GFP_ATOMIC Guennadi Liakhovetski (3): ASoC: codecs: hdac_hdmi: (cosmetic) remove redundant variable initialisations ASoC: Intel: skylake: (cosmetic) remove redundant variable initialisations ASoC: Intel: (cosmetic) simplify structure member access Kai Vehmanen (4): ASoC: Intel: boards: drop reverse deps for SND_HDA_CODEC_HDMI ASoC: Intel: sof_pcm512x: drop reverse deps for SND_HDA_CODEC_HDMI ASoC: Intel: sof_pcm512x: make HDMI optional for all platforms ASoC: SOF: Intel: hda: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC Pierre-Louis Bossart (1): ASoC: Intel: don't use GFP_ATOMIC for machine driver contexts Yong Zhi (2): ASoC: Intel: sof_da7219_max98373: Add support for max98360a speaker amp ASoC: Intel: sof_rt5682: Add rt1015 speaker amp support sound/soc/codecs/hdac_hdmi.c | 6 +- sound/soc/intel/boards/Kconfig | 20 ++-- sound/soc/intel/boards/bdw-rt5650.c | 2 +- sound/soc/intel/boards/bdw-rt5677.c | 2 +- sound/soc/intel/boards/broadwell.c | 2 +- sound/soc/intel/boards/bxt_da7219_max98357a.c | 2 +- sound/soc/intel/boards/bxt_rt298.c | 2 +- sound/soc/intel/boards/bytcht_da7213.c | 2 +- sound/soc/intel/boards/cht_bsw_max98090_ti.c | 2 +- sound/soc/intel/boards/cht_bsw_nau8824.c | 2 +- sound/soc/intel/boards/cht_bsw_rt5645.c | 2 +- sound/soc/intel/boards/cml_rt1011_rt5682.c | 4 +- sound/soc/intel/boards/glk_rt5682_max98357a.c | 2 +- sound/soc/intel/boards/haswell.c | 2 +- sound/soc/intel/boards/kbl_rt5663_max98927.c | 2 +- .../intel/boards/kbl_rt5663_rt5514_max98927.c | 2 +- sound/soc/intel/boards/skl_hda_dsp_generic.c | 2 +- .../soc/intel/boards/skl_nau88l25_max98357a.c | 2 +- sound/soc/intel/boards/skl_nau88l25_ssm4567.c | 2 +- sound/soc/intel/boards/sof_da7219_max98373.c | 78 +++++++++++-- sound/soc/intel/boards/sof_pcm512x.c | 38 ++++-- sound/soc/intel/boards/sof_rt5682.c | 110 +++++++++++++++++- .../intel/common/soc-acpi-intel-jsl-match.c | 34 +++++- sound/soc/intel/skylake/skl.c | 4 +- sound/soc/sof/intel/Kconfig | 11 -- sound/soc/sof/intel/hda.c | 3 +- 26 files changed, 269 insertions(+), 71 deletions(-) base-commit: 101247a3 -- 2.20.1
-
Mark Brown authored
Merge series "ASoC: brcm: add dsl and pon chip audio driver" from Kevin Li <kevin-ke.li@broadcom.com>: Changes in v2: * Make the comment a C++ one for license header * Remove all empty functions * Change all variable to use kernel coding style * Comment chip TX RX block independently generate I2S bus signals Kevin Li (2): ASoC: brcm: Add DSL/PON SoC audio driver ASoC: brcm: DSL/PON SoC device tree bindings of audio driver .../bindings/sound/brcm,bcm63xx-audio.txt | 29 ++ sound/soc/bcm/Kconfig | 9 + sound/soc/bcm/Makefile | 4 + sound/soc/bcm/bcm63xx-i2s-whistler.c | 317 ++++++++++++ sound/soc/bcm/bcm63xx-i2s.h | 90 ++++ sound/soc/bcm/bcm63xx-pcm-whistler.c | 485 ++++++++++++++++++ 6 files changed, 934 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/brcm,bcm63xx-audio.txt create mode 100644 sound/soc/bcm/bcm63xx-i2s-whistler.c create mode 100644 sound/soc/bcm/bcm63xx-i2s.h create mode 100644 sound/soc/bcm/bcm63xx-pcm-whistler.c -- 2.25.1
-
Oder Chiou authored
The setting is sync with I2C/I2S mode. Signed-off-by: Oder Chiou <oder_chiou@realtek.com> Link: https://lore.kernel.org/r/20200313023850.28875-1-oder_chiou@realtek.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Kevin Li authored
Signed-off-by: Kevin Li <kevin-ke.li@broadcom.com> Link: https://lore.kernel.org/r/20200312223242.2843-1-kevin-ke.li@broadcom.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Kevin Li authored
This patch adds Broadcom DSL/PON SoC audio driver with Whistler I2S block. The SoC supported by this patch are BCM63158B0,BCM63178 and BCM47622/6755 Signed-off-by: Kevin Li <kevin-ke.li@broadcom.com> Link: https://lore.kernel.org/r/20200312223242.2843-2-kevin-ke.li@broadcom.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Pierre-Louis Bossart authored
We've removed GFP_ATOMIC in all machine drivers and somehow this keeps coming back due to copy-paste. Move to GFP_KERNEL. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-11-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Yong Zhi authored
This patch adds jsl_rt5682_rt1015 which supports the RT5682 headset codec and RT1015 speaker amplifier combination on JasperLake platform. Signed-off-by: Yong Zhi <yong.zhi@intel.com> Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-10-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Yong Zhi authored
Add Maxim MAX98360A plug-and-play Class-D amplifier support on SSP1, new card ID is sofda7219max98360a, name sof-da7219max98360a. Signed-off-by: Yong Zhi <yong.zhi@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-9-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Guennadi Liakhovetski authored
Fix a clumsy structure member dereference in all machine drivers. Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-8-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Guennadi Liakhovetski authored
Variables, used as loop iterators, don't need to be initialised. Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-7-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Guennadi Liakhovetski authored
Remove several redundant variable initialisations. Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-6-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Kai Vehmanen authored
To help user-space with HDMI codec driver transition, both a kernel module parameter and a kernel option were initially provided to configure default behaviour of SOF on Intel hardware with commit 139c7feb ("ASoC: SOF: Intel: add support for snd-hda-codec-hdmi"). As hdac-hdmi is already now lagging in features compared to snd-hda-codec-hdmi, move ahead with the transition and remove the build option to select between the two, and instead default to snd-hda-codec-hdmi if it is enabled in kernel build. The old behaviour of using hdac-hdmi driver can still be forced via the kernel module parameter. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-5-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Kai Vehmanen authored
Make HDMI optional for APL and later platforms. If no HDMI codec is found on the HDA bus, the graphics side driver is missing or correct codec driver is not part of kernel build, codec_mask reflects this and HDMI is disabled. The DSP topology will still have the links for HDMI, so connect these to dummy codec to avoid failures in topology loading. This change also fixes a kernel oops that was triggered if sof_pcm512x was used with SOF configured to use hdac-hdmi (can be done via "use_common_hdmi=0" or by selecting CONFIG_SND_SOC_SOF_HDA_COMMON_HDMI_CODEC=n). This is not a supported configuration. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-4-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Kai Vehmanen authored
Having a reverse dependency to a config that has its own additional dependencies, is generally not recommended. And this applies to select statements for SND_HDA_CODEC_HDMI, e.g. the case where SND_HDA and SND_SOC_SOF_HDA are built as modules, but the machine driver is built-in, leading to compile errors (reported as i386-randconfig-e003-20200206). Give up on trying to define different dependencies based on SOF/SST selection, and simply add a "depends on" for SND_HDA_CODEC_HDMI. This fixes the issue with randconfigs. Only downside is that SND_HDA_CODEC_HDMI may be built unnecessarily in some cases, but this seems like the lesser evil. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-3-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Kai Vehmanen authored
Having a reverse dependency to a config that has its own additional dependencies, is generally not recommended. And this applies to select statements for SND_HDA_CODEC_HDMI, e.g. the case where SND_HDA and SND_SOC_SOF_HDA are built as modules, but the machine driver is built-in, leading to compile errors (reported as i386-randconfig-e003-20200206). Give up on trying to define different dependencies based on SOF/SST selection, and simply add a "depends on" for SND_HDA_CODEC_HDMI. This fixes the issue with randconfigs. Only downside is that SND_HDA_CODEC_HDMI may be built unnecessarily in some cases, but this seems like the lesser evil. Fixes: aa2b4a59 ('ASoC: Intel: boards: fix incorrect HDMI Kconfig dependency') Reported-by: kbuild test robot <lkp@intel.com> Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312194859.4051-2-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Bard Liao authored
Extend code from single cpu-dai to multi-dai Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-7-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Amery Song authored
The HDA_DSP_IPC_PURGE_FW IPC from ROM is already handled in cl_dsp_init(), and it will never be received in the IRQ thread, so the wait condition on this IPC will never be satisfied. The wait before loading firmware is redundant and can be removed safely. Signed-off-by: Amery Song <chao.song@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Keyon Jie <yang.jie@linux.intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Reviewed-by: Pierre Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-6-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Amery Song authored
The HDA_DSP_IPC_PURGE_FW IPC from ROM is already handled in cl_dsp_init(), and as IPC IRQ is disabled at this stage, this IPC will be never received in the IRQ thread. The function hda_dsp_ipc_is_sof for filtering the ROM IPC can be removed safely. Signed-off-by: Amery Song <chao.song@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Keyon <yang.jie@intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-5-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Karol Trzcinski authored
This enum code, and what's more important, related structures is unused in whole source code, so it shouldn't be kept. Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-4-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Karol Trzcinski authored
It's a part of ABI interface, so enum value shouldn't change for example after removing some old enum code. Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-3-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Bard Liao authored
snd_soc_dai_stream_valid() will check if the stream is valid by testing stream->channels_min. So we do need the information in dai driver. The stream name is not added since we want to sure playback_widget/capture_widget will be created by topology. Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Pierre Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-2-pierre-louis.bossart@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Oder Chiou authored
The max volume of the DAC1 Playback Volume is 0dB. Signed-off-by: Oder Chiou <oder_chiou@realtek.com> Link: https://lore.kernel.org/r/20200313023850.28875-2-oder_chiou@realtek.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Takashi Iwai authored
snprintf() is a hard-to-use function, it's especially difficult to use it for concatenating substrings in a buffer with a limited size. Since snprintf() returns the would-be-output size, not the actual size, the subsequent use of snprintf() may point to the incorrect position. Use scnprintf() instead for fixing such potential errors. Signed-off-by: Takashi Iwai <tiwai@suse.de> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20200313130334.9028-1-tiwai@suse.deSigned-off-by: Mark Brown <broonie@kernel.org>
-
- 12 Mar, 2020 5 commits
-
-
Amadeusz Sławiński authored
Function soc_tplg_dbytes_create(), calls soc_tplg_init_kcontrol() to perform additional driver specific initialization. While soc_tplg_init_kcontrol() ensures that component is valid before invoking ops->control_load, there is no such check at the end of soc_tplg_dbytes_create() where list_add() is used. Also in quite a few places, there is reference of tplg->comp->dapm or tplg->comp->card, without any checks for tplg->comp. In consequence of the above this may lead to referencing NULL pointer. This allows for removal of now unnecessary checks. Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Link: https://lore.kernel.org/r/20200312122239.14489-1-amadeuszx.slawinski@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Mark Brown authored
Merge series "ASoC: SOF: preparatory patches" from Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>: 2 preparatory patches for the SOF virtualisation work. No functional changes, only some code refactoring and exporting of helper functions. v2: rebase, no changes otherwise. Thanks Guennadi Guennadi Liakhovetski (2): ASoC: (cosmetic) simplify dpcm_prune_paths() ASoC: export DPCM runtime update functions include/sound/soc-dpcm.h | 4 +-- sound/soc/soc-dapm.c | 8 +++--- sound/soc/soc-pcm.c | 68 +++++++++++++++++++++++++----------------------- 3 files changed, 42 insertions(+), 38 deletions(-) -- 1.9.3
-
Rob Herring authored
Extra dtc warnings (roughly what W=1 enables) are now enabled by default when building the binding examples. These were fixed treewide in 5.6-rc5, but the newly added google,cros-ec-codec schema adds some new warnings: Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dts:17.28-21.11: Warning (unit_address_vs_reg): /example-0/reserved_mem: node has a reg or ranges property, but no unit name Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dts:22.19-32.11: Warning (unit_address_vs_reg): /example-0/cros-ec@0: node has a unit name, but no reg property Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dts:26.37-31.15: Warning (unit_address_vs_reg): /example-0/cros-ec@0/ec-codec: node has a reg or ranges property, but no unit name Fixing the above, then results in: Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dts:26.13-23: Warning (reg_format): /example-0/cros-ec@0:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1) Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dts:27.37-32.15: Warning (unit_address_vs_reg): /example-0/cros-ec@0/ec-codec: node has a reg or ranges property, but no unit name Fixes: eadd54c7 ("dt-bindings: Convert the binding file google, cros-ec-codec.txt to yaml format.") Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Cc: alsa-devel@alsa-project.org Cc: Benson Leung <bleung@chromium.org> Cc: Mark Brown <broonie@kernel.org> Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Guenter Roeck <groeck@chromium.org> Cc: Enric Balletbo i Serra <enric.balletbo@collabora.com> Cc: Cheng-Yi Chiang <cychiang@chromium.org> Link: https://lore.kernel.org/r/20200311205841.2710-1-robh@kernel.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Guennadi Liakhovetski authored
This makes DPCM runtime update functions available for external calling. As an example, virtualised ASoC component drivers may need to call these when managing shared DAPM routes that are used by more than one driver (i.e. when host driver and guest drivers have a DAPM path from guest PCM to host DAI where some parts are owned by host driver and others by guest driver). Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Link: https://lore.kernel.org/r/20200312095214.15126-3-guennadi.liakhovetski@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Guennadi Liakhovetski authored
Currently dpcm_prune_paths() has up to 4 nested condition and loop levels, which forces the code to use flags for flow control. Extracting widget status verification code from dpcm_prune_paths() into a separate function simplifies the code. Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com> Link: https://lore.kernel.org/r/20200312095214.15126-2-guennadi.liakhovetski@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-