aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/sound/soc/soc-card.c
diff options
context:
space:
mode:
authorMartin Povišer <povik+lin@cutebit.org>2022-06-06 21:19:09 +0200
committerMark Brown <broonie@kernel.org>2022-06-10 13:32:20 +0100
commitdf4d27b19b892f464685ea45fa6132dd1a2b6864 (patch)
tree4d223e42bcc2f1ea4fbf2d78a38f06a63260db2a /sound/soc/soc-card.c
parentASoC: imx-audmux: remove unnecessary check of clk_disable_unprepare/clk_prepare_enable (diff)
downloadwireguard-linux-df4d27b19b892f464685ea45fa6132dd1a2b6864.tar.xz
wireguard-linux-df4d27b19b892f464685ea45fa6132dd1a2b6864.zip
ASoC: Introduce 'fixup_controls' card method
The new method is called just before the card is registered, providing an opportune time for machine-level drivers to do some final controls amending: deactivating individual controls or obtaining control references for later use. Some controls can be created by DAPM after 'late_probe' has been called, hence the need for this new method. Signed-off-by: Martin Povišer <povik+lin@cutebit.org> Link: https://lore.kernel.org/r/20220606191910.16580-5-povik+lin@cutebit.org Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-card.c')
-rw-r--r--sound/soc/soc-card.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/soc/soc-card.c b/sound/soc/soc-card.c
index 4158f5aacfd3..285ab4c9c716 100644
--- a/sound/soc/soc-card.c
+++ b/sound/soc/soc-card.c
@@ -197,6 +197,12 @@ int snd_soc_card_late_probe(struct snd_soc_card *card)
return 0;
}
+void snd_soc_card_fixup_controls(struct snd_soc_card *card)
+{
+ if (card->fixup_controls)
+ card->fixup_controls(card);
+}
+
int snd_soc_card_remove(struct snd_soc_card *card)
{
int ret = 0;