ALSA: line6: variax: Rewrite complex timer & work combo with a delayed work
authorTakashi Iwai <tiwai@suse.de>
Wed, 8 May 2019 13:55:36 +0000 (15:55 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 28 May 2019 06:59:26 +0000 (08:59 +0200)
commit6ea53391c04ebc84ff62e2df20f75d65f727f4e8
tree3d7a731b7216ce63bc632c21992b525a38ccc91d
parenta91c1da77c99f1552c58a4451fc8972336627a53
ALSA: line6: variax: Rewrite complex timer & work combo with a delayed work

Variax driver had a very complex and staged startup sequence using
multiple timers and a work.  This patch simplifies the procedure to a
single delayed work.

Now the startup stage consists of:
- VARIAX_STARTUP_VERSIONREQ:
  requesting the version and the message handler raises up to the next
  stage upon receiving the reply.  The request is repeated until a
  reply arrives.
- VARIAX_STARTUP_ACTIVATE:
  does activation, and queue for the next stage.
- VARIAX_STARTUP_SETUP:
  registers the card.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/line6/variax.c