[PATCH V2 00/14] Cleanup before adding Scarlett Gen 3 support

Geoffrey D. Bennett g at b4.vu
Sun Jun 20 18:46:15 CEST 2021


Hi Takashi,

Here is version 2 of a set of patches which is some cleanup of the
Scarlett Gen 2 mixer driver in preparation for adding Scarlett Gen 3
support.

One review comment I got (from Hin-Tak) was:

> 40+ patches is a lot, for modifying just one file. I would collapse
> it all into one and break it up again to under 10, maybe, broadly
> into "functionally-equivalent re-org", "small isolated bug fixes",
> "additional functions, not yet used", "hooking up those new
> functions", etc?

I'm not sure that I agree with that comment -- I tried to follow the
Documentation/process/submitting-patches.rst advice of "Separate each
logical change into a separate patch" for easy review of the
individual pieces, but perhaps I went too far in that direction?

Please let me know if I should combine some of these patches together.

After this set of patches I have a second set of patches almost ready.
They add a few features to the Gen 2 support and update the code ready
to add Gen 3 support:

  ALSA: usb-audio: scarlett2: Add usb_tx/rx functions
  ALSA: usb-audio: scarlett2: Update initialisation sequence
  ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions
  ALSA: usb-audio: scarlett2: Always enable interrupt polling
  ALSA: usb-audio: scarlett2: Add "Sync Status" control
  ALSA: usb-audio: scarlett2: Merge common line in capture strings
  ALSA: usb-audio: scarlett2: Reformat scarlett2_config_items[]
  ALSA: usb-audio: scarlett2: Improve device info lookup
  ALSA: usb-audio: scarlett2: Move info lookup out of init function
  ALSA: usb-audio: scarlett2: Remove repeated device info comments
  ALSA: usb-audio: scarlett2: Add scarlett2_vol_ctl_write() helper
  ALSA: usb-audio: scarlett2: Add mute support
  ALSA: usb-audio: scarlett2: Allow arbitrary ordering of mux entries
  ALSA: usb-audio: scarlett2: Split struct scarlett2_ports
  ALSA: usb-audio: scarlett2: Fix Level Meter control

The final set of patches adds Gen 3 mixer support and then adds
support for the new Gen 3 features:

  ALSA: usb-audio: scarlett2: Add Gen 3 mixer support
  ALSA: usb-audio: scarlett2: Add support for "input-other" notify
  ALSA: usb-audio: scarlett2: Add Gen 3 MSD mode switch
  ALSA: usb-audio: scarlett2: Move get config above set config
  ALSA: usb-audio: scarlett2: Allow bit-level access to config
  ALSA: usb-audio: scarlett2: Add support for Solo and 2i2 Gen 3
  ALSA: usb-audio: scarlett2: Add "air" switch support
  ALSA: usb-audio: scarlett2: Add phantom power switch support
  ALSA: usb-audio: scarlett2: Add direct monitor support
  ALSA: usb-audio: scarlett2: Label 18i8 Gen 3 line outputs correctly
  ALSA: usb-audio: scarlett2: Split up sw_hw_enum_ctl_put()
  ALSA: usb-audio: scarlett2: Add sw_hw_ctls and mux_ctls
  ALSA: usb-audio: scarlett2: Update mux controls to allow updates
  ALSA: usb-audio: scarlett2: Add speaker switching support
  ALSA: usb-audio: scarlett2: Update get_config to do endian conversion
  ALSA: usb-audio: scarlett2: Add support for the talkback feature

If you'd like to see the commits so far all at once, please check this
branch:

https://github.com/geoffreybennett/scarlett-gen2/commits/scarlett-gen3-for-next

Thanks,
Geoffrey.

Geoffrey D. Bennett (14):
  ALSA: usb-audio: scarlett2: Remove incorrect S/PDIF comment
  ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count
  ALSA: usb-audio: scarlett2: Coding style improvements
  ALSA: usb-audio: scarlett2: Remove unused/useless code
  ALSA: usb-audio: scarlett2: Remove interrupt debug message
  ALSA: usb-audio: scarlett2: Remove redundant info->button_count
  ALSA: usb-audio: scarlett2: Rename buttons/interrupts/vol
  ALSA: usb-audio: scarlett2: Rename struct scarlett2_mixer_data
  ALSA: usb-audio: scarlett2: Add temp variable for consistency
  ALSA: usb-audio: scarlett2: Fix data_mutex lock
  ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values
  ALSA: usb-audio: scarlett2: Fix union usage in mixer control callbacks
  ALSA: usb-audio: scarlett2: Don't copy struct scarlett2_config
  ALSA: usb-audio: scarlett2: Remove hard-coded USB #defines

 sound/usb/mixer_scarlett_gen2.c | 425 +++++++++++++++++---------------
 1 file changed, 224 insertions(+), 201 deletions(-)


base-commit: f8fbcdfb0665de60997d9746809e1704ed782bbc
-- 
2.31.1



More information about the Alsa-devel mailing list