On Wed, 23 Aug 2006, Iñaky Pérez-González wrote:

> I was thinking about something like the following in my hc_probe():
> 
> ...
> usb_add_hcd(hcd);
> if (wait_event_timeout(&wq, hcd->rh_registered != 0, TIMEOUT) == 0) {
>       result = -ETIMEDOUT;
>       goto error...;
> }
> spin_lock_irqsave (&hcd_root_hub_lock, flags);
> if (hcd->rh_registered) {
>       struct usb_hub *usb;
>       hub = hdev_to_hub(hcd->self.root_hub);
>       hub->wireless = 1;
> }
> else {
>       result = -ENODEV;
>       spin_unlock_irqrestore (&hcd_root_hub_lock, flags);
>       goto error_..
> }
> spin_unlock_irqrestore (&hcd_root_hub_lock, flags);

This won't be easy.  For one thing, hcd_root_hub_lock is private to hcd.c 
and hdev_to_hub is private to hub.c.

Are you sure you need to store this information in the hub structure?  
Wouldn't it make more sense to store it in the hcd structure instead?  
After all, it is a property of the entire bus and not just one 
particular hub, right?

Alan Stern


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to