- 29 Mar, 2024 2 commits
-
-
Mark Brown authored
Merge series from Frank Li <Frank.Li@nxp.com>: Update binding doc to avoid warning.
-
Mark Brown authored
Merge series from Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>: Core for several drivers already sets the driver.owner, so driver does not need to. Simplify the drivers.
-
- 28 Mar, 2024 22 commits
-
-
Aleksandr Mishin authored
In kirkwood_dma_hw_params() mv_mbus_dram_info() returns NULL if CONFIG_PLAT_ORION macro is not defined. Fix this bug by adding NULL check. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: bb6a40fc ("ASoC: kirkwood: Fix reference to PCM buffer address") Signed-off-by:
Aleksandr Mishin <amishin@t-argos.ru> Link: https://msgid.link/r/20240328173337.21406-1-amishin@t-argos.ruSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Frank Li authored
Some sai only connect one direction dma (rx/tx) in SOC. For example: imx8qxp sai5 only connect tx dma channel. So allow only one "rx" or "tx" for dma-names. Remove description under dmas because no user use index to get dma channel. All user use 'dma-names' to get correct dma channel. dma-names already in 'required' list. Reviewed-by:
Rob Herring <robh@kernel.org> Signed-off-by:
Frank Li <Frank.Li@nxp.com> Link: https://msgid.link/r/20240328-asrc_8qxp-v8-3-801cd6bb5be2@nxp.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Frank Li authored
fsl,imx8qxp-spdif and fsl,imx8qm-spdif have 2 interrupts. Other platforms have 1 interrupt. Increase max interrupt number to 2 and add restriction for platforms except i.MX8QXP and i.MX8QM. Reviewed-by:
Rob Herring <robh@kernel.org> Signed-off-by:
Frank Li <Frank.Li@nxp.com> Link: https://msgid.link/r/20240328-asrc_8qxp-v8-2-801cd6bb5be2@nxp.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Frank Li authored
Add power-domains property for asrc and spdif since fsl,imx8qm-asrc/spdif and fsl,imx8qxp-asrc/spdif require 'power-domains'. Set 'power-domains' as required property for compatible string fsl,imx8qm-asrc/spdif and fsl,imx8qxp-asrc/spdif. Acked-by:
Conor Dooley <conor.dooley@microchip.com> Signed-off-by:
Frank Li <Frank.Li@nxp.com> Link: https://msgid.link/r/20240328-asrc_8qxp-v8-1-801cd6bb5be2@nxp.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-18-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-17-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-16-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-15-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-14-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-13-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-12-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-11-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-10-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-9-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-8-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-7-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-6-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-5-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in sdw_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-4-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in spi_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-3-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
Core in spi_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-2-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Krzysztof Kozlowski authored
PCI core in pci_register_driver() already sets the .owner, so driver does not need to. Signed-off-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240327-module-owner-var-v1-1-86d5002ba6dc@linaro.orgSigned-off-by:
Mark Brown <broonie@kernel.org>
-
- 27 Mar, 2024 1 commit
-
-
Ondrej Jirman authored
When CONFIG_SND_JACK_INPUT_DEV is disabled, struct snd_jack doesn't have 'type' field. We can't rely on this field being always present, so store the jack_type in the codec driver itself. Signed-off-by:
Ondrej Jirman <megi@xff.cz> Reported-by:
kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202403261243.kcXCPAYs-lkp@intel.com/ Link: https://msgid.link/r/20240327080542.3649840-1-megi@xff.czSigned-off-by:
Mark Brown <broonie@kernel.org>
-
- 26 Mar, 2024 15 commits
-
-
Mark Brown authored
Merge series from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>: This second part provides SoundWire-related cleanups and extensions required by Realtek RT722 and Cirrus Logic codecs. Also included is a cleanup of the RT715-sdca DAI naming and new tables for ACPI-based board detections.
-
Andy Shevchenko authored
No more users. Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://msgid.link/r/20240326171134.1414462-1-andriy.shevchenko@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Charles Keepax authored
Add support for the optional speaker output on the cs42l43, this uses the new SOF_CODEC_SPKR quirk to conditional include the speaker DAI link. It is worth noting that currently no systems are included that utilise this feature, but the feature is added as several systems are on the horizon. As part of this SOF_SDW_MAX_DAI_NUM must be increased, it is currently 3 but cs42l43 will now have 4 DAI links. This value is increased to 8 to give some head room for future devices. Reviewed-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-35-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Charles Keepax authored
Some codecs have speaker drivers that may or may not be used in a given system. Add a quirk (SOF_CODEC_SPKR) that defines if a system uses the codec speaker, this is kept generic such that any codec with such a speaker DAI can reuse the quirk. For implementation of this, add a quirk field into the sof_sdw_dai_info structure. This field is not used to specify if a system uses a particular quirk, that is still done through the sof_sdw_quirk variable, this field is used to flag a DAI as conditional on a certain quirk. This means the DAI will only be included in the card if sof_sdw_quirk and the DAI quirk field have a matching set bit. Reviewed-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-34-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Charles Keepax authored
Unspecified fields are by default initialised to zero, remove redundant init pointer initialisations. Reviewed-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-33-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Charles Keepax authored
There is no need to pass the snd_soc_acpi_link_adr structure to the init functions, it conveys no specific information about the codec. Remove this parameter from the callbacks Reviewed-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-32-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
To use sequential amp numbers. I,e, AMP1, AMP2, AMP3, AMP4 Reviewed-by:
Chao Song <chao.song@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-31-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
As rt715-sdca dai name has been changed in codec driver, we should change it in machine driver, too. Changing the dai name in codec_info_list[] also help sof_sdw_rtd_init() to run .rtd_init() from the same codec. Reviewed-by:
Chao Song <chao.song@linux.intel.com> Reviewed-by:
Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-30-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
The dai name are the same as rt715 codec. Rename them with rt715-sdca prefix allow machine driver to distinguish rt715 and rt715-sdca from dai name. Reviewed-by:
Chao Song <chao.song@linux.intel.com> Reviewed-by:
Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-29-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
rt_dmic_rtd_init() can be used for rt722 dmic, too. Reviewed-by:
Chao Song <chao.song@linux.intel.com> Reviewed-by:
Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-28-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
Add rt722 into rt_sdca_jack_rtd_init() supported list, and set rtd_init callback directly in codec_info_list[]. No need to use a init callback to set the rtd_init callback. Besides, sof_sdw_rt_sdca_jack_init() doesn't set .rtd_init anymore. Reviewed-by:
Chao Song <chao.song@linux.intel.com> Reviewed-by:
Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-27-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
Some Realtek SDW DMIC codecs use the generic rt_dmic_rtd_init callback now. Remove unused rtd_init callbacks. Reviewed-by:
Chao Song <chao.song@linux.intel.com> Reviewed-by:
Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-26-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Bard Liao authored
The only thing that the rt_xxx_rtd_init() functions do is to set card->components. And we can set card->components with name_prefix as rt712_sdca_dmic_rtd_init() does. And sof_sdw_rtd_init() will always select the first dai with the given dai->name from codec_info_list[]. Unfortunately, we have different codecs with the same dai name. For example, dai name of rt715 and rt715-sdca are both "rt715-aif2". Using a generic rtd_init allow sof_sdw_rtd_init() run the rtd_init() callback from a similar codec dai. Fixes: 8266c731 ("ASoC: Intel: sof_sdw: add common sdw dai link init") Reviewed-by:
Chao Song <chao.song@linux.intel.com> Reviewed-by:
Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Signed-off-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-25-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Charles Keepax authored
Factor out the creation of the SoundWire DAI links into a helper function. No functional change. Reviewed-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-24-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-
Charles Keepax authored
The only part left using the old parsing code is now the generation of the actual DAI links. Move this generation over to being based on the new parsing, which allows the removal of the last of the old parsing code. The new DAI link generation is a simple matter of creating a new DAI link for each sof_sdw_dailink struct, and adding a cpu, a codec, and a mapping for each sof_sdw_endpoint contained in that sof_sdw_dailink. Note that the CPUs can be inferred as the endpoint list is iterated, because the endpoints were added into the list sorted by link. Reviewed-by:
Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://msgid.link/r/20240326160429.13560-23-pierre-louis.bossart@linux.intel.comSigned-off-by:
Mark Brown <broonie@kernel.org>
-