[PATCH] sound: pci/rme9652 - implement and expose controls for output

fassl superfassl at gmail.com
Mon Feb 1 14:50:08 CET 2021


On 01.02.21 09:42, Takashi Iwai wrote:

> snd_ctl_new() can be used for allocating the multiple instances in one
> kcontrol.  If the kctl object is created in this way, you'd just need
> to change your code to retrieve the kctl index via
> snd_ctl_get_ioff() instead of referring to kctl->index directly.
>
Hi, thanks for the response. snd_ctl_new() is static and unexported,
should I provide this patch (below) as well? And if so, together with
this one or separately?

Thanks, best regards


diff --git a/include/sound/control.h b/include/sound/control.h
index 77d9fa10812d..a5920090fdca 100644
--- a/include/sound/control.h
+++ b/include/sound/control.h
@@ -116,6 +116,7 @@ typedef int (*snd_kctl_ioctl_func_t) (struct snd_card * card,
 
 void snd_ctl_notify(struct snd_card * card, unsigned int mask, struct snd_ctl_elem_id * id);
 
+int snd_ctl_new(struct snd_kcontrol **kctl, unsigned int count, unsigned int access, struct snd_ctl_file *file);
 struct snd_kcontrol *snd_ctl_new1(const struct snd_kcontrol_new * kcontrolnew, void * private_data);
 void snd_ctl_free_one(struct snd_kcontrol * kcontrol);
 int snd_ctl_add(struct snd_card * card, struct snd_kcontrol * kcontrol);
diff --git a/sound/core/control.c b/sound/core/control.c
index 3b44378b9dec..066288218b81 100644
--- a/sound/core/control.c
+++ b/sound/core/control.c
@@ -194,7 +194,7 @@ EXPORT_SYMBOL(snd_ctl_notify);
  *
  * Return: 0 on success, error code on failure
  */
-static int snd_ctl_new(struct snd_kcontrol **kctl, unsigned int count,
+int snd_ctl_new(struct snd_kcontrol **kctl, unsigned int count,
                       unsigned int access, struct snd_ctl_file *file)
 {
        unsigned int idx;
@@ -214,6 +214,7 @@ static int snd_ctl_new(struct snd_kcontrol **kctl, unsigned int count,
 
        return 0;
 }
+EXPORT_SYMBOL(snd_ctl_new);



More information about the Alsa-devel mailing list