Re: [PATCH 4/4] usb: phy: twl4030: test ID resistance to see if charger is present.

From: NeilBrown
Date: Wed Mar 04 2015 - 01:40:35 EST


On Mon, 2 Mar 2015 22:04:44 +0100 Pavel Machek <pavel@xxxxxx> wrote:

> On Tue 2015-02-24 14:40:37, NeilBrown wrote:
> > If an 'A' plug is inserted, ID should be pulled to ground.
> > If a 'B' plug, then ID should be floating.
> >
> > If an Accessory Charger Adapter is inserted, then ID will
> > be neither grounded nor floating. In this case tell the
> > USB subsystem that it is an A plug, and the battery
> > charging subsystem that it is a charger.
>
> > Fortunately, this will treat the Openmoko charger (and
> > other similar chargers) as a charger.
> >
> > Signed-off-by: NeilBrown <neilb@xxxxxxx>
>
> I guess signed-off-by should be "real name", so I'd add a space..

This is how I always sign-off my name (2858 times in "git log") so I don't
think I'll change it now.

>
> Acked-by: Pavel Machek <pavel@xxxxxx>

Thanks.

>
> > --- a/drivers/phy/phy-twl4030-usb.c
> > +++ b/drivers/phy/phy-twl4030-usb.c
> > @@ -596,9 +596,31 @@ static irqreturn_t twl4030_usb_irq(int irq, void *_twl)
> > struct twl4030_usb *twl = _twl;
> > enum omap_musb_vbus_id_status status;
> > bool status_changed = false;
> > + bool found_charger = false;
> >
> > status = twl4030_usb_linkstat(twl);
> >
> > + if (status == OMAP_MUSB_ID_GROUND ||
> > + status == OMAP_MUSB_VBUS_VALID) {
> > + /* We should check the resistance on the ID pin.
> > + * If not a Ground or Floating, then this is
> > + * likely a charger
>
> "charger.", and I guess kernel comments should have /* on separate line.

Yep.

>
> So it will draw .5A from the charger? 1A? 2A?
>
> Pavel

That is up to the charger driver. The phy just detects what is there, it
doesn't decide what to do with it.

Thanks,
NeilBrown

Attachment: pgpiQUIdGe6Ha.pgp
Description: OpenPGP digital signature