Re: [PATCH v16 0/4] Introduce usb charger framework to deal with the usb gadget power negotation
From: Mark Brown
Date: Mon Sep 12 2016 - 11:27:44 EST
On Mon, Sep 12, 2016 at 03:27:18PM +0200, NeilBrown wrote:
> On Mon, Sep 12 2016, Mark Brown wrote:
> > It's no worse than any other board file situation - if someone has that
> > problem they get to fix it.
> My point is that the present design does not appear to scale beyond a
> single USB power supply (as if there were two, they would be named in
> discovery order, which is not reliably stable).
For the practical purposes of people making systems (as opposed to
upstream where this is likely to get most use) it pretty much is.
Though quite how many systems have multiple chargers is itself also a
question.
> Your point is, I think, that when someone actually cares about that lack
> of scaling, they can fix it.
Yes.
> I am perfectly happy with that approach. However if the code doesn't
> scale beyond one charger, it shouldn't pretend that it does.
> i.e.
> Don't have "usb_charger_find_by_name()", just a global "usb_charger"
> (or similar).
> The first charger to register gets to be the "usb_charger". The
> second one gets an error.
> I could be quite happy with that sort of interface.
Well, a fairly standard way of extending would be to allow the explicit
assignment of names to chargers so this'd avoid such churn.
> > 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.
> Yes, the wm831x driver probably does the right thing.
> Other drivers might want to know not only the minimum they are allowed
> to draw, but also the maximum they should try even if they are carefully
> monitoring the voltage.
> So wm831x is doing the right thing with the wrong interface. Maybe you
> can describe that as "fine".
That's not actually 100% clear to me - for what the wm831x is doing it
probably *does* want the higher limit. This is a system inflow limit
(as it should be for this), at least the charger will adapt to voltage
variations though other users in the system are much less likely to do
so.
Attachment:
signature.asc
Description: PGP signature