[alsa-devel] [PATCH 0/4 v7] Scarlett mixer interface inclusion

Takashi Iwai tiwai at suse.de
Thu Nov 13 07:36:51 CET 2014


At Wed, 12 Nov 2014 12:06:58 -0600,
Chris J Arges wrote:
> 
> This is v5 of the patchset to merge what Tobias Hoffman and Robin Gareus have
> done to enable the Focusrite Scarlett mixers for use with ALSA.

Already v7? :)

I applied the patch series now to for-next branch.
If anything is missing, let's fix on top of that.


thanks,

Takashi


> 
> [v3]
> 
> I have split the commits into hopefully a logical series. First the original
> quirk is reverted for one model of a Scarlett device. Next an additional
> structure is added to be able to more easily reuse usb_mixer_elem_info.
> After this mixer functions that were useful to this code were made public.
> Finally the last patch adds the necessary functions to make this mixer work.
> 
> [v4]
> 
> This version removes the per-mixer control creation functions and uses a
> generic function based on structure data. Macros used for control addition
> are removed and the plain function is used instead. Hardcoded text block is
> removed and macros to define strings are used instead. Hardcoded control
> initialization has been removed.
> 
> [v5]
> 
> In this version, HW saving functionality has been removed in this initial
> patchset. Macros for function calls are removed for readability. Strings for
> enums are created dynamically using the info structures. String lengths for
> controls are now all SNDRV_CTL_ELEM_ID_NAME_MAXLEN in length.
> 
> [v6]
> 
> Removed dead variables. Made names const char * const * again. Adjusted
> scarlett_ctl_enum_* functions to be a bit clearer. Used strlcpy where
> appropriate. Properly free two dimensional array.
> 
> [v7]
> 
> Generate strings directly in enum_info function instead of dynamically
> allocating into another array and copying. Remove unnecessary initializations,
> kfrees and use kmalloc instead of kmalloc_array. Update comments to reflect
> current mixer functionality.
> 
> Chris J Arges (4):
>   Revert "ALSA: usb-audio: Add quirk for Focusrite Scarlett
>   ALSA: usb-audio: Add private_data pointer to usb_mixer_elem_info
>   ALSA: usb-audio: make set_*_mix_values functions public
>   ALSA: usb-audio: Scarlett mixer interface for 6i6, 18i6, 18i8 and
>     18i20
> 
>  sound/usb/Makefile         |    1 +
>  sound/usb/mixer.c          |   34 +-
>  sound/usb/mixer.h          |    9 +
>  sound/usb/mixer_quirks.c   |   18 +-
>  sound/usb/mixer_scarlett.c | 1001 ++++++++++++++++++++++++++++++++++++++++++++
>  sound/usb/mixer_scarlett.h |    6 +
>  sound/usb/quirks-table.h   |   51 ---
>  7 files changed, 1044 insertions(+), 76 deletions(-)
>  create mode 100644 sound/usb/mixer_scarlett.c
>  create mode 100644 sound/usb/mixer_scarlett.h
> 
> -- 
> 2.1.3
> 


More information about the Alsa-devel mailing list