mbox series

[00/15] ALSA: usb-audio: Introduce and convert to quirk_flags

Message ID 20210729073855.19043-1-tiwai@suse.de
Headers show
Series ALSA: usb-audio: Introduce and convert to quirk_flags | expand

Message

Takashi Iwai July 29, 2021, 7:38 a.m. UTC
As more and more device-specific workarounds came up and gathered in
various places, it becomes harder to manage.  Now it's time to clean
up and collect workarounds more consistently and make them more easily
applicable.

This patch set introduces a new bitmap flags, quirk_flags, to contain
various device-specific quirks.  Those are separate one from the
quirks in quirks-table.h; the quirks-table.h entries are for more
intrusive stuff that needs the descriptor override, while the new
quirk_flags is for easier ones that are tied with the vendor:product
IDs.


Takashi

===

Takashi Iwai (15):
  ALSA: usb-audio: Introduce quirk_flags field
  ALSA: usb-audio: Move media-controller API quirk into quirk_flags
  ALSA: usb-audio: Move txfr_quirk handling to quirk_flags
  ALSA: usb-audio: Move tx_length quirk handling to quirk_flags
  ALSA: usb-audio: Move playback_first flag into quirk_flags
  ALSA: usb-audio: Move clock setup quirk into quirk_flags
  ALSA: usb-audio: Move ITF-USB DSD quirk handling into quirk_flags
  ALSA: usb-audio: Move control message delay quirk into quirk_flags
  ALSA: usb-audio: Move interface setup delay into quirk_flags
  ALSA: usb-audio: Move rate validation quirk into quirk_flags
  ALSA: usb-audio: Move autosuspend quirk into quirk_flags
  ALSA: usb-audio: Move ignore_ctl_error check into quirk_flags
  ALSA: usb-audio: Move generic DSD raw detection into quirk_flags
  ALSA: usb-audio: Add quirk_flags module option
  ALSA: doc: Add the description of quirk_flags option for snd-usb-audio

 Documentation/sound/alsa-configuration.rst |  26 +-
 sound/usb/card.c                           |  42 ++-
 sound/usb/clock.c                          |  15 +-
 sound/usb/endpoint.c                       |  14 +-
 sound/usb/format.c                         |   6 +-
 sound/usb/implicit.c                       |   6 +-
 sound/usb/mixer.c                          |   6 +-
 sound/usb/mixer.h                          |   3 +-
 sound/usb/mixer_maps.c                     |  22 --
 sound/usb/quirks-table.h                   |  70 +---
 sound/usb/quirks.c                         | 359 +++++++++++----------
 sound/usb/quirks.h                         |   5 +-
 sound/usb/stream.c                         |   4 +-
 sound/usb/usbaudio.h                       |  65 +++-
 14 files changed, 341 insertions(+), 302 deletions(-)