[alsa-devel] Regression in sound/usb/
Takashi Iwai
tiwai at suse.de
Thu Jul 5 16:41:29 CEST 2012
At Tue, 03 Jul 2012 11:01:42 +0200,
Takashi Iwai wrote:
>
> At Tue, 3 Jul 2012 10:40:51 +0200,
> Philipp Dreimann wrote:
> >
> > On 3 July 2012 10:27, Takashi Iwai <tiwai at suse.de> wrote:
> > > At Tue, 3 Jul 2012 10:20:13 +0200,
> > > Philipp Dreimann wrote:
> > >>
> > >> On 3 July 2012 10:00, Takashi Iwai <tiwai at suse.de> wrote:
> > >> > At Tue, 3 Jul 2012 09:41:09 +0200,
> > >> > Philipp Dreimann wrote:
> > >> >>
> > >> >> On 2 July 2012 14:10, Daniel Mack <zonque at gmail.com> wrote:
> > >> >> > On 01.07.2012 13:40, Philipp Dreimann wrote:
> > >> >> >> Hello,
> > >> >> >>
> > >> >> >> my usb webcam, which happens to have a microphone too, stopped working
> > >> >> >> using usb2 since I tried kernel 3.5-rc2. (It works using usb3.)
> > >> >> >
> > >> >> > Please try 3.5-rc5. A number of regressions were fixed just recently.
> > >> >> >
> > >> >> > Let me know if that version still causes problems.
> > >> >>
> > >> >> It still does.
> > >> >
> > >> > Try to pass ignore_ctl_error=1 to snd-usb-audio module.
> > >> > If this works and no other problem happens, we can add a similar quirk
> > >> > like some Logitech webcams.
> > >>
> > >> This does not seem to help.
> > >
> > > And webcam itself is working with our without snd-usb-audio module?
> > Yes, if I blacklist the module, the webcam works fine.
> >
> > > Which device at all?
> > logitech c910
> >
> > > Too little information to analyze.
> > You guys tell me what you need to know.
>
> Try the patch below. If it still doesn't work, give the kernel
> message again and lsusb -v output, too.
Did it make any difference?
thanks,
Takashi
>
>
> thanks,
>
> Takashi
>
> ---
> diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c
> index 54607f8..f0ede13 100644
> --- a/sound/usb/pcm.c
> +++ b/sound/usb/pcm.c
> @@ -387,7 +387,7 @@ add_sync_ep:
> subs->data_endpoint->sync_master = subs->sync_endpoint;
> }
>
> - if ((err = snd_usb_init_pitch(subs->stream->chip, subs->interface, alts, fmt)) < 0)
> + if ((err = snd_usb_init_pitch(subs->stream->chip, fmt->iface, alts, fmt)) < 0)
> return err;
>
> subs->cur_audiofmt = fmt;
> @@ -450,7 +450,7 @@ static int snd_usb_hw_params(struct snd_pcm_substream *substream,
> struct usb_interface *iface;
> iface = usb_ifnum_to_if(subs->dev, fmt->iface);
> alts = &iface->altsetting[fmt->altset_idx];
> - ret = snd_usb_init_sample_rate(subs->stream->chip, subs->interface, alts, fmt, rate);
> + ret = snd_usb_init_sample_rate(subs->stream->chip, fmt->iface, alts, fmt, rate);
> if (ret < 0)
> return ret;
> subs->cur_rate = rate;
More information about the Alsa-devel
mailing list