RE: USB Interrupt Transaction Scheduling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 
> Becides just testing to see if we do follow these things, what is your end goal
> here?  Are you trying to determine how many devices you should be able to
> successfully plug into a machine and have them work properly?
> 
> Or something else?

In our first release, we are considering 8 devices giving us a total of 24 interrupt endpoints at 64 bytes each.  Not all endpoints would be sending data every millisecond, but we want the bandwidth reserved over bulk traffic.  Based on the USB specification, we were investigating how to reduce the endpoint sizes to meet the limit in the standard.  After this testing, it appears that we allocate more than what is listed in the USB 2.0 full-speed maximum limits in table 5.7.  


> 
> Watch out when using USB 1.1 hubs plugged into a EHCI controller, there are
> some "tricky" things happening at times that can get messy.  I'd not
> recommend doing that if you can avoid it.
> 

Our design uses USB 2.0 high speed hubs with the EHCI driver.  The use of USB 1.1 hubs was for this testing only.


> Setup #2:
> Kernel 3.10.0
> Connect 7 USB devices (each with 2 IN and 1 OUT interrupt endpoints
> @64 bytes) to USB 2.0 high speed hubs to a PC USB 2.0 port.  The test 
> application can communicate with all 21 endpoints.  This appears to 
> violate the full speed limitation; however, it wouldn't be violating 
> the high speed limitation of 63 endpoints per micro-frame.

>
> You don't say what the devices are rated to be, full/low/high/super speed,
> which matters a lot here.
> 

In both Setup #1 and Setup #2 the 7 USB devices were running USB 2.0 full speed.


Thanks,
-Nate
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux