I think moving hub.h into include/linux/usb would be a good thing.
However, if this is done then the file contents should be rearranged
slightly:
Everything from the "Hub request types" comment through the
various HUB_TTTT_* definitions (except the line declaring
struct usb_device) should be extracted into a separate file.
This new file could be called ch11.h (because it contains
constants and structures from Chapter 11 of the USB 2.0 spec,
just as ch9.h contains information from Chapter 9) or it
could keep the name hub.h. It could even be exported as
a userspace header file.
The remainder (not very much) should be merged into hcd.h.
Once that's done, moving hcd.h into include/linux/usb would be a
reasonable thing to do as well. It is shared between usbcore and the
HCDs, so it really does belong in a more public location.
Alan Stern
--