From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: snd-usb-audio help Date: Fri, 14 Feb 2003 18:50:09 +0100 Sender: alsa-devel-admin@lists.sourceforge.net Message-ID: References: <3E4BF7EE.9030401@gmx.net> <3E4D276B.3050502@gmx.net> Mime-Version: 1.0 (generated by SEMI 1.14.4 - "Hosorogi") Content-Type: multipart/mixed; boundary="Multipart_Fri_Feb_14_18:50:09_2003-1" Return-path: In-Reply-To: <3E4D276B.3050502@gmx.net> Errors-To: alsa-devel-admin@lists.sourceforge.net List-Help: List-Post: List-Subscribe: , List-Unsubscribe: , List-Archive: To: nitic@gmx.net Cc: alsa-devel@lists.sourceforge.net List-Id: alsa-devel@alsa-project.org --Multipart_Fri_Feb_14_18:50:09_2003-1 Content-Type: text/plain; charset=US-ASCII At Fri, 14 Feb 2003 18:29:15 +0100, nitic wrote: > > hello takashi, > > thanks for the quick response.i've attached the wished files :) could you try the attached patch? (it's to the cvs version.) Takashi --Multipart_Fri_Feb_14_18:50:09_2003-1 Content-Type: application/octet-stream Content-Disposition: attachment; filename="usb-platonic-fix.dif" Content-Transfer-Encoding: 7bit Index: alsa-kernel/usb/usbaudio.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-kernel/usb/usbaudio.c,v retrieving revision 1.46 diff -u -r1.46 usbaudio.c --- alsa-kernel/usb/usbaudio.c 14 Feb 2003 17:36:00 -0000 1.46 +++ alsa-kernel/usb/usbaudio.c 14 Feb 2003 17:48:17 -0000 @@ -1051,7 +1051,7 @@ } /* create a data pipe */ - ep = get_endpoint(alts, 0)->bEndpointAddress & USB_ENDPOINT_NUMBER_MASK; + ep = fmt->endpoint & USB_ENDPOINT_NUMBER_MASK; if (is_playback) subs->datapipe = usb_sndisocpipe(dev, ep); else @@ -1062,9 +1062,16 @@ subs->fill_max = 0; /* we need a sync pipe in async OUT or adaptive IN mode */ - attr = get_endpoint(alts, 0)->bmAttributes & EP_ATTR_MASK; + attr = fmt->ep_attr & EP_ATTR_MASK; if ((is_playback && attr == EP_ATTR_ASYNC) || (! is_playback && attr == EP_ATTR_ADAPTIVE)) { + /* + * QUIRK: plantronics headphone has adaptive-in + * although it's really not... + */ + if (dev->descriptor.idVendor == 0x047f && + dev->descriptor.idProduct == 0x0ca1) + goto _ok; /* check endpoint */ if (altsd->bNumEndpoints < 2 || get_endpoint(alts, 1)->bmAttributes != 0x01 || @@ -1088,6 +1095,7 @@ subs->syncinterval = get_endpoint(alts, 1)->bRefresh; } + _ok: if ((err = init_usb_pitch(dev, subs->interface, alts, fmt)) < 0 || (err = init_usb_sample_rate(dev, subs->interface, alts, fmt, runtime->rate)) < 0) --Multipart_Fri_Feb_14_18:50:09_2003-1-- ------------------------------------------------------- This SF.NET email is sponsored by: FREE SSL Guide from Thawte are you planning your Web Server Security? Click here to get a FREE Thawte SSL guide and find the answers to all your SSL security issues. http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0026en