Can a particular interface have same Endpoint addresses?

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

 



Hello,

         Like to thank Henry Gebhardt, Greg KH and Alan Stern for
helping me out with answering the USB
questions that I posed to this list. Continuing with my learning USB,
I have the following doubt...

On connecting a USB pendrive and viewing the /proc/bus/usb/devices I get
the endpoint addresses assigned as

E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

Here the OUT endpoint is address 1 and IN is address 2, this I can
understand because the endpoints have been assigned different addresses.

But on connecting another USB mass storage device, I get this

T:  Bus=01 Lev=01 Prnt=01 Port=03 Cnt=02 Dev#=  6 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0bc2 ProdID=2000 Rev= 0.00
S:  Manufacturer=Seagate
S:  Product=FreeAgent Go
S:  SerialNumber=            5MA7YVCP
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50
Driver=usb-storage
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

Here both OUT and IN endpoints have been assigned the address 1 !! Is
this normal behavior? When a packet is sent by the host to the device
with address 6, with just one interface, can both endpoints be assigned
the same address?

I also read that we can have a total of 16 endpoints (hard limit 30) for
a single interface. With just OUT and IN being the only endpoints a
particular interface can possibly have, what is the need for the other
14 endpoints?


Thanks in advance,

Regards,
Nicholas
--
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