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. -- balbi
Attachment:
signature.asc
Description: PGP signature