summaryrefslogtreecommitdiff
path: root/include/sound/control.h
diff options
context:
space:
mode:
authorMaxime Ripard <mripard@kernel.org>2024-05-27 11:08:31 +0200
committerMaxime Ripard <mripard@kernel.org>2024-05-27 11:08:31 +0200
commit375c4d1583948cf2439833e4a85d5a0aee853895 (patch)
tree821f494e7df09af36887f710cfce1fb89600e666 /include/sound/control.h
parent983095eaf6c161ef73d96152bfc1a99ca051cd57 (diff)
parent1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0 (diff)
downloadlinux-next-375c4d1583948cf2439833e4a85d5a0aee853895.tar.gz
linux-next-375c4d1583948cf2439833e4a85d5a0aee853895.zip
Merge drm/drm-next into drm-misc-next
Let's start the new release cycle. Signed-off-by: Maxime Ripard <mripard@kernel.org>
Diffstat (limited to 'include/sound/control.h')
-rw-r--r--include/sound/control.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/sound/control.h b/include/sound/control.h
index 9a4f4f7138da..c1659036c4a7 100644
--- a/include/sound/control.h
+++ b/include/sound/control.h
@@ -167,6 +167,29 @@ snd_ctl_find_id_mixer(struct snd_card *card, const char *name)
return snd_ctl_find_id(card, &id);
}
+/**
+ * snd_ctl_find_id_mixer_locked - find the control instance with the given name string
+ * @card: the card instance
+ * @name: the name string
+ *
+ * Finds the control instance with the given name and
+ * @SNDRV_CTL_ELEM_IFACE_MIXER. Other fields are set to zero.
+ *
+ * This is merely a wrapper to snd_ctl_find_id_locked().
+ * The caller must down card->controls_rwsem before calling this function.
+ *
+ * Return: The pointer of the instance if found, or %NULL if not.
+ */
+static inline struct snd_kcontrol *
+snd_ctl_find_id_mixer_locked(struct snd_card *card, const char *name)
+{
+ struct snd_ctl_elem_id id = {};
+
+ id.iface = SNDRV_CTL_ELEM_IFACE_MIXER;
+ strscpy(id.name, name, sizeof(id.name));
+ return snd_ctl_find_id_locked(card, &id);
+}
+
int snd_ctl_create(struct snd_card *card);
int snd_ctl_register_ioctl(snd_kctl_ioctl_func_t fcn);