All of lore.kernel.org
 help / color / mirror / Atom feed
* High Speed USB Support?
@ 2005-05-12 12:00 mailinglist
  2005-05-12 13:39 ` Clemens Ladisch
  0 siblings, 1 reply; 8+ messages in thread
From: mailinglist @ 2005-05-12 12:00 UTC (permalink / raw)
  To: alsa-devel

Is the High Speed USB support in the alsa USB audio driver tested?

I am currently designing a High Speed USB audio card and testing
it in Linux. It would be nice to know if the driver has been tested
on a high speed device so that I would know if problems I'm having
is casued by my design or the driver.

My main problem at the moment is popping noises, it seems as some data
is getting lost but I can't see that my buffers get either full or
empty, so i wonder if this could be caused by the driver.



-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
  2005-05-12 12:00 High Speed USB Support? mailinglist
@ 2005-05-12 13:39 ` Clemens Ladisch
  2005-05-12 14:22   ` Lee Revell
  2005-05-12 14:52   ` mailinglist
  0 siblings, 2 replies; 8+ messages in thread
From: Clemens Ladisch @ 2005-05-12 13:39 UTC (permalink / raw)
  To: mailinglist; +Cc: alsa-devel

mailinglist@teg-electronics.com wrote:
> Is the High Speed USB support in the alsa USB audio driver tested?

Yes, with two devices.

The Edirol UA-1000 doesn't really work.  I don't know why because I
don't have access to one anymore.

With the Audigy 2 NX, I get popping noises.

> My main problem at the moment is popping noises, it seems as some data
> is getting lost but I can't see that my buffers get either full or
> empty, so i wonder if this could be caused by the driver.

The driver uses mostly the same code, as the USB core is supposed to
provide the same interface for full speed and high speed devices.

At the moment I'm assuming that there is either a bug in the EHCI
driver, or that the EHCI driver has some requirement that the other
host controller drivers have not.

I'm still debugging, but I'd guess the problem is not with your
device.

BTW: what synchronization type does your device use?


Regards,
Clemens



-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
  2005-05-12 13:39 ` Clemens Ladisch
@ 2005-05-12 14:22   ` Lee Revell
  2005-05-12 14:52   ` mailinglist
  1 sibling, 0 replies; 8+ messages in thread
From: Lee Revell @ 2005-05-12 14:22 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: mailinglist, alsa-devel

On Thu, 2005-05-12 at 15:39 +0200, Clemens Ladisch wrote:
> mailinglist@teg-electronics.com wrote:
> At the moment I'm assuming that there is either a bug in the EHCI
> driver, or that the EHCI driver has some requirement that the other
> host controller drivers have not.

According to the kernel guys there are indeed some known issues with the
EHCI layer that could cause these problems, and they are working on it.

Lee



-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
  2005-05-12 13:39 ` Clemens Ladisch
  2005-05-12 14:22   ` Lee Revell
@ 2005-05-12 14:52   ` mailinglist
  2005-05-17 10:42     ` Clemens Ladisch
  1 sibling, 1 reply; 8+ messages in thread
From: mailinglist @ 2005-05-12 14:52 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

> mailinglist@teg-electronics.com wrote:
>> Is the High Speed USB support in the alsa USB audio driver tested?
>
> Yes, with two devices.
>
> The Edirol UA-1000 doesn't really work.  I don't know why because I
> don't have access to one anymore.
>
> With the Audigy 2 NX, I get popping noises.
>
>> My main problem at the moment is popping noises, it seems as some data
>> is getting lost but I can't see that my buffers get either full or
>> empty, so i wonder if this could be caused by the driver.
>
> The driver uses mostly the same code, as the USB core is supposed to
> provide the same interface for full speed and high speed devices.
>
> At the moment I'm assuming that there is either a bug in the EHCI
> driver, or that the EHCI driver has some requirement that the other
> host controller drivers have not.
>
> I'm still debugging, but I'd guess the problem is not with your
> device.
>
> BTW: what synchronization type does your device use?
>

Thanks for the info.

I have tested both async out and adaptive no difference, except
if I send the wrong byte order to the feedback endpoint which may
lock the computer (I guess I shouldn't do that :-) ).

I was hoping to avoid having do develop a driver by folowing the
USB audio spec, unfortunately neither the general USB audio driver
in Windows or Linux seems to support High Speed USB.

>
> Regards,
> Clemens
>
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by Oracle Space Sweepstakes
> Want to be the first software developer in space?
> Enter now for the Oracle Space Sweepstakes!
> http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/alsa-devel
>




-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
@ 2005-05-12 14:52 mailinglist
  0 siblings, 0 replies; 8+ messages in thread
From: mailinglist @ 2005-05-12 14:52 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

> mailinglist@teg-electronics.com wrote:
>> Is the High Speed USB support in the alsa USB audio driver tested?
>
> Yes, with two devices.
>
> The Edirol UA-1000 doesn't really work.  I don't know why because I
> don't have access to one anymore.
>
> With the Audigy 2 NX, I get popping noises.
>
>> My main problem at the moment is popping noises, it seems as some data
>> is getting lost but I can't see that my buffers get either full or
>> empty, so i wonder if this could be caused by the driver.
>
> The driver uses mostly the same code, as the USB core is supposed to
> provide the same interface for full speed and high speed devices.
>
> At the moment I'm assuming that there is either a bug in the EHCI
> driver, or that the EHCI driver has some requirement that the other
> host controller drivers have not.
>
> I'm still debugging, but I'd guess the problem is not with your
> device.
>
> BTW: what synchronization type does your device use?
>

Thanks for the info.

I have tested both async out and adaptive no difference, except
if I send the wrong byte order to the feedback endpoint which may
lock the computer (I guess I shouldn't do that :-) ).

I was hoping to avoid having do develop a driver by folowing the
USB audio spec, unfortunately neither the general USB audio driver
in Windows or Linux seems to support High Speed USB.

>
> Regards,
> Clemens
>
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by Oracle Space Sweepstakes
> Want to be the first software developer in space?
> Enter now for the Oracle Space Sweepstakes!
> http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/alsa-devel
>




-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
  2005-05-12 14:52   ` mailinglist
