Re: [linux-usb-devel] Questions about usb hub

2007-07-02 Thread Alan Stern
On Mon, 2 Jul 2007, jidong xiao wrote: > Another separate issue,still focus on this piece of code,(inside > drivers/usb/core/hub.c, hub_configure()) > > > > > > > 570 switch (hdev->descriptor.bDeviceProtocol) { > > > 571 case 0: > > > 572

Re: [linux-usb-devel] Questions about usb hub

2007-07-01 Thread David Brownell
On Sunday 01 July 2007, jidong xiao wrote: > > Now my concern is, for root hub, here we can see, hcd->driver->flags > will be used to decide which descriptor will be returned, however, > what if non-root hub? Then the hub hardware answers the question -- as I said before. --

Re: [linux-usb-devel] Questions about usb hub

2007-07-01 Thread jidong xiao
Another separate issue,still focus on this piece of code,(inside drivers/usb/core/hub.c, hub_configure()) > > > > 570 switch (hdev->descriptor.bDeviceProtocol) { > > 571 case 0: > > 572 break; > > 573 case 1: > > 5

Re: [linux-usb-devel] Questions about usb hub

2007-07-01 Thread jidong xiao
Great,thanks Alan and David. Your answers are exactly what I really needed. Alan, According to your implication,I took a look at rh_call_control(),and finally found such piece of code,I felt this explains my question clearly. 376 case DeviceRequest | USB_REQ_GET_DESCRIPTOR: 377

Re: [linux-usb-devel] Questions about usb hub

2007-07-01 Thread Alan Stern
Dave already answered some of these questions. Here are my views: On Sun, 1 Jul 2007, jidong xiao wrote: > about device descriptor,according to usb spec 2.0, > 1. A hub returns different descriptors based on whether it is > operating at high speed or full/low speed.A hub can report three > diffe

Re: [linux-usb-devel] Questions about usb hub

2007-07-01 Thread David Brownell
On Sunday 01 July 2007, jidong xiao wrote: > Take root hub for example, how does the hub itself know whether its > upstream facing port is connected at high-speed or > full-speed? There *IS* no upstream facing port. The upstream link hooks to a non-USB bus. > Futhermore, if a host send a GET_D