On Mon, 03 Apr 2017 14:13:40 +0200, Takashi Sakamoto wrote: > > At a commit 6c29230e2a5f ("ALSA: oxfw: delayed registration of sound > card"), ALSA oxfw driver fails to handle SCS.1m/1d, due to -EBUSY at a call > of snd_card_register(). The cause is that the driver manages to register > two rawmidi instances with the same device number 0. This is a regression > introduced since kernel 4.7. > > This commit fixes the regression, by fixing up device property after > discovering stream formats. > > Fixes: 6c29230e2a5f ("ALSA: oxfw: delayed registration of sound card") > Cc: <stable@xxxxxxxxxxxxxxx> # 4.7+ > Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx> Applied to for-linus branch. Thanks. Takashi > --- > sound/firewire/oxfw/oxfw.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/sound/firewire/oxfw/oxfw.c b/sound/firewire/oxfw/oxfw.c > index 74d7fb6..413ab63 100644 > --- a/sound/firewire/oxfw/oxfw.c > +++ b/sound/firewire/oxfw/oxfw.c > @@ -227,11 +227,11 @@ static void do_registration(struct work_struct *work) > if (err < 0) > goto error; > > - err = detect_quirks(oxfw); > + err = snd_oxfw_stream_discover(oxfw); > if (err < 0) > goto error; > > - err = snd_oxfw_stream_discover(oxfw); > + err = detect_quirks(oxfw); > if (err < 0) > goto error; > > -- > 2.9.3 >