@ 2005-05-17 10:42     ` Clemens Ladisch
  2005-05-30 10:54       ` mailinglist
  0 siblings, 1 reply; 8+ messages in thread
From: Clemens Ladisch @ 2005-05-17 10:42 UTC (permalink / raw)
  To: mailinglist; +Cc: alsa-devel

mailinglist@teg-electronics.com wrote:
> if I send the wrong byte order to the feedback endpoint which may
> lock the computer (I guess I shouldn't do that :-) ).

Thanks, fixed now.  :-)

> I was hoping to avoid having do develop a driver by folowing the
> USB audio spec, unfortunately neither the general USB audio driver
> in Windows or Linux seems to support High Speed USB.

Playback on the Audigy 2 NX works fine now.

Please try the latest driver (my patch should be on the public
SourceForge CVS server in a few hours), _and_ apply the following
patch to the kernel:


Index: linux-2.6.11/drivers/usb/host/ehci-sched.c
===================================================================
--- linux-2.6.11.orig/drivers/usb/host/ehci-sched.c	2005-03-02 22:00:29.000000000 +0100
+++ linux-2.6.11/drivers/usb/host/ehci-sched.c	2005-05-14 16:41:21.000000000 +0200
@@ -1203,8 +1203,7 @@
 	struct ehci_itd		*itd,
 	struct ehci_iso_sched	*iso_sched,
 	unsigned		index,
