Message ID | 20180423070634.10758-1-tiwai@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Apr 23, 2018 at 3:06 PM, Takashi Iwai <tiwai@suse.de> wrote: > The recent code refactoring made the argument for some helper > functions to be the explicit UAC_CS_* and UAC2_CS_* value instead of > 0-based offset. However, there was one place left forgotten, and it > caused a regression on some devices appearing as the inconsistent > mixer setup. > > This patch corrects the forgotten conversion. > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199449 > Fixes: 21e9b3e931f7 ("ALSA: usb-audio: fix uac control query argument") > Signed-off-by: Takashi Iwai <tiwai@suse.de> > --- > sound/usb/mixer.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c > index 301ad61ed426..3387483310b1 100644 > --- a/sound/usb/mixer.c > +++ b/sound/usb/mixer.c > @@ -1776,7 +1776,8 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, > build_feature_ctl(state, _ftr, ch_bits, control, > &iterm, unitid, ch_read_only); > if (uac_v2v3_control_is_readable(master_bits, control)) > - build_feature_ctl(state, _ftr, 0, i, &iterm, unitid, > + build_feature_ctl(state, _ftr, 0, control, > + &iterm, unitid, > !uac_v2v3_control_is_writeable(master_bits, > control)); > } > -- > 2.16.3 > Thanks for the fix, looks correct to me. UAC2 jack detection still works correctly on my device with this patch.
On Mon, 23 Apr 2018 12:28:27 +0200, Andrew Chant wrote: > > On Mon, Apr 23, 2018 at 3:06 PM, Takashi Iwai <tiwai@suse.de> wrote: > > The recent code refactoring made the argument for some helper > > functions to be the explicit UAC_CS_* and UAC2_CS_* value instead of > > 0-based offset. However, there was one place left forgotten, and it > > caused a regression on some devices appearing as the inconsistent > > mixer setup. > > > > This patch corrects the forgotten conversion. > > > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199449 > > Fixes: 21e9b3e931f7 ("ALSA: usb-audio: fix uac control query argument") > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > --- > > sound/usb/mixer.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c > > index 301ad61ed426..3387483310b1 100644 > > --- a/sound/usb/mixer.c > > +++ b/sound/usb/mixer.c > > @@ -1776,7 +1776,8 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, > > build_feature_ctl(state, _ftr, ch_bits, control, > > &iterm, unitid, ch_read_only); > > if (uac_v2v3_control_is_readable(master_bits, control)) > > - build_feature_ctl(state, _ftr, 0, i, &iterm, unitid, > > + build_feature_ctl(state, _ftr, 0, control, > > + &iterm, unitid, > > !uac_v2v3_control_is_writeable(master_bits, > > control)); > > } > > -- > > 2.16.3 > > > > Thanks for the fix, looks correct to me. > UAC2 jack detection still works correctly on my device with this patch. Thanks, feel free to give your reviewed-by and/or tested-by tags, too :) Takashi
Successfully tested with configuration described in bug report, thanks! Tested-by: Nazar Mokrynskyi <nazar@mokrynskyi.com> Sincerely, Nazar Mokrynskyi github.com/nazar-pc 23.04.18 10:06, Takashi Iwai пише: > The recent code refactoring made the argument for some helper > functions to be the explicit UAC_CS_* and UAC2_CS_* value instead of > 0-based offset. However, there was one place left forgotten, and it > caused a regression on some devices appearing as the inconsistent > mixer setup. > > This patch corrects the forgotten conversion. > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199449 > Fixes: 21e9b3e931f7 ("ALSA: usb-audio: fix uac control query argument") > Signed-off-by: Takashi Iwai <tiwai@suse.de> > --- > sound/usb/mixer.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c > index 301ad61ed426..3387483310b1 100644 > --- a/sound/usb/mixer.c > +++ b/sound/usb/mixer.c > @@ -1776,7 +1776,8 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, > build_feature_ctl(state, _ftr, ch_bits, control, > &iterm, unitid, ch_read_only); > if (uac_v2v3_control_is_readable(master_bits, control)) > - build_feature_ctl(state, _ftr, 0, i, &iterm, unitid, > + build_feature_ctl(state, _ftr, 0, control, > + &iterm, unitid, > !uac_v2v3_control_is_writeable(master_bits, > control)); > }
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 301ad61ed426..3387483310b1 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -1776,7 +1776,8 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, build_feature_ctl(state, _ftr, ch_bits, control, &iterm, unitid, ch_read_only); if (uac_v2v3_control_is_readable(master_bits, control)) - build_feature_ctl(state, _ftr, 0, i, &iterm, unitid, + build_feature_ctl(state, _ftr, 0, control, + &iterm, unitid, !uac_v2v3_control_is_writeable(master_bits, control)); }
The recent code refactoring made the argument for some helper functions to be the explicit UAC_CS_* and UAC2_CS_* value instead of 0-based offset. However, there was one place left forgotten, and it caused a regression on some devices appearing as the inconsistent mixer setup. This patch corrects the forgotten conversion. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199449 Fixes: 21e9b3e931f7 ("ALSA: usb-audio: fix uac control query argument") Signed-off-by: Takashi Iwai <tiwai@suse.de> --- sound/usb/mixer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)