Re: [PATCH v12 4/4] power: wm831x_power: Support USB charger current limit management

From: Baolin Wang
Date: Tue Jun 21 2016 - 07:58:49 EST


On 21 June 2016 at 19:53, Felipe Balbi <balbi@xxxxxxxxxx> wrote:
>
> Hi,
>
> Baolin Wang <baolin.wang@xxxxxxxxxx> writes:
>> On 21 June 2016 at 19:03, Mark Brown <broonie@xxxxxxxxxx> wrote:
>>> On Tue, Jun 21, 2016 at 01:30:49PM +0300, Felipe Balbi wrote:
>>>> Baolin Wang <baolin.wang@xxxxxxxxxx> writes:
>>>> > @@ -607,8 +647,31 @@ static int wm831x_power_probe(struct platform_device *pdev)
>>>> > }
>>>> > }
>>>
>>>> > + if (wm831x_pdata && wm831x_pdata->usb_gadget) {
>>>> > + power->usb_charger =
>>>> > + usb_charger_find_by_name(wm831x_pdata->usb_gadget);
>>>
>>>> the fact that you rely on strings and pass them via pdata is an
>>>> indication that you don't have enough description of the HW. Seems like
>>>> we need to come up with a set of DT properties which tie a charger to a
>>>> UDC.
>>>
>>>> I'm thinking a phandle would be enough?
>>>
>>> The wm831x has no DT support currently.
>>
>> Another hand I suppose the usb charger is one virtual device and does
>> not need be described from DT.
>
> Right, I don't think that should be a device at all. But you can pass a
> phandle to the UDC controller and use that to get to struct usb_gadget
> from which you could reach ->charger.

Ah, make sense.

--
Baolin.wang
Best Regards