-	u16			uframe,
-	int			first
+	u16			uframe
 )
 {
 	struct ehci_iso_packet	*uf = &iso_sched->packet [index];
@@ -1221,7 +1220,7 @@
 	itd->hw_bufp_hi [pg] |= cpu_to_le32 ((u32)(uf->bufp >> 32));

 	/* iso_frame_desc[].offset must be strictly increasing */
-	if (unlikely (!first && uf->cross)) {
+	if (unlikely (uf->cross)) {
 		u64	bufp = uf->bufp + 4096;
 		itd->pg = ++pg;
 		itd->hw_bufp [pg] |= cpu_to_le32 (bufp & ~(u32)0);
@@ -1250,7 +1249,7 @@
 	struct ehci_iso_stream	*stream
 )
 {
-	int			packet, first = 1;
+	int			packet;
 	unsigned		next_uframe, uframe, frame;
 	struct ehci_iso_sched	*iso_sched = urb->hcpriv;
 	struct ehci_itd		*itd;
@@ -1283,7 +1282,6 @@
 			list_move_tail (&itd->itd_list, &stream->td_list);
 			itd->stream = iso_stream_get (stream);
 			itd->urb = usb_get_urb (urb);
-			first = 1;
 			itd_init (stream, itd);
 		}

@@ -1291,8 +1289,7 @@
 		frame = next_uframe >> 3;

 		itd->usecs [uframe] = stream->usecs;
-		itd_patch (itd, iso_sched, packet, uframe, first);
-		first = 0;
+		itd_patch (itd, iso_sched, packet, uframe);

 		next_uframe += stream->interval;
 		stream->depth += stream->interval;



-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7412&alloc_id=16344&op=click

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
  2005-05-17 10:42     ` Clemens Ladisch
@ 2005-05-30 10:54       ` mailinglist
  2005-05-30 11:52         ` Clemens Ladisch
  0 siblings, 1 reply; 8+ messages in thread
From: mailinglist @ 2005-05-30 10:54 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

Thanks, This works great now!

I have not tested recording yet since I haven't implimented
it on my device yet but playback works perfectly.

Have you tested recording on the Audygy 2 NX ?

Sorry for the slow respones, I had a little vacation.

TEG

> mailinglist@teg-electronics.com wrote:
>> if I send the wrong byte order to the feedback endpoint which may
>> lock the computer (I guess I shouldn't do that :-) ).
>
> Thanks, fixed now.  :-)
>
>> I was hoping to avoid having do develop a driver by folowing the
>> USB audio spec, unfortunately neither the general USB audio driver
>> in Windows or Linux seems to support High Speed USB.
>
> Playback on the Audigy 2 NX works fine now.
>
> Please try the latest driver (my patch should be on the public
> SourceForge CVS server in a few hours), _and_ apply the following
> patch to the kernel:
>
>
> Index: linux-2.6.11/drivers/usb/host/ehci-sched.c
> ===================================================================
> --- linux-2.6.11.orig/drivers/usb/host/ehci-sched.c	2005-03-02
> 22:00:29.000000000 +0100
> +++ linux-2.6.11/drivers/usb/host/ehci-sched.c	2005-05-14
> 16:41:21.000000000 +0200
> @@ -1203,8 +1203,7 @@
>  	struct ehci_itd		*itd,
>  	struct ehci_iso_sched	*iso_sched,
>  	unsigned		index,
> -	u16			uframe,
> -	int			first
> +	u16			uframe
>  )
>  {
>  	struct ehci_iso_packet	*uf = &iso_sched->packet [index];
> @@ -1221,7 +1220,7 @@
>  	itd->hw_bufp_hi [pg] |= cpu_to_le32 ((u32)(uf->bufp >> 32));
>
>  	/* iso_frame_desc[].offset must be strictly increasing */
> -	if (unlikely (!first && uf->cross)) {
> +	if (unlikely (uf->cross)) {
>  		u64	bufp = uf->bufp + 4096;
>  		itd->pg = ++pg;
>  		itd->hw_bufp [pg] |= cpu_to_le32 (bufp & ~(u32)0);
> @@ -1250,7 +1249,7 @@
>  	struct ehci_iso_stream	*stream
>  )
>  {
> -	int			packet, first = 1;
> +	int			packet;
>  	unsigned		next_uframe, uframe, frame;
>  	struct ehci_iso_sched	*iso_sched = urb->hcpriv;
>  	struct ehci_itd		*itd;
> @@ -1283,7 +1282,6 @@
>  			list_move_tail (&itd->itd_list, &stream->td_list);
>  			itd->stream = iso_stream_get (stream);
>  			itd->urb = usb_get_urb (urb);
> -			first = 1;
>  			itd_init (stream, itd);
>  		}
>
> @@ -1291,8 +1289,7 @@
>  		frame = next_uframe >> 3;
>
>  		itd->usecs [uframe] = stream->usecs;
> -		itd_patch (itd, iso_sched, packet, uframe, first);
> -		first = 0;
> +		itd_patch (itd, iso_sched, packet, uframe);
>
>  		next_uframe += stream->interval;
>  		stream->depth += stream->interval;
>
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by Oracle Space Sweepstakes
> Want to be the first software developer in space?
> Enter now for the Oracle Space Sweepstakes!
> http://ads.osdn.com/?ad_id=7412&alloc_id=16344&op=click
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/alsa-devel
>




-------------------------------------------------------
This SF.Net email is sponsored by Yahoo.
Introducing Yahoo! Search Developer Network - Create apps using Yahoo!
Search APIs Find out how you can build Yahoo! directly into your own
Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: High Speed USB Support?
  2005-05-30 10:54       ` mailinglist
@ 2005-05-30 11:52         ` Clemens Ladisch
  0 siblings, 0 replies; 8+ messages in thread
From: Clemens Ladisch @ 2005-05-30 11:52 UTC (permalink / raw)
  To: mailinglist; +Cc: alsa-devel

mailinglist@teg-electronics.com wrote:
> I have not tested recording yet since I haven't implimented
> it on my device yet but playback works perfectly.
>
> Have you tested recording on the Audygy 2 NX ?

Yes.  Doesn't work at all.

So far I haven't been able to determine whether it's some
incompatibility of the Audigy device or another bug in the EHCI
driver, but I think it's the latter.


Regards,
Clemens



-------------------------------------------------------
This SF.Net email is sponsored by Yahoo.
Introducing Yahoo! Search Developer Network - Create apps using Yahoo!
Search APIs Find out how you can build Yahoo! directly into your own
Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2005-05-30 11:52 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-05-12 12:00 High Speed USB Support? mailinglist
2005-05-12 13:39 ` Clemens Ladisch
2005-05-12 14:22   ` Lee Revell
2005-05-12 14:52   ` mailinglist
2005-05-17 10:42     ` Clemens Ladisch
2005-05-30 10:54       ` mailinglist
2005-05-30 11:52         ` Clemens Ladisch
  -- strict thread matches above, loose matches on Subject: below --
2005-05-12 14:52 mailinglist

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.