summaryrefslogtreecommitdiffstats
path: root/sound/soc/amd
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: amd: acp: fix for i2s mode register field updateSyed Saba Kareem2023-10-311-2/+2
| | | | | | | | | | | | | | | | | | I2S mode register field will be set to 1 when tdm mode is enabled. Update the I2S mode field based on tdm_mode flag check. This will fix below smatch checker warning. sound/soc/amd/acp/acp-i2s.c:59 acp_set_i2s_clk() warn: odd binop '0x0 & 0x2' Fixes: 40f74d5f09d7 ("ASoC: amd: acp: refactor acp i2s clock generation code") Reported-By: Dan Carpenter <dan.carpenter@linaro.org> Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231031135949.1064581-3-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: select SND_SOC_AMD_ACP_LEGACY_COMMON for ACP63Arnd Bergmann2023-10-271-9/+11
| | | | | | | | | | | | | | | | | | | | | Without this dependency, acp63 fails to link: x86_64-linux-ld: sound/soc/amd/acp/acp63.o: in function `acp63_audio_remove': acp63.c:(.text+0x22): undefined reference to `acp_disable_interrupts' x86_64-linux-ld: sound/soc/amd/acp/acp63.o: in function `acp63_i2s_master_clock_generate.isra.0': acp63.c:(.text+0x6f): undefined reference to `smn_read' x86_64-linux-ld: acp63.c:(.text+0x81): undefined reference to `smn_write' x86_64-linux-ld: acp63.c:(.text+0x8e): undefined reference to `smn_read' x86_64-linux-ld: sound/soc/amd/acp/acp63.o: in function `acp63_pcm_resume': acp63.c:(.text+0x230): undefined reference to `restore_acp_i2s_params' x86_64-linux-ld: acp63.c:(.text+0x23d): undefined reference to `restore_acp_pdm_params' x86_64-linux-ld: sound/soc/amd/acp/acp63.o: in function `acp63_audio_probe': acp63.c:(.text+0x474): undefined reference to `acp_enable_interrupts' Fixes: d4c2d5391d7e ("ASoC: amd: acp: add Kconfig options for acp6.3 based platform driver") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20231027152403.386257-3-arnd@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add ACPI dependencyArnd Bergmann2023-10-271-1/+4
| | | | | | | | | | | | | | | | | | | A newly added function requires CONFIG_ACPI to avoid a build error: sound/soc/amd/acp/acp-legacy-common.c: In function 'check_acp_pdm': sound/soc/amd/acp/acp-legacy-common.c:401:19: error: implicit declaration of function 'acpi_find_child_device'; did you mean 'acpi_match_device'? [-Werror=implicit-function-declaration] 401 | pdm_dev = acpi_find_child_device(ACPI_COMPANION(&pci->dev), pdm_addr, 0); | ^~~~~~~~~~~~~~~~~~~~~~ | acpi_match_device The acp drivers really only work when ACPI is enabled already, so just avoid the build failure with hard dependency in everything that enables the acp-legacy-common portion. Fixes: 3a94c8ad0aae ("ASoC: amd: acp: add code for scanning acp pdm controller") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20231027152403.386257-1-arnd@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add machine driver support for acp7.0Syed Saba Kareem2023-10-251-0/+9
| | | | | | | | add machine driver support for ACP7.0 on legacy stack. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-13-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: Add pci legacy driver support for acp7.0 platformSyed Saba Kareem2023-10-255-1/+273
| | | | | | | | | Add pci legacy driver support and create platform driver for acp7.0 platform. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-12-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: change acp power on mask macro valueSyed Saba Kareem2023-10-251-1/+1
| | | | | | | | | change acp power on mask macro value so that same macro can be used for all amd platforms. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-11-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: change acp-deinit function argumentsSyed Saba Kareem2023-10-253-6/+6
| | | | | | | | | | | | | acp-deinit function will not be same for all platforms. To make platform specific changes in acp-deinit function, instead of passing base address pass chip structure which contains acp_rev feild. chip->acp_rev will be used to add platform specific code in acp-deinit(). Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-10-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add machine driver support for pdm use caseSyed Saba Kareem2023-10-252-11/+30
| | | | | | | | add pdm use case machine driver support Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-9-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add condition check for i2s clock generationSyed Saba Kareem2023-10-252-6/+18
| | | | | | | | | for only PDM endpoint i2s master clock is not required. Add a condition check for the same based on chip flag value. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-8-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add platform and flag data to acp data structureSyed Saba Kareem2023-10-254-1/+13
| | | | | | | | | | | add name of the platform and flag data in private data structure. name of the platform will be used to differentiate platforms where as flag will be used to know what kind of endpoint configuration is selected where its legacy(I2S + PDM) or only ACP PDM. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-7-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add code for scanning acp pdm controllerSyed Saba Kareem2023-10-255-1/+86
| | | | | | | | | Add common code for scanning acp pdm controller and create platform device for the same. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-6-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add Kconfig options for acp6.3 based platform driverSyed Saba Kareem2023-10-252-0/+13
| | | | | | | | | | ACP6.3 based platform legacy drivers can be built by selecting necessary kernel config option. This patch enables build support of the same. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-5-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add machine driver support for acp6.3 platformSyed Saba Kareem2023-10-252-0/+16
| | | | | | | | add legacy machine driver support for acp6.3 based platform. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-4-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: add i2s clock generation support for acp6.3 based platformsSyed Saba Kareem2023-10-251-3/+16
| | | | | | | | Add I2S LRCLK & BCLK generation code for ACP6.3 based platforms. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-3-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: refactor acp i2s clock generation codeSyed Saba Kareem2023-10-252-39/+32
| | | | | | | | Refactor acp i2s LRCLK,BCLK generation code and move to commnon file. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-2-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: acp: Add acp6.3 pci legacy driver supportSyed Saba Kareem2023-10-254-0/+326
| | | | | | | | | Add pci legacy driver support and create platform driver for acp6.3 based platforms. Signed-off-by: Syed Saba Kareem <Syed.SabaKareem@amd.com> Link: https://lore.kernel.org/r/20231021145110.478744-1-Syed.SabaKareem@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: Add acpi machine id for acp6.3 version based platformVijendar Mukunda2023-10-232-0/+13
| | | | | | | | | Add acpi machine id for ACP6.3 version based platform and configure driver data to enable SOF sound card support on newer boards. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20231020062822.3913760-1-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: amd: ps: enable wake capability for acp pci driverVijendar Mukunda2023-10-171-0/+1
| | | | | | | | | Enable wake capability for acp pci driver for Pink Sardine platform. Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com> Link: https://lore.kernel.org/r/20231017071939.953343-1-Vijendar.Mukunda@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: Merge fixes for consistent cs42l43 schemaMark Brown2023-10-101-0/+7
|\ | | | | | | | | | | We have adjacent changes for the cs42l43 DT schema, merge the fixes branch up so that there's a single thing for people to base future changes on.
| * ASoC: amd: yc: Fix non-functional mic on Lenovo 82YMSven Frotscher2023-10-021-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Like the Lenovo 82TL, 82V2, 82QF and 82UG, the 82YM (Yoga 7 14ARP8) requires an entry in the quirk list to enable the internal microphone. The latter two received similar fixes in commit 1263cc0f414d ("ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UG"). Fixes: c008323fe361 ("ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ") Cc: stable@vger.kernel.org Signed-off-by: Sven Frotscher <sven.frotscher@gmail.com> Link: https://lore.kernel.org/r/20230927223758.18870-1-sven.frotscher@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: convert not to use asoc_xxx()Kuninori Morimoto2023-09-261-3/+3
| | | | | | | | | | | | | | | | | | ASoC is now unified asoc_xxx() into snd_soc_xxx(). This patch convert asoc_xxx() to snd_soc_xxx(). Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/875y3xihf7.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: convert not to use asoc_xxx()Kuninori Morimoto2023-09-2513-73/+73
| | | | | | | | | | | | | | | | | | ASoC is now unified asoc_xxx() into snd_soc_xxx(). This patch convert asoc_xxx() to snd_soc_xxx(). Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/878r9cs25b.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: ps: Fix -Wformat-truncation warningTakashi Iwai2023-09-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The compile warning with -Wformat-truncation at sdw_amd_scan_controller() is false-positive; the max loop size is AMD_SDW_MAX_MANAGERS (= 2), hence it fits with the given size. For suppressing the warning, replace snprintf() with scnprintf(). As stated in the above, truncation doesn't matter. Signed-off-by: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/r/20230915082207.26200-1-tiwai@suse.de Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Fix -Wmissing-prototypes warningMarian Postevca2023-09-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | Fix prototype missing warning for acp3x_es83xx_init_ops() by including the header acp3x-es83xx.h Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202309111220.g63yHDfH-lkp@intel.com/ Signed-off-by: Marian Postevca <posteuca@mutex.one> Link: https://lore.kernel.org/r/20230913210916.2523-1-posteuca@mutex.one Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: Merge up fixesMark Brown2023-09-121-0/+21
|\| | | | | | | For the benefit of CI.
| * ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UGAugust Wikerfors2023-09-121-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like the Lenovo 82TL and 82V2, the Lenovo 82QF (Yoga 7 14ARB7) and 82UG (Legion S7 16ARHA7) both need a quirk entry for the internal microphone to function. Commit c008323fe361 ("ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ") restricted the quirk that previously matched "82" to "82V2", breaking microphone functionality on these devices. Fix this by adding specific quirks for these models, as was done for the Lenovo 82TL. Fixes: c008323fe361 ("ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ") Closes: https://github.com/tomsom/yoga-linux/issues/51 Link: https://bugzilla.kernel.org/show_bug.cgi?id=208555#c780 Cc: stable@vger.kernel.org Signed-off-by: August Wikerfors <git@augustwikerfors.se> Link: https://lore.kernel.org/r/20230911213409.6106-1-git@augustwikerfors.se Signed-off-by: Mark Brown <broonie@kernel.org>
| * Add DMI ID for MSI Bravo 15 B7EDWalt Holman2023-09-111-0/+7
| | | | | | | | | | | | Signed-off-by: Walt Holman <waltholman09@gmail.com> Link: https://lore.kernel.org/r/20230910185433.13677-1-waltholman09@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Add machine driver that enables sound for systems with a ↵Marian Postevca2023-09-118-2/+560
| | | | | | | | | | | | | | | | | | | | | | ES8336 codec This commit enables sound for a line of Huawei laptops that use the ES8336 codec which is connected to the ACP3X module. Signed-off-by: Marian Postevca <posteuca@mutex.one> Link: https://lore.kernel.org/r/20230829220116.1159-6-posteuca@mutex.one Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: amd: acp: Add support for splitting the codec specific code from the ↵Marian Postevca2023-09-112-11/+137
|/ | | | | | | | | | | | | | | ACP driver This commit adds support for splitting more complicated machine drivers, that need special handling, from the generic ACP code. By adding support for callbacks to configure and handle codec specific implementation details, we can split them in separate files that don't clutter the ACP code. Signed-off-by: Marian Postevca <posteuca@mutex.one> Link: https://lore.kernel.org/r/20230829220116.1159-5-posteuca@mutex.one Signed-off-by: Mark Brown <broonie@kernel.org>
* Merge tag 'asoc-fix-v6.6-merge-window' of ↵Takashi Iwai2023-09-071-0/+14
|\ | | | | | | | | | | | | | | | | | | | | | | https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus ASoC: Fixes for v6.6 A bunch of fixes and new IDs that came in since the initial pull request - all driver specific and nothing too exciting. There's a trivial conflict in the AMD driver ID table due to the last v6.5 fixes not having been merged up.
| * ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TLMario Limonciello2023-09-061-0/+7
| | | | | | | | | | | | | | | | | | | | | | Lenovo 82TL has DMIC connected like 82V2 does. Also match 82TL. Reported-by: wildjim@kiwinet.org Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217063 Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Link: https://lore.kernel.org/r/20230906182257.45736-1-mario.limonciello@amd.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: yc: Add DMI entries to support Victus by HP Gaming Laptop ↵Shubh2023-09-041-0/+7
| | | | | | | | | | | | | | | | | | | | | | 15-fb0xxx (8A3E) This model requires an additional detection quirk to enable the internal microphone. Signed-off-by: Shubh <shubhisroking@gmail.com> Link: https://lore.kernel.org/r/20230902150807.133523-1-shubhisroking@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | Merge tag 'asoc-v6.6' of ↵Takashi Iwai2023-08-2811-126/+330
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus ASoC: Updates for v6.6 The rest of the updates for v6.6, some of the highlights include: - A big API cleanup from Morimoto-san, rationalising the places we put functions. - Lots of work on the SOF framework, AMD and Intel drivers, including a lot of cleanup and new device support. - Standardisation of the presentation of jacks from drivers. - Provision of some generic sound card DT properties. - Conversion oof more drivers to the maple tree register cache. - New drivers for AMD Van Gogh, AWInic AW88261, Cirrus Logic cs42l43, various Intel platforms, Mediatek MT7986, RealTek RT1017 and StarFive JH7110.
| * ASoC: amd: acp: Add kcontrols and widgets per-codec in common codeAlper Nebi Yasak2023-08-183-44/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 7ac3404c2e21 ("ASoC: amd: acp: Map missing jack kcontrols") adds card kcontrols and DAPM widgets corresponding to jacks for Headphone and Headset Mic. But these were already being added in acp-legacy-mach.c and acp-sof-mach.c, so this causes a probe error: sof_mach rt5682s-hs-rt1019: control 2:0:0:Headphone Jack Switch:0 is already present sof_mach rt5682s-hs-rt1019: ASoC: Failed to add Headphone Jack Switch: -16 sof_mach rt5682s-hs-rt1019: devm_snd_soc_register_card(sof-rt5682s-hs-rt1019) failed: -16 sof_mach: probe of rt5682s-hs-rt1019 failed with error -16 Removing the new duplicates from the common code might be enough to fix the issue. But some of the codecs use different kcontrols and widgets. NAU8821 alone has an "Int Mic". MAX98360A has a single "Spk", while RT1019 has "Left Spk" and "Right Spk" (and two codec instances with name prefixes). Since there are per-codec differences, add the kcontrols and widgets in the common code as each dai-link is being initialized, instead of in the two machine drivers' probe(). Also, MAX98388 has Left and Right instances, but uses a single "SPK" widget. That seems weird, so normalize it to use two widgets (one per each instance like RT1019) while we're adding controls. Fixes: 7ac3404c2e21 ("ASoC: amd: acp: Map missing jack kcontrols") Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Link: https://lore.kernel.org/r/20230818080314.32991-1-alpernebiyasak@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: merge DAI call back functions into opsKuninori Morimoto2023-08-144-18/+12
| | | | | | | | | | | | | | | | | | ALSA SoC merges DAI call backs into .ops. This patch merge these into one. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/87pm3xb0va.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: acp3x-rt5682-max9836: Configure jack as not detecting Line OutAlper Nebi Yasak2023-08-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The RT5682, RT1015 and RT1015p codecs used in this driver do not seem capable of distinguishing Line Out connections from Headphone, but the driver configures its jack object as if it can. Remove the wrong value from the jack creation call to avoid any confusion. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com> Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com> Link: https://lore.kernel.org/r/20230805162216.441410-1-alpernebiyasak@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: acp3x-rt5682-max9836: Map missing jack kcontrolsAlper Nebi Yasak2023-08-071-5/+18
| | | | | | | | | | | | | | | | | | | | | | This driver does not properly map jack pins to kcontrols that PulseAudio and PipeWire need to handle jack detection events. The RT5682, RT1015 and RT1015p codecs used here can detect Headphone and Headset Mic connections. Expose the former two to userspace as kcontrols. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Link: https://lore.kernel.org/r/20230802175737.263412-5-alpernebiyasak@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: acp: Map missing jack kcontrolsAlper Nebi Yasak2023-08-071-44/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | This driver does not properly map jack pins to kcontrols that PulseAudio and PipeWire need to handle jack detection events. The RT5682, RT5682s, NAU8825 and NAU8821 codecs used here can detect Headphone and Headset Mic connections. Expose both to userspace as kcontrols and add the necessary widgets. Split the jack and pin structs per-codec to accommodate for per-codec differences. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Link: https://lore.kernel.org/r/20230802175737.263412-4-alpernebiyasak@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: acp-rt5645: Map missing jack kcontrolsAlper Nebi Yasak2023-08-071-5/+17
| | | | | | | | | | | | | | | | | | | | | | This driver does not properly map jack pins to kcontrols that PulseAudio and PipeWire need to handle jack detection events. The RT5645 codec used here can detect Headphone and Headset Mic connections. Expose both to userspace as kcontrols. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Link: https://lore.kernel.org/r/20230802175737.263412-3-alpernebiyasak@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: acp-da7219-max98357a: Map missing jack kcontrolsAlper Nebi Yasak2023-08-071-10/+31
| | | | | | | | | | | | | | | | | | | | | | This driver does not properly map jack pins to kcontrols that PulseAudio and PipeWire need to handle jack detection events. The DA7219 codec used here can detect Headphones, Headset Mic and Line Out connections. Expose each to userspace as kcontrols and add the necessary widgets. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> Link: https://lore.kernel.org/r/20230802175737.263412-2-alpernebiyasak@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * ASoC: amd: acp5x-mach:add checks to avoid static analysis warningsPierre-Louis Bossart2023-07-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | snd_soc_card_get_codec_dai() can return NULL, but that value is not checked for, leading to static analysis warnings. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Rander Wang <rander.wang@intel.com> Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Yaochun Hung <yc.hung@mediatek.com> Link: https://lore.kernel.org/r/20230731213748.440285-9-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
* | Merge branch 'for-next' into for-linusTakashi Iwai2023-08-2818-279/+984
|\ \ | | | | | | | | | | | | | | | Pull materials for 6.5 merge window. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * \ Merge branch 'for-linus' into for-nextTakashi Iwai2023-08-241-0/+7
| |\ \ | | |/ | |/| | | | | | | | | | | | | Back-merge the 6.5-devel branch for the clean patch application for 6.6 and resolving merge conflicts. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ASoC: Merge up fixes from mainlineMark Brown2023-07-231-2/+2
| |\ \ | | | | | | | | | | | | There's several things here that will really help my CI.
| * | | ASoC: amd: acp: fix SND_SOC_AMD_ACP_PCI depdenenciesArnd Bergmann2023-07-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new PM functions require code that is part of the snd-acp-legacy-common module: x86_64-linux-ld: sound/soc/amd/acp/acp-pci.o: in function `snd_acp_resume': acp-pci.c:(.text+0x23): undefined reference to `acp_init' x86_64-linux-ld: acp-pci.c:(.text+0x58): undefined reference to `acp_enable_interrupts' x86_64-linux-ld: sound/soc/amd/acp/acp-pci.o: in function `snd_acp_suspend': acp-pci.c:(.text+0x89): undefined reference to `acp_deinit' x86_64-linux-ld: sound/soc/amd/acp/acp-pci.o: in function `acp_pci_remove': acp-pci.c:(.text+0xec): undefined reference to `acp_deinit' x86_64-linux-ld: sound/soc/amd/acp/acp-pci.o: in function `acp_pci_probe': acp-pci.c:(.text+0x26b): undefined reference to `acp_init' Select that Kconfig symbol as is done for the other frontends. Fixes: 088a40980efbc ("ASoC: amd: acp: add pm ops support for acp pci driver") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20230719130846.633701-1-arnd@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
| * | | ASoC: amd: acp: delete unnecessary NULL checkDan Carpenter2023-07-181-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The list iterator can't be NULL. Delete the check and pull the code in one tab. Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Link: https://lore.kernel.org/r/b0c5b0ca-68da-47e6-a8b0-e0714f0de119@moroto.mountain Signed-off-by: Mark Brown <broonie@kernel.org>
| * | | ASoC: amd: acp: clean up some inconsistent indentingsYang Li2023-07-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sound/soc/amd/acp/acp-rembrandt.c:283 rmb_pcm_resume() warn: inconsistent indenting Reported-by: Abaci Robot <abaci@linux.alibaba.com> Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=5863 Signed-off-by: Yang Li <yang.lee@linux.alibaba.com> Link: https://lore.kernel.org/r/20230713065106.21564-1-yang.lee@linux.alibaba.com Signed-off-by: Mark Brown <broonie@kernel.org>
| * | | ASoC: Another set of platform remove conversionsMark Brown2023-07-121-3/+2
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge series from Uwe Kleine-König <u.kleine-koenig@pengutronix.de>: Two more drivers were added during the current merge window that are users of the original .remove callback that I plan to get rid of. Convert them to .remove_new.
| | * | | ASoC: amd: ps-sdw-dma: Convert to platform remove callback returning voidUwe Kleine-König2023-07-091-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new() which already returns void. Eventually after all drivers are converted, .remove_new() is renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20230707072830.3395789-2-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
| * | | | Refactor acp legacy driver and addMark Brown2023-07-1210-253/+531
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge series from Syed Saba Kareem <Syed.SabaKareem@amd.com>: This patch series to refactor acp leagacy driver and add pm ops support for rembrandt platforms.