On Tue, Jul 02, 2019 at 09:33:11PM +1000, Benjamin Herrenschmidt wrote: > Hi folks ! > > The Aspeed USB gadget "vhub" implements a hub emulation with a number > of UDCs representing the hub slots. It's working ok now and has been > upstream for a bit, however, one thing that's been annoying to some > users is that I've just hard coded the hub's device descriptor. IE, the > vendor/product ID, strings etc... > > Various BMC SW stack vendors want to customize that, also possibly the > number of ports etc... > > I originally thought about configfs but after more thoughts I don't > think it's really a good fit. The vhub is a fixed thing. When you have > the HW, you have that hub, it's not like you can create different > things, and populate differently. > > That leaves me with two approaches, that aren't mutually exclusive, but > I'd like to run them past the folks here before I start coding: > > - The defaults, currently hard coded, could be replaced with Kconfig > options. > > - The device-tree node could contain optional override of those > defaults, allowing a vendor to customize the hub for a given board. > It's not per-se a HW description, but the device-tree is also fairly > commonly used for HW configuration, even if some people disagree with > me on that one (hint: they are wrong :-) > > - I could add sysfs properties underneath the vhub device instance to > customize it. This would also allow userspace to control whether the > hub is "connected" to the host or not, which could be useful, some > systems don't want it to always be there. Today there's no choice. > > Any other option ? If somebody says netlink I will scream :) DT seems like the logical choice, I'll not object to that. thanks, greg k-h