Lines Matching refs:usb_hcd
25 * Controllers (struct wusbhc, embedding a struct usb_hcd) and is used
80 * Note this "complements" the 'struct usb_device' that the usb_hcd
166 * @usb_hcd Instantiation of a USB host controller
244 * calling usb_hcd_add(&wusbhc->usb_hcd).
247 struct usb_hcd usb_hcd; /* HAS TO BE 1st */
300 #define usb_hcd_to_wusbhc(u) container_of((u), struct wusbhc, usb_hcd)
322 * Return @usb_dev's @usb_hcd (properly referenced) or NULL if gone
329 static inline struct usb_hcd *usb_hcd_get_by_usb_dev(struct usb_device *usb_dev)
331 struct usb_hcd *usb_hcd;
332 usb_hcd = container_of(usb_dev->bus, struct usb_hcd, self);
333 return usb_get_hcd(usb_hcd);
339 * @wusbhc's life cycle is identical to that of the underlying usb_hcd.
343 return usb_get_hcd(&wusbhc->usb_hcd) ? wusbhc : NULL;
352 * WARNING: referenced at the usb_hcd level, unlocked
359 struct usb_hcd *usb_hcd;
366 usb_hcd = usb_hcd_get_by_usb_dev(usb_dev);
367 if (usb_hcd == NULL)
369 BUG_ON(usb_hcd->wireless == 0);
370 return wusbhc = usb_hcd_to_wusbhc(usb_hcd);
376 usb_put_hcd(&wusbhc->usb_hcd);
400 extern int wusbhc_rh_status_data(struct usb_hcd *, char *);
401 extern int wusbhc_rh_control(struct usb_hcd *, u16, u16, u16, char *, u16);
402 extern int wusbhc_rh_suspend(struct usb_hcd *);
403 extern int wusbhc_rh_resume(struct usb_hcd *);
404 extern int wusbhc_rh_start_port_reset(struct usb_hcd *, unsigned);