Everyone: The following series of patches implements Greg's suggestion that gadgets should be registered on some sort of bus. It turns out that the best way to do this is to create a new "gadget" bus, with specialized matching and probing routines, rather than using an existing bus. Patches 1-3 are simple preparations for the big change. They stand on their own, make useful little changes, and could be merged by themselves without committing to adding the "gadget" bus. Patch 4 is main one. I'm posting this series for feedback from the Gadget/UDC maintainer and others. If everything works out okay, the patches can be submitted for real once the upcoming merge window closes. Alan Stern