Re: [PATCH 3/6] twl4030_charger: allow charging whenever VBUS is present.
On Wed, 25 Apr 2012 14:33:25 +0300 Grazvydas Ignotas nota...@gmail.com wrote: On Wed, Apr 25, 2012 at 10:33 AM, NeilBrown ne...@suse.de wrote: We currently refuse to charge if the USB ID pin is grounded, even though VBUS might be present. However some chargers do pull the ID pin low through a resistor which might be as low as 47Kohm (openmoko charger). The documentation is unclear but some experimental evidence suggests that when the charge pump provides VBUS that doesn't get reflected in HW_CONDITIONS, so we should be safe to ignore the ID pin. On pandora I see the opposite, STS_VBUS is set regardless of who drives it, so this will break pandora.. OK... I guess this needs more thought. I'll withdraw this patch and 6/6 for now. The rest should be good to go. Maybe I'll resend them an include Anton Vorontsov.. Thanks, NeilBrown Signed-off-by: NeilBrown ne...@suse.de --- drivers/power/twl4030_charger.c | 6 +- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/drivers/power/twl4030_charger.c b/drivers/power/twl4030_charger.c index 0511610..684662a 100644 --- a/drivers/power/twl4030_charger.c +++ b/drivers/power/twl4030_charger.c @@ -155,11 +155,7 @@ static int twl4030_bci_have_vbus(struct twl4030_bci *bci) dev_dbg(bci-dev, check_vbus: HW_CONDITIONS %02x\n, hwsts); - /* in case we also have STS_USB_ID, VBUS is driven by TWL itself */ - if ((hwsts TWL4030_STS_VBUS) !(hwsts TWL4030_STS_USB_ID)) - return 1; - - return 0; + return (hwsts TWL4030_STS_VBUS); } /* signature.asc Description: PGP signature
[PATCH 3/6] twl4030_charger: allow charging whenever VBUS is present.
We currently refuse to charge if the USB ID pin is grounded, even though VBUS might be present. However some chargers do pull the ID pin low through a resistor which might be as low as 47Kohm (openmoko charger). The documentation is unclear but some experimental evidence suggests that when the charge pump provides VBUS that doesn't get reflected in HW_CONDITIONS, so we should be safe to ignore the ID pin. Signed-off-by: NeilBrown ne...@suse.de --- drivers/power/twl4030_charger.c |6 +- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/drivers/power/twl4030_charger.c b/drivers/power/twl4030_charger.c index 0511610..684662a 100644 --- a/drivers/power/twl4030_charger.c +++ b/drivers/power/twl4030_charger.c @@ -155,11 +155,7 @@ static int twl4030_bci_have_vbus(struct twl4030_bci *bci) dev_dbg(bci-dev, check_vbus: HW_CONDITIONS %02x\n, hwsts); - /* in case we also have STS_USB_ID, VBUS is driven by TWL itself */ - if ((hwsts TWL4030_STS_VBUS) !(hwsts TWL4030_STS_USB_ID)) - return 1; - - return 0; + return (hwsts TWL4030_STS_VBUS); } /* -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 3/6] twl4030_charger: allow charging whenever VBUS is present.
On Wed, Apr 25, 2012 at 10:33 AM, NeilBrown ne...@suse.de wrote: We currently refuse to charge if the USB ID pin is grounded, even though VBUS might be present. However some chargers do pull the ID pin low through a resistor which might be as low as 47Kohm (openmoko charger). The documentation is unclear but some experimental evidence suggests that when the charge pump provides VBUS that doesn't get reflected in HW_CONDITIONS, so we should be safe to ignore the ID pin. On pandora I see the opposite, STS_VBUS is set regardless of who drives it, so this will break pandora.. Signed-off-by: NeilBrown ne...@suse.de --- drivers/power/twl4030_charger.c | 6 +- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/drivers/power/twl4030_charger.c b/drivers/power/twl4030_charger.c index 0511610..684662a 100644 --- a/drivers/power/twl4030_charger.c +++ b/drivers/power/twl4030_charger.c @@ -155,11 +155,7 @@ static int twl4030_bci_have_vbus(struct twl4030_bci *bci) dev_dbg(bci-dev, check_vbus: HW_CONDITIONS %02x\n, hwsts); - /* in case we also have STS_USB_ID, VBUS is driven by TWL itself */ - if ((hwsts TWL4030_STS_VBUS) !(hwsts TWL4030_STS_USB_ID)) - return 1; - - return 0; + return (hwsts TWL4030_STS_VBUS); } /* -- Gražvydas -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html