summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | ASoC: SOF: amd: Add acp-psp mailbox interface for iram-dram fence register ↵Venkata Prasad Potturu2023-12-192-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | modification Add acp-psp mailbox communication interface for iram-dram size modification to notify psp. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://msgid.link/r/20231219112416.3334928-5-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | | ASoC: SOF: Rename amd_bt sof_dai_typeVenkata Prasad Potturu2023-12-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Rename amd_bt sof_dai_type from ACP to ACP_BT. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://msgid.link/r/20231219112416.3334928-4-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | | ASoC: SOF: Add i2s bt dai configuration support for AMD platformsVenkata Prasad Potturu2023-12-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Add support for i2s bt dai configuration from topology. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://msgid.link/r/20231219112416.3334928-3-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | | ASoC: SOF: Refactor sof_i2s_tokens reading to update acpbt daiVenkata Prasad Potturu2023-12-191-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | Refactor sof_i2s_tokens reading to update config->acpbt. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://msgid.link/r/20231219112416.3334928-2-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | | ASoC: SOF: amd: Refactor spinlock_irq(&sdev->ipc_lock) sequence in irq_handlerVenkata Prasad Potturu2023-12-192-3/+4
| |/ |/| | | | | | | | | | | | | | | Refactor spinlock_irq(&sdev->ipc_lock) sequence in irq_handler to avoid race conditions for acquiring hw_semaphore. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://msgid.link/r/20231219112416.3334928-1-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Remove redundant ret variableHimanshu Bhavani2023-12-181-2/+1
| | | | | | | | | | | | | | | | | | Removed Unneeded variable: "ret" Signed-off-by: Himanshu Bhavani <himanshu.bhavani@siliconsignals.io> Link: https://msgid.link/r/20231218143214.939885-1-himanshu.bhavani@siliconsignals.io Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: tas2781: add support for FW version 0x0503Gergo Koteles2023-12-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | Layout of FW version 0x0503 is compatible with 0x0502. Already supported by TI's tas2781-linux-driver tree. https://git.ti.com/cgit/tas2781-linux-drivers/tas2781-linux-driver/ Fixes: 915f5eadebd2 ("ASoC: tas2781: firmware lib") Signed-off-by: Gergo Koteles <soyer@irl.hu> Link: https://msgid.link/r/98d4ee4e01e834af72a1a0bea6736facf43582e0.1702513517.git.soyer@irl.hu Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: dt-bindings: qcom,lpass-rx-macro: Add X1E80100 LPASS WSAKrzysztof Kozlowski2023-12-181-1/+3
| | | | | | | | | | | | | | | | | | Add bindings for Qualcomm X1E80100 SoC Low Power Audio SubSystem (LPASS) WSA macro codec, which looks like compatible with earlier SM8550. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231211123104.72963-4-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: dt-bindings: qcom,lpass-rx-macro: Add X1E80100 LPASS VAKrzysztof Kozlowski2023-12-181-1/+3
| | | | | | | | | | | | | | | | | | Add bindings for Qualcomm X1E80100 SoC Low Power Audio SubSystem (LPASS) VA macro codec, which looks like compatible with earlier SM8550. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231211123104.72963-3-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: dt-bindings: qcom,lpass-rx-macro: Add X1E80100 LPASS TXKrzysztof Kozlowski2023-12-181-1/+3
| | | | | | | | | | | | | | | | | | Add bindings for Qualcomm X1E80100 SoC Low Power Audio SubSystem (LPASS) TX macro codec, which looks like compatible with earlier SM8550. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231211123104.72963-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: dt-bindings: qcom,lpass-rx-macro: Add X1E80100 LPASS RXKrzysztof Kozlowski2023-12-181-1/+3
| | | | | | | | | | | | | | | | | | Add bindings for Qualcomm X1E80100 SoC Low Power Audio SubSystem (LPASS) RX macro codec, which looks like compatible with earlier SM8550. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231211123104.72963-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: qcom: Fix trivial code style issuesKrzysztof Kozlowski2023-12-1820-33/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix few trivial code style issues, pointed out by checkpatch, so they do not get copied to new code (when old code is used as template): WARNING: Prefer "GPL" over "GPL v2" - see commit bf7fbeeae6db ("module: Cure the MODULE_LICENSE "GPL" vs. "GPL v2" bogosity") WARNING: function definition argument 'struct platform_device *' should also have an identifier name ERROR: code indent should use tabs where possible WARNING: please, no spaces at the start of a line WARNING: Missing a blank line after declarations WARNING: unnecessary whitespace before a quoted newline Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231204100048.211800-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: soc-pcm.c: Complete the active count for components without DAIsChancel Liu2023-12-181-0/+8
| | | | | | | | | | | | | | | | | | | | | | Some components like platforms don't have DAIs. If the active count of these components is ignored pinctrl may be wrongly selected between default and sleep state. So need to increment or decrement the active count for components without DAIs to avoid it. Signed-off-by: Chancel Liu <chancel.liu@nxp.com> Link: https://msgid.link/r/20231204111532.3165-1-chancel.liu@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: dt-bindings: qcom,sm8250: Add X1E80100 sound cardKrzysztof Kozlowski2023-12-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Document bindings for the Qualcomm X1E80100 SoC sound card. The bindings are the same as for other newer Qualcomm ADSP sound cards, thus keep them in existing qcom,sm8250.yaml file, even though Linux driver is separate. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Conor Dooley <conor.dooley@microchip.com> Link: https://msgid.link/r/20231204100116.211898-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: qcom: Add x1e80100 sound machine driverKrzysztof Kozlowski2023-12-183-0/+182
|/ | | | | | | | | | Add sound machine driver for the soundcards on Qualcomm X1E80100 SoC, supporting up to four channel audio playback over Soundwire bus. The driver is based on existing sc8280xp.c driver. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231204100116.211898-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add pm ops support for renoir platform.Syed Saba Kareem2023-12-151-0/+37
| | | | | | | | | Add pm ops for renoir platform. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Reviewed-by: Mario Limonciello <mario.limonciello@amd.com> Link: https://msgid.link/r/20231215130300.1247475-1-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: SOF: query FW config to reload libraryMark Brown2023-12-157-2/+19
|\ | | | | | | | | | | | | | | Merge series from Bard Liao <yung-chuan.liao@linux.intel.com>: We should query FW config if context save is supported, and no need to reload FW if hda->booted_from_imr and ipc4_data->fw_context_save are true.
| * ASoC: SOF: Intel: check fw_context_save for library reloadRander Wang2023-12-151-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | If fw_context_save is defined by fw, driver can skip library reload on d3 exit or reload library. Signed-off-by: Rander Wang <rander.wang@intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://msgid.link/r/20231215083102.3064200-4-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: SOF: IPC4: query fw_context_save feature from fwRander Wang2023-12-155-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Driver queries fw_context_save feature when fw is ready and can skip library reload with this feature since library is saved in persistent memory. The default value of fw_context_save is true unless fw reports false. Signed-off-by: Rander Wang <rander.wang@intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://msgid.link/r/20231215083102.3064200-3-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: SOF: IPC4: synchronize fw_config_params with fw definitionsRander Wang2023-12-151-0/+6
| | | | | | | | | | | | | | | | | | | | | | Update fw_config_params in driver. Signed-off-by: Rander Wang <rander.wang@intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://msgid.link/r/20231215083102.3064200-2-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: fsl_mqs: remove duplicated includingWang Jinchao2023-12-151-1/+0
| | | | | | | | | | | | | | | | rm the second \#include <linux/of.h> Signed-off-by: Wang Jinchao <wangjinchao@xfusion.com> Link: https://msgid.link/r/202312151713+0800-wangjinchao@xfusion.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: SOF: amd: remove duplicated includingWang Jinchao2023-12-151-1/+0
|/ | | | | | | | remove the second \#include "../sof-audio.h" Signed-off-by: Wang Jinchao <wangjinchao@xfusion.com> Link: https://msgid.link/r/202312151719+0800-wangjinchao@xfusion.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: dt-bindings: audio-graph-port: Document new DAI link flags ↵Daniel Baluta2023-12-141-0/+6
| | | | | | | | | | | | playback-only/capture-only Document new playback-only and capture-only flags which can be used when dai link can only support just one direction: playback or capture but not both. Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> Link: https://msgid.link/r/20231128081119.106360-3-daniel.baluta@oss.nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: audio-graph-card2: Introduce playback-only/capture-only DAI link flagsDaniel Baluta2023-12-143-0/+28
| | | | | | | | | We need this to support MICFIL PDM found on i.MX8MP where the DAI link supports only capture direction. Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> Link: https://msgid.link/r/20231128081119.106360-2-daniel.baluta@oss.nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: mediatek: mt7986: silence error in case of -EPROBE_DEFERDaniel Golle2023-12-131-1/+1
| | | | | | | | | | | If probe is defered no error should be printed. Use dev_err_probe() to have it muted. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Reviewed-by: Maso Huang <maso.huang@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Link: https://msgid.link/r/b941a404d97c01ef3e30c49925927b9a7dafeb19.1702422544.git.daniel@makrotopia.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: cs42l43: Add missing statics for hp_ilimit functionsCharles Keepax2023-12-121-2/+2
| | | | | | | | Fixes: bbbc18d8c27c ("ASoC: cs42l43: Allow HP amp to cool off after current limit") Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://msgid.link/r/20231212104149.2388753-1-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: cs42l43: Allow HP amp to cool off after current limitCharles Keepax2023-12-113-5/+96
| | | | | | | | | | | Whilst occasional current limiting is fine, constant current limiting should be avoided. Add a back off system that will disable the headphone amp, if a lot of current limiting is seen in a short window of time. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://msgid.link/r/20231211160019.2034442-2-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: codec: wsa884x: make use of new mute_unmute_on_trigger flagNeil Armstrong2023-12-111-6/+1
| | | | | | | | | | | | | | | | This fix is based on commit [1] fixing click and pop sounds during SoundWire port start because PA is left unmuted. making use of new mute_unmute_on_trigger flag and removing unmute at PA setup, removes the Click/Pop issue at SoundWire enable. [1] 805ce81826c8 ("ASoC: codecs: wsa883x: make use of new mute_unmute_on_trigger flag") Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231211-topic-sm8x50-upstream-wsa884x-fix-plop-v1-1-0dc630a19172@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: dt-bindings: qcom,lpass-wsa-macro: Add SM8650 LPASS WSAKrzysztof Kozlowski2023-12-111-8/+13
| | | | | | | | | | | Add bindings for Qualcomm SM8650 Low Power Audio SubSystem (LPASS) WSA macro codec, which looks like compatible with earlier SM8550. Cc: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Link: https://msgid.link/r/20231129113014.38837-4-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: dt-bindings: qcom,lpass-va-macro: Add SM8650 LPASS VAKrzysztof Kozlowski2023-12-111-8/+13
| | | | | | | | | | Add bindings for Qualcomm SM8650 Low Power Audio SubSystem (LPASS) VA macro codec, which looks like compatible with earlier SM8550. Cc: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231129113014.38837-3-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: dt-bindings: qcom,lpass-tx-macro: Add SM8650 LPASS TXKrzysztof Kozlowski2023-12-111-9/+14
| | | | | | | | | | | Add bindings for Qualcomm SM8650 Low Power Audio SubSystem (LPASS) TX macro codec, which looks like compatible with earlier SM8550. Cc: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Link: https://msgid.link/r/20231129113014.38837-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: dt-bindings: qcom,lpass-rx-macro: Add SM8650 LPASS RXKrzysztof Kozlowski2023-12-111-8/+13
| | | | | | | | | | | Add bindings for Qualcomm SM8650 Low Power Audio SubSystem (LPASS) RX macro codec, which looks like compatible with earlier SM8550. Cc: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Link: https://msgid.link/r/20231129113014.38837-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: qcom: audioreach: Add 4 channel supportKrzysztof Kozlowski2023-12-111-2/+12
| | | | | | | | | | Add support four channel streams. Map channel 3 and 4 to left/right surround ("quad(side)" from ffmpeg standard channel list) to match what is in qdsp6/q6dsp-common.c driver. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231130180758.212172-3-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: qcom: audioreach: drop duplicate channel definesKrzysztof Kozlowski2023-12-112-8/+6
| | | | | | | | | q6apm.h header already defines channel mapping values, so drop duplicated devices from audioreach.h. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231130180758.212172-2-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: qcom: audioreach: Commonize setting channel mappingsKrzysztof Kozlowski2023-12-111-19/+16
| | | | | | | | | | Move code assigning channel mapping values to a common helper function. This simplifies three out of four cases, with the last case using incompatible type (uint16_t array instead of uint8_t array). Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20231130180758.212172-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: wm1250-ev1: Fix uninitialized retLinus Walleij2023-12-101-2/+1
| | | | | | | | | | | | The GPIO descriptor conversion patch left an unitialized ret behind by mistake, fix it by getting rid of the variable altogether. Fixes: 10a366f36e2a ("ASoC: wm1250-ev1: Convert to GPIO descriptors") Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202312090953.DiUo3mue-lkp@intel.com/ Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20231209-descriptors-sound-wlf-v1-1-5b885ce43ae1@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* GPIO descriptor cleanup for some Wolfson codecsMark Brown2023-12-0912-306/+211
|\ | | | | | | | | | | | | | | | | | | | | Merge series from Linus Walleij <linus.walleij@linaro.org>: This converts the remaining Wolfson ASoC codecs to use GPIO descriptors. These Wolfson codecs are mostly used with different Samsung S3C (especially Cragganmore 6410) board files, so the in-tree users are fixed up in the process.
| * ASoC: wm8996: Convert to GPIO descriptorsLinus Walleij2023-12-083-39/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This converts the WM8996 codec to use GPIO descriptors, an a similar way to WM5100. The driver is instantiating a GPIO chip named wm8996, and we get rid of the base address for the GPIO chip from the platform data and just use dynamic numbering. Move base and ngpio into the static gpio_chip template. Fix up the only in-tree user which is the Cragganmore 6410 module. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20231208-descriptors-sound-wlf-v1-5-c4dab6f521ec@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: wm5100: Convert to GPIO descriptorsLinus Walleij2023-12-083-76/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This converts the WM5100 codec to use GPIO descriptors, a pretty straight-forward conversion with the following peculiarities: - The driver is instantiating a GPIO chip named wm5100, and the headphone polarity detection GPIO is lifted from there. We add this to the GPIO descriptor table as well, and we can then get rid of also the base address for the GPIO chip from the platform data and just use dynamic numbering. - Fix up the only in-tree user which is the Cragganmore 6410 module. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20231208-descriptors-sound-wlf-v1-4-c4dab6f521ec@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: wm2200: Convert to GPIO descriptorsLinus Walleij2023-12-083-38/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This converts the WM2200 codec to use GPIO descriptors. This is a pretty straight-forward conversion, and it also switches over the single in-tree user in the S3C Cragganmore module for S3C 6410. This coded does not seem to get selected or be selectable through Kconfig, I had to hack another soundcard Kconfig entry to select it for compile tests. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20231208-descriptors-sound-wlf-v1-3-c4dab6f521ec@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: wm1250-ev1: Convert to GPIO descriptorsLinus Walleij2023-12-083-110/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This converts the WM1250-EV1 codec to use GPIO descriptors. It turns out that the platform data was only used to pass some global GPIO numbers from a board file, so we get rid of this and also switch over the single in-tree user in the S3C Cragganmore module for S3C 6410. The driver obtains two GPIO lines named OSR and master and just pull them low, we leave this behaviour as it was. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20231208-descriptors-sound-wlf-v1-2-c4dab6f521ec@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: wm0010: Convert to GPIO descriptorsLinus Walleij2023-12-083-43/+23
| | | | | | | | | | | | | | | | | | | | | | | | This converts the WM0010 codec to use GPIO descriptors. It's a pretty straight-forward conversion also switching over the single in-tree user in the S3C Cragganmore module for S3C 6410. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20231208-descriptors-sound-wlf-v1-1-c4dab6f521ec@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: audio-graph-card2: fix off by one in graph_parse_node_multi_nm()Dan Carpenter2023-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The > comparison should be >= to avoid writing one element beyond the end of the dai_link->ch_maps[] array. The dai_link->ch_maps[] array is allocated in graph_parse_node_multi() and it has "nm_max" elements. Fixes: e2de6808df4a ("ASoC: audio-graph-card2: add CPU:Codec = N:M support") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/1032216f-902f-48f9-aa49-9d5ece8e87f2@moroto.mountain Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: modify config flag read logicVijendar Mukunda2023-12-071-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | Modify acp config flag read logic from ACP v7.0 onwards. Instead of reading from DMI table match entry, read the config flag value from BIOS ACPI table. This will remove updating DMI table when new platform support is added. Use FLAG_AMD_LEGACY_ONLY_DMIC flag as default one. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20231207045505.1519151-1-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: SOF: Intel: hda-codec: Delay the codec device registrationPeter Ujfalusi2023-12-071-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current code flow is: 1. snd_hdac_device_register() 2. set parameters needed by the hdac driver 3. request_codec_module() the hdac driver is probed at this point During boot the codec drivers are not loaded when the hdac device is registered, it is going to be probed later when loading the codec module, which point the parameters are set. On module remove/insert rmmod snd_sof_pci_intel_tgl modprobe snd_sof_pci_intel_tgl The codec module remains loaded and the driver will be probed when the hdac device is created right away, before the parameters for the driver has been configured: 1. snd_hdac_device_register() the hdac driver is probed at this point 2. set parameters needed by the hdac driver 3. request_codec_module() will be a NOP as the module is already loaded Move the snd_hdac_device_register() later, to be done right before requesting the codec module to make sure that the parameters are all set before the device is created: 1. set parameters needed by the hdac driver 2. snd_hdac_device_register() 3. request_codec_module() This way at the hdac driver probe all parameters will be set in all cases. Link: https://github.com/thesofproject/linux/issues/4731 Fixes: a0575b4add21 ("ASoC: hdac_hda: Conditionally register dais for HDMI and Analog") Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20231207095425.19597-1-peter.ujfalusi@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Set bclk as source to set pll for rt5682s codecVenkata Prasad Potturu2023-12-061-0/+16
| | | | | | | | | | | | | | | | | | Some platforms doesn't have reference mclk pin to codec, so set bclk as a clk source for rt5682s codec pll in tdm mode. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20231206110620.1695591-7-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Set bclk as source to set pll for rt5682s codecVenkata Prasad Potturu2023-12-061-0/+16
| | | | | | | | | | | | | | | | | | Some platforms doesn't have reference mclk pin to codec, so set bclk as a clk source for rt5682s codec pll in tdm mode. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20231206110620.1695591-7-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Enable dpcm_capture for MAX98388 codecVenkata Prasad Potturu2023-12-061-0/+1
| | | | | | | | | | | | | | | | | | Enable dpcm_capture for amplifier codec MAX98388 for reference stream capture in smart amplifier case. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20231206110620.1695591-6-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Add i2s bt support for nau8821-max cardVenkata Prasad Potturu2023-12-061-1/+3
| | | | | | | | | | | | | | | | Add i2s bt support for sof-nau8821-max sound card. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20231206110620.1695591-5-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Add new cpu dai and dailink creation for I2S BT instanceVenkata Prasad Potturu2023-12-062-1/+27
| | | | | | | | | | | | | | | | | | Add sof_bt cpu id and create dailink for i2s bt instance in acp common machine driver. Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com> Link: https://lore.kernel.org/r/20231206110620.1695591-4-venkataprasad.potturu@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>