summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-01-13ASoC: Intel: avs: Use asoc_substream_to_rtd() to obtain rtdCezary Rojewski
Utilize the helper function instead of casting from ->private_data or snd_pcm_substream_chip() directly. Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Link: https://lore.kernel.org/r/20230113191410.1454566-1-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-13ASoC: Intel: avs: Use min_t instead of min with castAmadeusz Sławiński
Checkpatch script recommends using min_t instead of min with the cast. Fixes: 69b23b3937a1 ("ASoC: Intel: avs: Event tracing") Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Reviewed-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://lore.kernel.org/r/20230113190310.1451693-4-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-13ASoC: Intel: avs: Correctly access topology fieldsAmadeusz Sławiński
Fixes following warning: sound/soc/intel/avs/topology.c:1636:20: sparse: sparse: restricted __le32 degrades to integer Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Reviewed-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://lore.kernel.org/r/20230113190310.1451693-3-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-13ASoC: Intel: avs: Implement PCI shutdownAmadeusz Sławiński
On shutdown reference to i915 driver needs to be released to not spam logs with unnecessary warnings. While at it do some additional cleanup to make sure DSP is powered down and interrupts from device are disabled. Fixes: 1affc44ea5dd ("ASoC: Intel: avs: PCI driver implementation") Reported-by: Kornel Dulęba <korneld@google.com> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Reviewed-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://lore.kernel.org/r/20230113190310.1451693-2-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12ASoC: PXA: make SND_PXA2XX_SOC_AC97 user-selectableArnd Bergmann
When building a PXA kernel without legacy board file support, the AC97 code is not built, so none of the AC97 drivers can be used. Add a Kconfig prompt to let users turn it on, and have it enabled by default. Cc: Robert Jarzmik <robert.jarzmik@free.fr> 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: Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20230105134622.254560-15-arnd@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12ASoC: Intel: sof_es8336: Drop reference count of ACPI device after useAndy Shevchenko
Theoretically the device might gone if its reference count drops to 0. This might be the case when we try to find the first physical node of the ACPI device. We need to keep reference to it until we get a result of the above mentioned call. Refactor the code to drop the reference count at the correct place. While at it, move to acpi_dev_put() as symmetrical call to the acpi_dev_get_first_match_dev(). Fixes: a164137ce91a ("ASoC: Intel: add machine driver for SOF+ES8336") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230112112852.67714-6-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after useAndy Shevchenko
Theoretically the device might gone if its reference count drops to 0. This might be the case when we try to find the first physical node of the ACPI device. We need to keep reference to it until we get a result of the above mentioned call. Refactor the code to drop the reference count at the correct place. While at it, move to acpi_dev_put() as symmetrical call to the acpi_dev_get_first_match_dev(). Fixes: 9a87fc1e0619 ("ASoC: Intel: bytcr_wm5102: Add machine driver for BYT/WM5102") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230112112852.67714-5-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after useAndy Shevchenko
Theoretically the device might gone if its reference count drops to 0. This might be the case when we try to find the first physical node of the ACPI device. We need to keep reference to it until we get a result of the above mentioned call. Refactor the code to drop the reference count at the correct place. While at it, move to acpi_dev_put() as symmetrical call to the acpi_dev_get_first_match_dev(). Fixes: a232b96dcece ("ASoC: Intel: bytcr_rt5640: use HID translation util") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230112112852.67714-4-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after useAndy Shevchenko
Theoretically the device might gone if its reference count drops to 0. This might be the case when we try to find the first physical node of the ACPI device. We need to keep reference to it until we get a result of the above mentioned call. Refactor the code to drop the reference count at the correct place. While at it, move to acpi_dev_put() as symmetrical call to the acpi_dev_get_first_match_dev(). Fixes: 02c0a3b3047f ("ASoC: Intel: bytcr_rt5651: add MCLK, quirks and cleanups") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230112112852.67714-3-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after useAndy Shevchenko
Theoretically the device might gone if its reference count drops to 0. This might be the case when we try to find the first physical node of the ACPI device. We need to keep reference to it until we get a result of the above mentioned call. Refactor the code to drop the reference count at the correct place. While at it, move to acpi_dev_put() as symmetrical call to the acpi_dev_get_first_match_dev(). Fixes: 3c22a73fb873 ("ASoC: Intel: bytcht_es8316: fix HID handling") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230112112852.67714-2-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-12Add tdm support in acp machine driverMark Brown
Merge series from Venkata Prasad Potturu <venkataprasad.potturu@amd.com>: This patch set is to add new cpu dai, refactor dai format implementation and clock enable/disable and add tdm support in acp machine driver.
2023-01-12ASoC: amd: acp-es8336: Drop reference count of ACPI device after useAndy Shevchenko
Theoretically the device might gone if its reference count drops to 0. This might be the case when we try to find the first physical node of the ACPI device. We need to keep reference to it until we get a result of the above mentioned call. Refactor the code to drop the reference count at the correct place. While at it, move to acpi_dev_put() as symmetrical call to the acpi_dev_get_first_match_dev(). Fixes: 02527c3f2300 ("ASoC: amd: add Machine driver for Jadeite platform") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20230112112356.67643-1-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: amd: acp: Enable i2s tdm support for skyrim platformsVenkata Prasad Potturu
Enable i2s tdm support for skyrim platform using dmi quirks. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20230109132104.1259479-6-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: amd: acp: Add i2s tdm support in machine driverVenkata Prasad Potturu
Add i2s tdm support for amd platforms. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20230109132104.1259479-5-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: amd: acp: Refactor i2s clocks programming sequenceVenkata Prasad Potturu
Refactor i2s clock values based on hw_params and use srate and bclk_ratio variables in clock enable API instead hard-code values. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20230109132104.1259479-4-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: amd: acp: Refactor dai format implementationVenkata Prasad Potturu
Refactor dai format implementation in dai_link specific snd_soc_ops. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20230109132104.1259479-3-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: amd: acp: Add new cpu dai's in machine driverVenkata Prasad Potturu
when using same cpu dai for 2 different dai links below error is reported. error: can't find BE for DAI ACPHS_VIRTUAL1.OUT To avoid this error add new cpu dai. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20230109132104.1259479-2-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: tlv320aic3x: Add optional clock and port propertiesJai Luthra
Describe optional properties for clocks and ports that were missing in the original txt binding, to fix warnings like: aic33@18: 'assigned-clock-parents', 'assigned-clock-rates', 'assigned-clocks' do not match any of the regexes: 'pinctrl-[0-9]+' arch/arm/boot/dts/omap2420-n810.dtb tlv320aic3106@1b: 'port' does not match any of the regexes: 'pinctrl-[0-9]+' arch/arm/boot/dts/am335x-sl50.dtb codec@18: 'clocks' does not match any of the regexes: 'pinctrl-[0-9]+' arch/arm/boot/dts/imx6dl-gw5903.dtb arch/arm/boot/dts/imx6q-gw5903.dtb Some uses of "port" still lead to warnings because they pass clocks in the endpoint, but that is discouraged: https://lore.kernel.org/all/20210205152644.GA3083322@robh.at.kernel.org/ Signed-off-by: Jai Luthra <j-luthra@ti.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20221230132644.6398-1-j-luthra@ti.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-11ASoC: amd: yc: Add DMI support for new acer/emdoor platformsSyed Saba Kareem
Adding DMI entries to support new acer/emdoor platforms. Suggested-by: shanshengwang <shansheng.wang@amd.com> Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20230111102130.2276391-1-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-10Add support of MediaTek mt8188 to SOFMark Brown
Merge series from Tinghan Shen <tinghan.shen@mediatek.com>: Add support of MediaTek mt8188 SoC DSP to SOF. The sof driver patches in this series are taken from thesofproject/linux/tree/topic/sof-dev-rebase.
2023-01-10ASoC: fsl-asoc-card: Log error code when we fail to registerMark Brown
The chances are that any error we see here will be EPROBE_DEFER but let's actually tell the user so they know. Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230106-asoc-fsl-err-log-v1-1-49d845c99434@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-10ASoC: SOF: mediatek: Provide debugfs_add_region_item ops for coreTinghan Shen
Set the generic iomem callback for debugfs_add_region_item to support sof-logger. Signed-off-by: Tinghan Shen <tinghan.shen@mediatek.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Link: https://lore.kernel.org/r/20230110084312.12953-4-tinghan.shen@mediatek.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-10ASoC: SOF: mediatek: Support mt8188 platformTinghan Shen
Add support of SOF on MediaTek MT8188 SoC. MT8188 ADSP integrates with a single core Cadence HiFi-5 DSP. The IPC communication between AP and DSP is based on shared DRAM and mailbox interrupt. The change in the mt8186.h is compatible on both mt8186 and mt8188. The register controls booting the DSP core with the default address or the user specified address. Both mt8186 and mt8188 should boot with the user specified boot in the driver. The usage of the register is the same on both SoC, but the control bit is different on mt8186 and mt8188, which is bit 1 on mt8186 and bit 0 on mt8188. Configure the redundant bit has noside effect on both SoCs. Signed-off-by: Tinghan Shen <tinghan.shen@mediatek.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Link: https://lore.kernel.org/r/20230110084312.12953-3-tinghan.shen@mediatek.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-10dt-bindings: dsp: mediatek: Add mt8188 dsp compatibleTinghan Shen
Add support of the single-core HiFi5 audio DSP on MediaTek MT8188 SoC for pre- and post- audio processing. Signed-off-by: Tinghan Shen <tinghan.shen@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230110084312.12953-2-tinghan.shen@mediatek.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-10ASoC: fsl-asoc-card: Fix naming of AC'97 CODEC widgetsMark Brown
The fsl-asoc-card AC'97 support currently tries to route to Playback and Capture widgets provided by the AC'97 CODEC. This doesn't work since the generic AC'97 driver registers with an "AC97" at the front of the stream and hence widget names, update to reflect reality. It's not clear to me if or how this ever worked. Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230106-asoc-udoo-probe-v1-2-a5d7469d4f67@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-10ASoC: fsl_ssi: Rename AC'97 streams to avoid collisions with AC'97 CODECMark Brown
The SSI driver calls the AC'97 playback and transmit streams "AC97 Playback" and "AC97 Capture" respectively. This is the same name used by the generic AC'97 CODEC driver in ASoC, creating confusion for the Freescale ASoC card when it attempts to use these widgets in routing. Add a "CPU" in the name like the regular DAIs registered by the driver to disambiguate. Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230106-asoc-udoo-probe-v1-1-a5d7469d4f67@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: nau8822: add nuvoton,spk-btl property to dtschemaEmanuele Ghidoli
Add nuvoton,spk-btl to configure the two loudspeaker outputs as Bridge Tied Load Cc: David Lin <CTLIN0@nuvoton.com> Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230104195350.149300-1-francesco@dolcini.it Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: nau8822: add speaker Bridge Tied OutputMark Brown
Merge series from Francesco Dolcini <francesco@dolcini.it>: Add support for BTL (Bridge Tied Load) configuration to NAU8822 audio codec, since this requires adding a new property to the binding convert it from txt to yaml first.
2023-01-09Add support for XCVR on i.MX93 platformMark Brown
Merge series from Chancel Liu <chancel.liu@nxp.com>: This patchset supports XCVR on i.MX93 platform. changes in v2: - remove unnecessary code which causes kernel test robot reporting error Chancel Liu (3): ASoC: dt-bindings: fsl,xcvr: Add compatible string for i.MX93 platform ASoC: fsl_xcvr: Add support for i.MX93 platform ASoC: fsl_xcvr: Add constraints of period size while using eDMA .../devicetree/bindings/sound/fsl,xcvr.yaml | 1 + sound/soc/fsl/fsl_xcvr.c | 155 ++++++++++++------ sound/soc/fsl/fsl_xcvr.h | 7 + 3 files changed, 115 insertions(+), 48 deletions(-) -- 2.25.1
2023-01-09ASoC: dt-bindings: qcom,lpass-tx-macro: correct clocks on SC7280Krzysztof Kozlowski
On SC7280 ADSP bypassed platform, there are only three clocks for TX macro. This is already reflected in "clock-names" but not in "clocks" property: sc7280-herobrine-zombie-lte.dtb: codec@3220000: clocks: [[219, 8], [219, 7], [220]] is too short Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20221225115907.55250-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: qcom,lpass-wsa-macro: correct clocks on SM8250Krzysztof Kozlowski
SM8250 DTS uses additional "va" clock in WSA macro device node: sm8250-sony-xperia-edo-pdx203.dtb: codec@3240000: clock-names: ['mclk', 'npl', 'macro', 'dcodec', 'va', 'fsgen'] is too long Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20221225115907.55250-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: nau8315: remove dependency on GPIOLIBAjye Huang
commit dcc2c012c7691 ("ASoC: Fix gpiolib dependencies") removed a series of unnecessary dependencies on GPIOLIB when the gpio was optional. A similar simplification seems valid for nau8315, so remove the dependency as well. This will avoid the following warning WARNING: unmet direct dependencies detected for SND_SOC_NAU8315 Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && GPIOLIB [=n] Selected by [y]: - SND_SOC_INTEL_SOF_NAU8825_MACH [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_INTEL_MACH [=y] && (SND_SOC_SOF_HDA_LINK [=y] || SND_SOC_SOF_BAYTRAIL [=n]) && I2C [=y] && ACPI [=y] && SND_HDA_CODEC_HDMI [=y] && SND_SOC_SOF_HDA_AUDIO_CODEC [=y] && (MFD_INTEL_LPSS [=n] || COMPILE_TEST [=y]) Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Ajye Huang <ajye_huang@compal.corp-partner.google.com> Link: https://lore.kernel.org/r/20230108114351.539786-1-ajye_huang@compal.corp-partner.google.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: simple-card: correct DAI subnodes patternKrzysztof Kozlowski
The simple-audio-card,dai-link node does not allow address/size-cells thus children (cpu, codec) should come without unit addresses. For cases with multiple nodes of same type, require a dash before index (e.g. cpu-x) and add trailing $ to the pattern to disallow other characters. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230109083301.76282-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: mediatek: mt8186-rt5682: primary_codec_init() warn: missing error ↵Ajye Huang
code? 'ret' The function primary_codec_init() should return 0 if dmic_sel is null. Here is the warning message reported by 0-DAY CI Kernel Test Service. smatch warnings: primary_codec_init() warn: missing error code? 'ret' ... 2022-11-02 141 if (!priv->dmic_sel) { 2022-11-02 142 dev_info(card->dev, "dmic_sel is null\n"); 2022-11-02 @143 return ret; return -EIVNAL;? return 0;? 2022-11-02 144 } Reported-by: kernel test robot <lkp@intel.com> Reported-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Ajye Huang <ajye_huang@compal.corp-partner.google.com> Link: https://lore.kernel.org/r/20230107175933.12973-1-ajye_huang@compal.corp-partner.google.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: amd: ps: Fix uninitialized ret in create_acp64_platform_devs()Nathan Chancellor
Clang warns: sound/soc/amd/ps/pci-ps.c:218:2: error: variable 'ret' is used uninitialized whenever switch default is taken [-Werror,-Wsometimes-uninitialized] default: ^~~~~~~ sound/soc/amd/ps/pci-ps.c:239:9: note: uninitialized use occurs here return ret; ^~~ sound/soc/amd/ps/pci-ps.c:190:9: note: initialize the variable 'ret' to silence this warning int ret; ^ = 0 1 error generated. ret is used uninitialized if 'goto de_init' is taken. As this is not an error nor should the ACP be deinitialized, just directly return 0 in this case statement, which resolves the warning. Fixes: 1d325cdaf7a2 ("ASoC: amd: ps: refactor platform device creation logic") Link: https://github.com/ClangBuiltLinux/linux/issues/1779 Suggested-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Signed-off-by: Nathan Chancellor <nathan@kernel.org> Reviewed-by: Syed Saba Kareem <syed.sabakareem@amd.com> Link: https://lore.kernel.org/r/20230105-wsometimes-uninitialized-pci-ps-c-v2-1-c50321676325@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: qcom,lpass-cpu: Correct and constrain clocks, interrupts, regKrzysztof Kozlowski
The binding allowed multiple variations and number of reg/interrupts/clocks properties for SC7180 and SC7280. Maybe this was done for different use-cases of LPASS CPU audio node, but DTS is supposed to be a complete picture of the hardware. The upstreamed SC7180 and SC7280 DTSes contain the widest set of these reg/interrupts/clocks, sometimes being even sum of these different variations. Correct and narrow the reg, interrupts and clocks to match existing DTS: sc7280-herobrine-evoker-lte.dtb: audio@3987000: clock-names: 'oneOf' conditional failed, one must be fixed: ['aon_cc_audio_hm_h', 'audio_cc_ext_mclk0', 'core_cc_sysnoc_mport_core', 'core_cc_ext_if0_ibit', 'core_cc_ext_if1_ibit', 'audio_cc_codec_mem', 'audio_cc_codec_mem0', 'audio_cc_codec_mem1', 'audio_cc_codec_mem2', 'aon_cc_va_mem0'] is too long 'core_cc_sysnoc_mport_core' was expected 'audio_cc_codec_mem' was expected 'audio_cc_codec_mem0' was expected 'audio_cc_codec_mem1' was expected 'audio_cc_codec_mem2' was expected 'aon_cc_va_mem0' was expected Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20221227163135.102559-3-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: qcom,lpass-cpu: Fix DAI children patternKrzysztof Kozlowski
DAI children (as subnodes) can come with two-digit unit addresses: sc7280-herobrine-crd.dtb: audio@3987000: Unevaluated properties are not allowed ('dai-link@19', 'dai-link@25' were unexpected) Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20221227163135.102559-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: qcom,lpass-cpu: Document required-oppsKrzysztof Kozlowski
SC7280 LPASS CPU device node comes with required-opps: sc7280-herobrine-crd.dtb: audio@3987000: Unevaluated properties are not allowed ('required-opps' was unexpected) Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20221227163135.102559-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: fsl_xcvr: Add constraints of period size while using eDMAChancel Liu
eDMA on i.MX93 platform requires the period size to be multiple of maxburst. Signed-off-by: Chancel Liu <chancel.liu@nxp.com> Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Link: https://lore.kernel.org/r/20230104023953.2973362-4-chancel.liu@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: fsl_xcvr: Add support for i.MX93 platformChancel Liu
Add compatible string and specific soc data to support XCVR on i.MX93 platform. XCVR IP on i.MX93 is cut to SPDIF only by removing external PHY. Signed-off-by: Chancel Liu <chancel.liu@nxp.com> Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Link: https://lore.kernel.org/r/20230104023953.2973362-3-chancel.liu@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: fsl,xcvr: Add compatible string for i.MX93 platformChancel Liu
Add compatible string "fsl,imx93-xcvr" for i.MX93 platform. Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Chancel Liu <chancel.liu@nxp.com> Link: https://lore.kernel.org/r/20230104023953.2973362-2-chancel.liu@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: nau8822: add speaker Bridge Tied Output configurationEmanuele Ghidoli
Allow configuring the two loudspeaker outputs as a single Bridge Tied Load output getting higher output power. Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Link: https://lore.kernel.org/r/20230104140412.35575-4-francesco@dolcini.it Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: nau8822: convert to the dtschemaEmanuele Ghidoli
Convert nau8822 devicetree binding to dtschema. Change file name to match dtschema naming. Cc: David Lin <CTLIN0@nuvoton.com> Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230104140412.35575-2-francesco@dolcini.it Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: qcom,lpass-tx-macro: correct clocks on SC7280Krzysztof Kozlowski
On SC7280 ADSP bypassed platform, there are only three clocks for TX macro. This is already reflected in "clock-names" but not in "clocks" property: sc7280-herobrine-zombie-lte.dtb: codec@3220000: clocks: [[219, 8], [219, 7], [220]] is too short Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20221225115907.55250-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: dt-bindings: qcom,lpass-wsa-macro: correct clocks on SM8250Krzysztof Kozlowski
SM8250 DTS uses additional "va" clock in WSA macro device node: sm8250-sony-xperia-edo-pdx203.dtb: codec@3240000: clock-names: ['mclk', 'npl', 'macro', 'dcodec', 'va', 'fsgen'] is too long Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20221225115907.55250-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-09ASoC: qcom: Fix building APQ8016 machine driver without SOUNDWIREStephan Gerhold
Older Qualcomm platforms like APQ8016 do not have hardware support for SoundWire, so kernel configurations made specifically for those platforms will usually not have CONFIG_SOUNDWIRE enabled. Unfortunately commit 8d89cf6ff229 ("ASoC: qcom: cleanup and fix dependency of QCOM_COMMON") breaks those kernel configurations, because SOUNDWIRE is now a required dependency for SND_SOC_QCOM_COMMON (and in turn also SND_SOC_APQ8016_SBC). Trying to migrate such a kernel config silently disables SND_SOC_APQ8016_SBC and breaks audio functionality. The soundwire helpers in common.c are only used by two of the Qualcomm audio machine drivers, so building and requiring CONFIG_SOUNDWIRE for all platforms is unnecessary. There is no need to stuff all common code into a single module. Fix the issue by moving the soundwire helpers to a separate SND_SOC_QCOM_SDW module/option that is selected only by the machine drivers that make use of them. This also allows reverting the imply/depends changes from the previous fix because both SM8250 and SC8280XP already depend on SOUNDWIRE, so the soundwire helpers will be only built if SOUNDWIRE is really enabled. Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Fixes: 8d89cf6ff229 ("ASoC: qcom: cleanup and fix dependency of QCOM_COMMON") Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Link: https://lore.kernel.org/r/20221231115506.82991-1-stephan@gerhold.net Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-05ASoC: fsl_micfil: Correct the number of steps on SX controlsChancel Liu
The parameter "max" of SOC_SINGLE_SX_TLV() means the number of steps rather than maximum value. This patch corrects the minimum value to -8 and the number of steps to 15. Signed-off-by: Chancel Liu <chancel.liu@nxp.com> Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Link: https://lore.kernel.org/r/20230104025754.3019235-1-chancel.liu@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-05ASoC: amd: ps: use static functionPierre-Louis Bossart
Sparse warning: error: symbol 'acp63_fill_platform_dev_info' was not declared. Should it be static? Also reduce line lines below 100 characters. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230104145708.25051-1-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-05ASoC: amd: ps: remove unused variableVijendar Mukunda
Remove unused acp63_audio_mode variable. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20230104055435.321327-3-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
2023-01-05ASoC: amd: ps: use acp_lock to protect common registers in pdm driverVijendar Mukunda
Retrieve acp_lock mutex as platform data and use it for protecting ACP common registers access in acp pdm driver. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20230104055435.321327-2-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>