- 09 Jan, 2023 8 commits
-
-
Krzysztof Kozlowski authored
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.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Ajye Huang authored
commit dcc2c012 ("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.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
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.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Ajye Huang authored
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.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Nathan Chancellor authored
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: 1d325cda ("ASoC: amd: ps: refactor platform device creation logic") Link: https://github.com/ClangBuiltLinux/linux/issues/1779Suggested-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.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
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.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
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.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
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.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
- 05 Jan, 2023 9 commits
-
-
Pierre-Louis Bossart authored
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.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vijendar Mukunda authored
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.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vijendar Mukunda authored
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.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vijendar Mukunda authored
Add mutex lock for accessing ACP common registers across different modules. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20230104055435.321327-1-Vijendar.Mukunda@amd.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Andy Shevchenko authored
Instead of calling put_device(&adev->dev) where adev is a pointer to an ACPI device, use specific call, i.e. acpi_dev_put(). Also move it out of the conditional to make it more visible in case some other code will be added which may use that pointer. We need to keep a reference as long as we use the pointer. 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/20230102203037.16120-5-andriy.shevchenko@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Andy Shevchenko authored
Instead of calling put_device(&adev->dev) where adev is a pointer to an ACPI device, use specific call, i.e. acpi_dev_put(). Also move it out of the conditional to make it more visible in case some other code will be added which may use that pointer. We need to keep a reference as long as we use the pointer. 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/20230102203037.16120-4-andriy.shevchenko@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Andy Shevchenko authored
Instead of calling put_device(&adev->dev) where adev is a pointer to an ACPI device, use specific call, i.e. acpi_dev_put(). Also move it out of the conditional to make it more visible in case some other code will be added which may use that pointer. We need to keep a reference as long as we use the pointer. 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/20230102203037.16120-3-andriy.shevchenko@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Andy Shevchenko authored
Instead of calling put_device(&adev->dev) where adev is a pointer to an ACPI device, use specific call, i.e. acpi_dev_put(). Also move it out of the conditional to make it more visible in case some other code will be added which may use that pointer. We need to keep a reference as long as we use the pointer. 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/20230102203037.16120-2-andriy.shevchenko@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Andy Shevchenko authored
Instead of calling put_device(&adev->dev) where adev is a pointer to an ACPI device, use specific call, i.e. acpi_dev_put(). Also move it out of the conditional to make it more visible in case some other code will be added which may use that pointer. We need to keep a reference as long as we use the pointer. 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/20230102203037.16120-1-andriy.shevchenko@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
- 03 Jan, 2023 1 commit
-
-
Brent Lu authored
The variable becomes useless since we moved the snd_soc_jack structure from a static array to sof_hdmi_pcm structure. Signed-off-by: Brent Lu <brent.lu@intel.com> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20230103073704.722027-1-brent.lu@intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
- 29 Dec, 2022 2 commits
-
-
Krzysztof Kozlowski authored
Non-functional cleanup: 1. Drop unneeded quotes form $ref, 2. Example: Use generic node name, use define for GPIO flag, adjust indentation to consistent 4-space style. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20221224154210.43356-2-krzysztof.kozlowski@linaro.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Both DTS (SM8250 and SM8350 based Sony Xperia boards) and Linux driver mention interrupt, so allow it to fix: sm8350-sony-xperia-sagami-pdx215.dtb: cs35l41@41: Unevaluated properties are not allowed ('interrupt-parent', 'interrupts' were unexpected) Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20221224154210.43356-1-krzysztof.kozlowski@linaro.orgSigned-off-by: Mark Brown <broonie@kernel.org>
-
- 27 Dec, 2022 4 commits
-
-
Mark Brown authored
Merge series from Claudiu Beznea <claudiu.beznea@microchip.com>: The following series adds runtime PM and suspend to RAM features for mchp-pdmc driver. Along with it 2 cleanup patches were added: - patch 1/4: use vendor,device.yaml file format for Microchip AT91 ASoC bindings - patch 4/4: use FIELD_PREP() in mchp-spdiftx.c
-
Mark Brown authored
Merge series from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>: This series will extend the IPC ops optionality to cover it up to the existence of the top level ipc pointer itself. There is no functionality change. The reason for the extended optionality is that we have "DSPless" debug/development support coming up (currently it is in SOF's topic/sof-dev stable branch) initially supporting Intel's HDA platforms. As the name suggests, in this mode the DSP is completely ignored by the linux driver stack (no firmware loaded, only using HDA directly). The DSPless mode is aimed to help us to verify our Linux stack on new platforms where the firmware is not yet in the state that we can reliably use it, but the hardware and programming flows can be tested already. There is no plan to make DSPless a production target for SOF Linux stack. While this is preparatory series aimed to unblock the DSPless support, it has been integrated into sof-dev separately and we have lots of new features depending on it (went in between this set and the DSPless support). I still have some minor tasks to complete for the DSPless to make it a bit more versatile, but I don't want to block other, stable features for upstreaming.
-
Mark Brown authored
Merge series from Uwe Kleine-König <u.kleine-koenig@pengutronix.de>: Hello, this patch series removes all platform remove functions that only return zero below sound/soc. There is no reason to have these, as the only caller is platform core code doing: if (drv->remove) { int ret = drv->remove(dev); ... } (in platform_remove()) and so having no remove function is both equivalent and simpler.
-
Mark Brown authored
Merge series from Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>: Some devices like DMIC don't expose native controls or need volume limit due to possible HW damage. Add support for volume controls allowing to change volume level in DSP. Maximum volume level is imposed by the topology file which defines given path.
-
- 25 Dec, 2022 16 commits
-
-
Vijendar Mukunda authored
Move irq handler registration prior to platform device creation logic. This will avoid irq handling missing scenario when platform device raise interrrupts during it's probe sequence. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20221221172855.1618766-4-Vijendar.Mukunda@amd.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vijendar Mukunda authored
Instead of using hard coded index value for platform device index, retrieve the device index based on platform devices created. In PDM config case, ACP PCI driver retrieves dev index from pdm_dev_index variable. This will avoid overhead when multiple endpoint combinations support is added later. platform device index will vary based on audio endpoint configuration. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20221221172855.1618766-3-Vijendar.Mukunda@amd.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vijendar Mukunda authored
Refactor platform device creation implementation. Based on platform dev count and pdev mask create platform devices. Use common API to fill platform dev information. Use pdev count variable in remove callback for unregistering platform devices. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20221221172855.1618766-2-Vijendar.Mukunda@amd.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Vijendar Mukunda authored
Implement API to retrieve acp device config and calculate platform device count and dev mask for platform device node creation. Currently for DMIC configuration, mask and dev count are calculated. Same api will be used to extend support for different ACP device configurations. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20221221172855.1618766-1-Vijendar.Mukunda@amd.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Uwe Kleine-König authored
A remove callback just returning 0 is equivalent to no remove callback at all. So drop the useless function. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20221212174737.3740223-1-u.kleine-koenig@pengutronix.deSigned-off-by: Mark Brown <broonie@kernel.org>
-
Ondrej Jirman authored
Depending on HW design, som boards may expect mono differential output on LOUT. Describe a property that enables it. Signed-off-by: Ondrej Jirman <megi@xff.cz> Signed-off-by: Jarrah Gosbell <kernel@undef.tools> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20221209105621.39237-2-kernel@undef.toolsSigned-off-by: Mark Brown <broonie@kernel.org>
-
Ondrej Jirman authored
LOUT output can produce either single-ended stereo signals, or mono differential signal. Some applications are wired to use LOUT in mono differential mode. Allow to configure it via device property. Signed-off-by: Ondrej Jirman <megi@xff.cz> Signed-off-by: Jarrah Gosbell <kernel@undef.tools> Link: https://lore.kernel.org/r/20221209105621.39237-1-kernel@undef.toolsSigned-off-by: Mark Brown <broonie@kernel.org>
-
Lukasz Majewski authored
The wm8940 provides the chip ID information via I2C. In this patch this information is read and if not matching expected value, the probe function is aborted. This prevents from using (i.e. inserting) other wm89* modules which use the same I2C bus address. Signed-off-by: Lukasz Majewski <lukma@denx.de> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20221216094624.3849278-3-lukma@denx.deSigned-off-by: Mark Brown <broonie@kernel.org>
-
Lukasz Majewski authored
This patch enables support for internal wm8940's PLL and proper divider to set proper value for 256x fs clock. This approach is more flexible and replaces hardcoded clock values and makes the codec work with the simple-card driver. Card drivers calling set_pll() and set_clkdiv() directly are unaffected. For the reference - code in this commit is based on: 51b2bb3f ("ASoC: wm8974: configure pll and mclk divider automatically") Signed-off-by: Lukasz Majewski <lukma@denx.de> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20221216094624.3849278-2-lukma@denx.deSigned-off-by: Mark Brown <broonie@kernel.org>
-
Lukasz Majewski authored
The lack of platform data in the contemporary Linux shall not be the reason to display warnings to the kernel logs. Signed-off-by: Lukasz Majewski <lukma@denx.de> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20221216094624.3849278-1-lukma@denx.deSigned-off-by: Mark Brown <broonie@kernel.org>
-
V sujith kumar Reddy authored
Enable DSP cache for ACP memory Signed-off-by: V sujith kumar Reddy <Vsujithkumar.Reddy@amd.com> Link: https://lore.kernel.org/r/20221213071640.3038853-1-Vsujithkumar.Reddy@amd.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
David Rau authored
This adds the DAI mono mode support and set the frame width to 32 Signed-off-by: Piotr Wojtaszczyk <piotr.wojtaszczyk@timesys.com> Tested-by: David Rau <David.Rau.opensource@dm.renesas.com> Signed-off-by: David Rau <David.Rau.opensource@dm.renesas.com> Link: https://lore.kernel.org/r/20221214044058.6289-1-David.Rau.opensource@dm.renesas.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
YC Hung authored
DSP SRAM is not used for audio shared buffer between host and DSP so TOTAL_SIZE_SHARED_SRAM_FROM_TAIL is zero. Remove the definition and redundant comparison to fix coverity "unsigned compared against 0". Signed-off-by: YC Hung <yc.hung@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angeloigoacchino.delregno@collabora.com> Link: https://lore.kernel.org/r/20221215061046.16934-1-yc.hung@mediatek.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Seppo Ingalsuo authored
The error "Conflict in bytes vs. priv size." is too brief. With the printed sizes it's a lot easier to find the size issue in for binary control if such happens. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com> Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> Link: https://lore.kernel.org/r/20221216115350.28260-1-peter.ujfalusi@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Jai Luthra authored
Convert bindings for TI's TLV320AIC3x audio codecs to dtschema. The following properties are still found in some old dts files, but will be ignored by the driver: - adc-settle-ms - port Signed-off-by: Jai Luthra <j-luthra@ti.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20221221145216.11400-1-j-luthra@ti.comSigned-off-by: Mark Brown <broonie@kernel.org>
-
Peter Ujfalusi authored
The sof_debug value is set by the user, developer intentionally. To save time on figuring out what value has been passed to the kernel by the user, developer, print it out if it is not 0. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com> Link: https://lore.kernel.org/r/20221216115435.28427-1-peter.ujfalusi@linux.intel.comSigned-off-by: Mark Brown <broonie@kernel.org>
-