summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-06-12ASoC: dt-bindings: wlf,wm8782: Convert to dtschemaAnimesh Agarwal
Convert the WM8782 audio codec bindings to DT schema. Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com> Cc: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20240611124405.63427-1-animeshagarwal28@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-11ASoC: dt-bindings: linux,spdif: Convert spdif-reciever.txt to dtschemaAnimesh Agarwal
Convert the dummy SPDIF receiver bindings to DT schema. Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com> Cc: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Acked-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20240606041212.78428-1-animeshagarwal28@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-11ASoC: samsung: midas_wm1811: Fix error code in probe()Dan Carpenter
This accidentally returns success instead of -EINVAL. Fixes: c91d0c2e198d ("ASoC: samsung: midas_wm1811: Add GPIO-based headset jack detection") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Acked-by: Artur Weber <aweber.kernel@gmail.com> Link: https://lore.kernel.org/r/01590109-cf27-404b-88ff-b42bb73ca1c6@moroto.mountain Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-11ASoC: cs35l56: Attempt to read from cirrus,speaker-id device property firstSimon Trimmer
When cs35l56 is connected via cs42l43 there isn't an ACPI node for the cs35l56 so all properties are under the cs42l43 ACPI node. We're adding a property as a way for the cs42l43 driver to pass this info in via a software node. Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20240611132556.1557075-3-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-11ASoC: Drop or replace of_gpio.hMark Brown
Merge series from Andy Shevchenko <andriy.shevchenko@linux.intel.com>: Replace or drop the legacy header that is subject to remove. Not all of them were compile-tested, the series might have hidden compilation errors.
2024-06-10ASoC: dt-bindings: ak4554: Convert to dtschemaAnimesh Agarwal
Convert the AK4554 sound codec bindings to DT schema. Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com> Cc: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Link: https://lore.kernel.org/r/20240607055725.38057-1-animeshagarwal28@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ACPI/ALSA/soundwire: add acpi_get_local_u64_address()Mark Brown
Merge series from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>: The acpi_get_local_address() helper assumes a 32-bit ADR is used. If we want to use this helper for SoundWire/SDCA ASoC codecs, we need an extension where the native 64-bits are used. This patchset suggests a new helper, acpi_get_local_address() may be renamed if desired in a folow-up patch. The path of least resistance would be to merge this patchset in the ASoC tree, since I have additional changes for ASoC/SDCA (SoundWire Device Class) that depend on the new helper. Pierre-Louis Bossart (3): ACPI: utils: introduce acpi_get_local_u64_address() soundwire: slave: simplify code with acpi_get_local_u64_address() ALSA: hda: intel-sdw-acpi: use acpi_get_local_u64_address() drivers/acpi/utils.c | 22 ++++++++++++++++------ drivers/soundwire/slave.c | 13 ++++--------- include/linux/acpi.h | 1 + sound/hda/intel-sdw-acpi.c | 6 +++--- 4 files changed, 24 insertions(+), 18 deletions(-) -- 2.43.0
2024-06-10ASoC: codecs: wcd937x: add wcd937x audio codecMark Brown
Merge series from Mohammad Rafi Shaik <quic_mohs@quicinc.com>: This patchset adds support for Qualcomm WCD9370/WCD9375 codec. Qualcomm WCD9370/WCD9375 Codec is a standalone Hi-Fi audio codec IC connected over SoundWire. This device has two SoundWire devices, RX and TX respectively supporting 3 x ADCs, ClassH, Ear, Aux PA, 2xHPH, 6 DMICs and MBHC. For codec driver to be functional it would need both tx and rx Soundwire devices to be up and this is taken care by using device component framework and device-links are used to ensure proper pm dependencies. Ex tx does not enter suspend before rx or codec is suspended. This patchset along with other SoundWire patches on the list have been tested on QCM6490 IDP device.
2024-06-10ASoC: dt-bindings: omap-mcpdm: Convert to DT schemaMithil Bavishi
Convert the OMAP4+ McPDM bindings from txt to yaml (dtschema). Drop ti,hwmods property as it is not needed since the sysc conversion. Add dma, dma-names, reg-names properties to match the DTS so as to not break the already existing ABI. Also update example node to match the existing node in the DTS. Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20240608095305.2887-1-bavishimithil@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: samsung: Replace of_gpio.h by proper oneAndy Shevchenko
of_gpio.h is deprecated and subject to remove. The driver doesn't use it directly, replace it with what is really being used. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240605221446.2624964-7-andriy.shevchenko@linux.intel.com Reviewed-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: generic: Replace of_gpio.h by proper oneAndy Shevchenko
of_gpio.h is deprecated and subject to remove. The driver doesn't use it directly, replace it with what is really being used. Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240605221446.2624964-6-andriy.shevchenko@linux.intel.com Reviewed-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: Replace of_gpio.h by proper oneAndy Shevchenko
of_gpio.h is deprecated and subject to remove. The driver doesn't use it directly, replace it with what is really being used. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240605221446.2624964-5-andriy.shevchenko@linux.intel.com Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: rockchip: Remove unused of_gpio.hAndy Shevchenko
of_gpio.h is deprecated and subject to remove. The drivers in question don't use it, simply remove the unused header. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240605221446.2624964-4-andriy.shevchenko@linux.intel.com Reviewed-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: fsl: Remove unused of_gpio.hAndy Shevchenko
of_gpio.h is deprecated and subject to remove. The drivers in question don't use it, simply remove the unused header. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240605221446.2624964-3-andriy.shevchenko@linux.intel.com Reviewed-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: Remove unused of_gpio.hAndy Shevchenko
of_gpio.h is deprecated and subject to remove. The drivers in question don't use it, simply remove the unused header. Reviewed-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240605221446.2624964-2-andriy.shevchenko@linux.intel.com Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ALSA: hda: intel-sdw-acpi: use acpi_get_local_u64_address()Pierre-Louis Bossart
Now we have a helper so there's no need to open-code. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Takashi Iwai <tiwai@suse.de> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240528192936.16180-4-pierre-louis.bossart@linux.intel.com Acked-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10soundwire: slave: simplify code with acpi_get_local_u64_address()Pierre-Louis Bossart
Now we have a helper so there's no need to open-code. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Acked-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Takashi Iwai <tiwai@suse.de> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240528192936.16180-3-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ACPI: utils: introduce acpi_get_local_u64_address()Pierre-Louis Bossart
The ACPI _ADR is a 64-bit value. We changed the definitions in commit ca6f998cf9a2 ("ACPI: bus: change _ADR representation to 64 bits") but some helpers still assume the value is a 32-bit value. This patch adds a new helper to extract the full 64-bits. The existing 32-bit helper is kept for backwards-compatibility and cases where the _ADR is known to fit in a 32-bit value. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: Takashi Iwai <tiwai@suse.de> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20240528192936.16180-2-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: wcd937x: add audio routing and KconfigPrasad Kumpatla
This patch adds audio routing for both playback and capture and Makefile and Kconfigs changes for wcd937x. Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Link: https://lore.kernel.org/r/20240524035535.3119208-8-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: wcd937x: add capture dapm widgetsPrasad Kumpatla
This patch adds required dapm widgets for capture path. Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Link: https://lore.kernel.org/r/20240524035535.3119208-7-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: wcd937x: add playback dapm widgetsPrasad Kumpatla
This patch adds required dapm widgets for playback. Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Link: https://lore.kernel.org/r/20240524035535.3119208-6-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: wcd937x: add basic controlsPrasad Kumpatla
This patch adds basic controls found in WCD9370/WCD9375 codec. Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Link: https://lore.kernel.org/r/20240524035535.3119208-5-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: wcd937x: add wcd937x codec driverPrasad Kumpatla
This patch adds basic SoundWire codec driver to support for WCD9370/WCD9375 TX and RX devices. The WCD9370/WCD9375 has Multi Button Headset Control hardware to support Headset insertion, type detection, 8 headset buttons detection, Over Current detection and Impedence measurements. This patch adds support for this using wcd-mbhc apis. Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Link: https://lore.kernel.org/r/20240524035535.3119208-4-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: codecs: wcd937x-sdw: add SoundWire driverPrasad Kumpatla
This patch adds support to SoundWire devices on WCD9370/WCD9375 Codec. The WCD9370/WCD9375 Soundwire devices will be used by the main WCD9370/WCD9375 Audio Codec driver to access registers and configure Soundwire RX and TX ports. Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Link: https://lore.kernel.org/r/20240524035535.3119208-3-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-10ASoC: dt-bindings: document wcd937x Audio CodecPrasad Kumpatla
Document the Qualcomm WCD9370/WCD9375 Audio Codec and the Soundwire devices than can be found on Qualcomm QCM6490 based platforms. The Qualcomm WCD9370/WCD9375 Audio Codec communicates with the host SoC over 2 Soundwire links to provide: - 3 TX ADC paths with 4 differential AMIC inputs - 6 DMIC inputs that are shared with AMIC input - 4 Microphone BIAS - RX paths with 4 PAs – HPHL/R, EAR and AUX - Stereo Headphone output - MBHC engine for Headset Detection Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com> Co-developed-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Signed-off-by: Mohammad Rafi Shaik <quic_mohs@quicinc.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20240524035535.3119208-2-quic_mohs@quicinc.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-06ASoC: dt-bindings: convert amlogic,g12a-tohdmitx to dt-schemaNeil Armstrong
Convert text bindings to dt-schema format for the Amlogic TX HDMI control glue. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://msgid.link/r/20240606-topic-amlogic-upstream-bindings-convert-g12a-tohdmitx-v2-1-70d44fa30790@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-04ASoC: simple-card: sync supportMark Brown
Merge series from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>: We have simple-card / audio-graph / audio-graph2, basically these supports same feature but is using different DT style. Because we are using 3 drivers, some feature was added to one driver, but other drivers doesn't have it. This patch set try to sync it on these 3 drivers.
2024-06-04ASoC: fsl_xcvr: Support i.MX95 platformMark Brown
Merge series from Shengjiu Wang <shengjiu.wang@nxp.com>: On i.MX95 wakeup domain, there is one instance of Audio XCVR supporting SPDIF mode with a connection to the Audio XCVR physical interface.
2024-06-04Dead structs in sound/soc/codecsMark Brown
Merge series from linux@treblig.org: Clean out a bunch of old structs in sound/soc/codecs. Build tested only.
2024-06-04ASoC: dt-bindings: tlv320adc3xxx: Fix incorrect GPIO descriptionRicard Wanderlof
Fix the description for the ti,dmdin-gpio1 and ti,dmclk-gpio2 properties to correctly describe that when configured as general purpose outputs (ADC3XXX_GPIO_GPO), the pins are available via the GPIO framework. Signed-off-by: Ricard Wanderlof <ricard.wanderlof@axis.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Link: https://msgid.link/r/20240528-tlv320adc3xxx-dt-gpio-fix-v1-1-209fb2c2f86f@axis.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: fsl_xcvr: Add support for i.MX95 platformShengjiu Wang
On i.MX95, the XCVR uses a new PLL in the PHY, which is General Purpose (GP) PLL. Add GP PLL configuration support in the driver and add the 'pll_ver' flag to distinguish different PLL on different platforms. The XCVR also use PHY but limited for SPDIF only case Add 'use_phy' flag to distinguish these platforms. When there are 'pll8k' and 'pll11k' clock existing, the clock source of 'phy_clk' can be changed for different sample rate requirement. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Chancel Liu <chancel.liu@nxp.com> Link: https://msgid.link/r/1716972002-2315-3-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: dt-bindings: fsl,xcvr: Add compatible string for i.MX95Shengjiu Wang
Add compatible string "fsl,imx95-xcvr" for i.MX95 platform. The difference between each platform is in below table. +---------+--------+----------+--------+ | SOC | PHY | eARC/ARC | SPDIF | +---------+--------+----------+--------+ | i.MX8MP | V1 | Yes | Yes | +---------+--------+----------+--------+ | i.MX93 | N/A | N/A | Yes | +---------+--------+----------+--------+ | i.MX95 | V2 | N/A | Yes | +---------+--------+----------+--------+ On i.MX95, there are two PLL clock sources, they are the parent clocks of the XCVR root clock. one is for 8kHz series rates, named as 'pll8k', another one is for 11kHz series rates, named as 'pll11k'. They are optional clocks, if there are such clocks, then the driver can switch between them to support more accurate sample rates. As 'pll8k' and 'pll11k' are optional, then add 'minItems: 4' for clocks and clock-names properties. On i.MX95, the 'interrupts' configuration has the same constraint as i.MX93. Only on i.MX8MP, the 'resets' is required, but for i.MX95 and i.MX93 there is no such hardware setting. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Link: https://msgid.link/r/1716972002-2315-2-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: SOF: Intel: pci-tgl: Align ADL-N sof_dev_desc struct name to conventionPeter Ujfalusi
Follow the convention already in use by other platforms on naming the sof_dev_desc struct by dropping the underscore between adl and n 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://msgid.link/r/20240603072544.5215-1-peter.ujfalusi@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: codecs: wcd938x: Drop no-op ADC2_BCS Disable SwitchKrzysztof Kozlowski
The "ADC2_BCS Disable Switch" control does basically nothing: sets field in driver's private data structure which is never read again to configure hardware. Drop the control as it has no effect. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20240523124808.42923-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: codecs: wcd939x: Unify define used for MIC bias VOUT registersKrzysztof Kozlowski
All four microphone bias registers have similar layout: VOUT control mask is exactly the same. Use one define, just like older driver wcd938x is doing, to make the code a bit simpler. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://msgid.link/r/20240523125049.43713-1-krzysztof.kozlowski@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: simple-audio-card: merge simple_parse_mclk_fs() into simple_link_init()Kuninori Morimoto
Now graph_link_init() is parsing dai_link related property. Let's handle mclk_fs on it, too. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/87v82yfrv0.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: simple-audio-card: enable playback/capture_only propertyKuninori Morimoto
Audio Graph Card2 is supporting playback/capture_only property, let's follow Simple Audio Card, too. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/87wmnefrv4.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card: merge graph_parse_mclk_fs() into graph_link_init()Kuninori Morimoto
Now graph_link_init() is parsing dai_link related property. Let's handle mclk_fs on it, too. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/87y17ufrv8.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card: enable playback/capture_only propertyKuninori Morimoto
Audio Graph Card2 is supporting playback/capture_only property, let's follow Audio Graph Card, too. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/87zfsafrvb.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card: remove ports node name checkKuninori Morimoto
Current audio-graph-card is checking if the node name was "ports" or not when parsing the property. if (of_node_name_eq(ports, "ports")) of_xxx(ports, ...); Now, it is using new port_to_ports() which will be NULL if the node doesn't have "ports", and each of_xxx functions will do nothing if node was NULL. Now we don't need to check ports node name. Let's remove and cleanup it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/871q5mh6fv.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card: add ep_to_port() / port_to_ports()Kuninori Morimoto
Current audio-graph-card is using of_get_parent() to get "port" from "ep", or get "ports" from "port". But it is difficlut to understand, and "ports" might not exist. This patch adds ep_to_port() to get "port" from "ep", and port_to_ports() to get "ports" from "port". "ports" will be NULL if not exist. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/8734q2h6fz.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card2: merge graph_parse_mclk_fs() into graph_link_init()Kuninori Morimoto
Now graph_link_init() is parsing dai_link related property. Let's handle mclk_fs on it, too. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/874jaih6g3.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card2: expand dai_link property partKuninori Morimoto
Current dai_link related property are parsed and enabled only on CPU port node (A)(b)(c). OTOH, Audio Graph Card2 supports many connections like Multi-CPU, DPCM, Codec2Codec today. For example in Multi-CPU case, it will be checked via (X) -> (B) -> (b) process, but (X) / (B) part property is not parsed. >From dai_link related settings point of view, (B) (C) part and Codec port also enabled is more viscerally understandable, and useful. card2 { (X) links = <&snd-cpu (A) &snd-multi (B) &snd-dpcm (C) ...> multi { ports { (B) snd-multi: port { ... }; ... }; }; dpcm { ports { (C) snd-dpcm: port { ... }; ... }; }; codec2codec { ... }; }; cpu_device { ports { (A) snd-cpu: port { ... }; (b) mcpu: port { ... }; (c) dcpu: port { ... }; } }; One note here is that if it was Multi-CPU/Codec case, 1st port only enabled to have property it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/875xuyh6g7.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card2: remove ports node name checkKuninori Morimoto
Current audio-graph-card2 is checking if the node name was "ports" or not when parsing the property. if (of_node_name_eq(ports, "ports")) of_xxx(ports, ...); Now, it is using new port_to_ports() which will be NULL if the node doesn't have "ports", and each of_xxx functions will do nothing if node was NULL. Now we don't need to check ports node name. Let's remove and cleanup it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/877cfeh6gb.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: audio-graph-card2: add ep_to_port() / port_to_ports()Kuninori Morimoto
Current audio-graph-card2 is using of_get_parent() to get "port" from "ep", or get "ports" from "port". But it is difficlut to understand, and "ports" might not exist. This patch adds ep_to_port() to get "port" from "ep", and port_to_ports() to get "ports" from "port". "ports" will be NULL if not exist. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/878qzuh6gf.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: simple-card-utils: remove both playback/capture_only checkKuninori Morimoto
soc-pcm.c :: soc_get_playback_capture() will indicate error if both playback_only / capture_only were true. Thus, graph_util_parse_link_direction() which setup playback_only / capture_only don't need to check it. And, its return value is not used on existing driver. Let's remove it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://msgid.link/r/87a5kah6gm.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: codecs: cx2072x: remove unused struct 'cx2072x_eq_ctrl'Dr. David Alan Gilbert
'cx2072x_eq_ctrl' has been unused since the original commit a497a4363706 ("ASoC: Add support for Conexant CX2072X CODEC"). Remove it. Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org> Link: https://msgid.link/r/20240601225446.183505-4-linux@treblig.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: codecs: wm0010: remove unused struct 'wm0010_spi_msg'Dr. David Alan Gilbert
'wm0010_spi_msg' has been unused since the original commit e3523e01869d ("ASoC: wm0010: Add initial wm0010 DSP driver"). Remove it. Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://msgid.link/r/20240601225446.183505-3-linux@treblig.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: codecs: lpass-rx-macro: remove unused struct 'rx_macro_reg_mask_val'Dr. David Alan Gilbert
'rx_macro_reg_mask_val' is unused since the original commit af3d54b99764 ("ASoC: codecs: lpass-rx-macro: add support for lpass rx macro"). Remove it. Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org> Link: https://msgid.link/r/20240601225446.183505-2-linux@treblig.org Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-03ASoC: Merge up fixesMark Brown
We need this to get the i.MX platforms working in CI again.