On Thursday 24 May 2007, Alan Stern wrote:
> Dave:
>
> In this section from usb_new_device():
>
> if (!is_targeted(udev)) {
>
> /* Maybe it can talk to us, though we can't talk to it.
> * (Includes HNP test device.)
> */
> if (udev->bus->b_hnp_enable || udev->bus->is_b_host) {
> err = __usb_port_suspend(udev, udev->bus->otg_port);
> if (err < 0)
> dev_dbg(&udev->dev, "HNP fail, %d\n", err);
> }
>
> Is there any reason to call __usb_port_suspend() rather than
> usb_port_suspend()?
Maybe not any more.
> After all, an OTG device is required to have no
> more than one USB connection, so the port number would always be equal
> to udev->portnum and to 1.
Not true. It's perfectly legit for a host to have multiple host
ports, with only one of them being OTG-capable. Not uncommon either;
it's a simple implementation strategy (combining existing silicon IP
with an OTG engine), and board designers find serial busses like USB
are handy as a way to integrate various devices ... simple to route
on the boards, only two pins, and so forth. It's not just a way to
connect external devices.
- Dave
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel