On Sat, Sep 10, 2016 at 07:57:26AM +1000, NeilBrown wrote: > On Fri, Sep 09 2016, Mark Brown wrote: > > The wm831x driver in the patch series is an example of such hardware - > > it is purely a power manager, it has no USB PHY hardware at all. It's a > The "probe" routine calls > + usb_charger_find_by_name(wm831x_pdata->usb_gadget); > Presumably wm831x_pdata is initialised by a board file? Yes. > I strongly suspect it is initialized to "usb-charger.0" because the > names given to usb chargers are "usb-charger.%d" in discovery order. > I don't see this being at all useful if there is ever more than one > usb-charger. > Do you? It's no worse than any other board file situation - if someone has that problem they get to fix it. > So how can this wm831x driver actually find out what sort of charger is > connected and so set the power limit? I just don't see this working *at* > *all*. The whole point from the point of view of the wm831x driver is that it just wants something to tell it how much current it's allowed to draw, I appreciate that doesn't change your analysis of the bit in the middle but the consumer driver bit seems fine here.