* [PATCH] USB: otg: twl4030: fix phy initialization(v1)
@ 2010-09-06 15:27 tom.leiming
0 siblings, 0 replies; 17+ messages in thread
From: tom.leiming @ 2010-09-06 15:27 UTC (permalink / raw)
To: greg
Cc: linux-usb, linux-omap, linux-kernel, Ming Lei, David Brownell,
Felipe Balbi, Anand Gadiyar, Mike Frysinger, Sergei Shtylyov
From: Ming Lei <tom.leiming@gmail.com>
Commit 461c317705eca5cac09a360f488715927fd0a927(into 2.6.36-v3)
is put forward to power down phy if no usb cable is connected,
but does introduce the two issues below:
1), phy is not into work state if usb cable is connected
with PC during poweron, so musb device mode is not usable
in such case, follows the reasons:
-twl4030_phy_resume is not called, so
regulators are not enabled
i2c access are not enabled
usb mode not configurated
2), The kernel warings[1] of regulators 'unbalanced disables'
is caused if poweron without usb cable connected
with PC or b-device.
This patch fixes the two issues above:
-power down phy only if no usb cable is connected with PC
and b-device
-do phy initialization(via __twl4030_phy_resume) if usb cable
is connected with PC(vbus event) or another b-device(ID event) in
twl4030_usb_probe.
This patch also doesn't put VUSB3V1 LDO into active mode in
twl4030_usb_ldo_init until VBUS/ID change detected, so we can
save more power consumption than before.
This patch is verified OK on Beagle board either connected with
usb cable or not when poweron.
[1]. warnings of 'unbalanced disables' of regulators.
[root@OMAP3EVM /]# dmesg
------------[ cut here ]------------
WARNING: at drivers/regulator/core.c:1357 _regulator_disable+0x38/0x128()
unbalanced disables for VUSB1V8
Modules linked in:
Backtrace:
[<c0030c48>] (dump_backtrace+0x0/0x110) from [<c034f5a8>] (dump_stack+0x18/0x1c)
r7:c78179d8 r6:c01ed6b8 r5:c0410822 r4:0000054d
[<c034f590>] (dump_stack+0x0/0x1c) from [<c0057da8>] (warn_slowpath_common+0x54/0x6c)
[<c0057d54>] (warn_slowpath_common+0x0/0x6c) from [<c0057e64>] (warn_slowpath_fmt+0x38/0x40)
r9:00000000 r8:00000000 r7:c78e6608 r6:00000000 r5:fffffffb
r4:c78e6c00
[<c0057e2c>] (warn_slowpath_fmt+0x0/0x40) from [<c01ed6b8>] (_regulator_disable+0x38/0x128)
r3:c0410e53 r2:c0410ad5
[<c01ed680>] (_regulator_disable+0x0/0x128) from [<c01ed87c>] (regulator_disable+0x24/0x38)
r7:c78e6608 r6:00000000 r5:c78e6c40 r4:c78e6c00
[<c01ed858>] (regulator_disable+0x0/0x38) from [<c02382dc>] (twl4030_phy_power+0x15c/0x17c)
r5:c78595c0 r4:00000000
[<c0238180>] (twl4030_phy_power+0x0/0x17c) from [<c023831c>] (twl4030_phy_suspend+0x20/0x2c)
r6:00000000 r5:c78595c0 r4:c78595c0
[<c02382fc>] (twl4030_phy_suspend+0x0/0x2c) from [<c0238638>] (twl4030_usb_irq+0x11c/0x16c)
r5:c78595c0 r4:00000040
[<c023851c>] (twl4030_usb_irq+0x0/0x16c) from [<c034ec18>] (twl4030_usb_probe+0x2c4/0x32c)
r6:00000000 r5:00000000 r4:c78595c0
[<c034e954>] (twl4030_usb_probe+0x0/0x32c) from [<c02152a0>] (platform_drv_probe+0x20/0x24)
r7:00000000 r6:c047d49c r5:c78e6608 r4:c047d49c
[<c0215280>] (platform_drv_probe+0x0/0x24) from [<c0214244>] (driver_probe_device+0xd0/0x190)
[<c0214174>] (driver_probe_device+0x0/0x190) from [<c02143d4>] (__device_attach+0x44/0x48)
r7:00000000 r6:c78e6608 r5:c78e6608 r4:c047d49c
[<c0214390>] (__device_attach+0x0/0x48) from [<c0213694>] (bus_for_each_drv+0x50/0x90)
r5:c0214390 r4:00000000
[<c0213644>] (bus_for_each_drv+0x0/0x90) from [<c0214474>] (device_attach+0x70/0x94)
r6:c78e663c r5:c78e6608 r4:c78e6608
[<c0214404>] (device_attach+0x0/0x94) from [<c02134fc>] (bus_probe_device+0x2c/0x48)
r7:00000000 r6:00000002 r5:c78e6608 r4:c78e6600
[<c02134d0>] (bus_probe_device+0x0/0x48) from [<c0211e48>] (device_add+0x340/0x4b4)
[<c0211b08>] (device_add+0x0/0x4b4) from [<c021597c>] (platform_device_add+0x110/0x16c)
[<c021586c>] (platform_device_add+0x0/0x16c) from [<c0220cb0>] (add_numbered_child+0xd8/0x118)
r7:00000000 r6:c045f15c r5:c78e6600 r4:00000000
[<c0220bd8>] (add_numbered_child+0x0/0x118) from [<c001c618>] (twl_probe+0x3a4/0x72c)
[<c001c274>] (twl_probe+0x0/0x72c) from [<c02601ac>] (i2c_device_probe+0x7c/0xa4)
[<c0260130>] (i2c_device_probe+0x0/0xa4) from [<c0214244>] (driver_probe_device+0xd0/0x190)
r5:c7856e20 r4:c047c860
[<c0214174>] (driver_probe_device+0x0/0x190) from [<c02143d4>] (__device_attach+0x44/0x48)
r7:c7856e04 r6:c7856e20 r5:c7856e20 r4:c047c860
[<c0214390>] (__device_attach+0x0/0x48) from [<c0213694>] (bus_for_each_drv+0x50/0x90)
r5:c0214390 r4:00000000
[<c0213644>] (bus_for_each_drv+0x0/0x90) from [<c0214474>] (device_attach+0x70/0x94)
r6:c7856e54 r5:c7856e20 r4:c7856e20
[<c0214404>] (device_attach+0x0/0x94) from [<c02134fc>] (bus_probe_device+0x2c/0x48)
r7:c7856e04 r6:c78fd048 r5:c7856e20 r4:c7856e20
[<c02134d0>] (bus_probe_device+0x0/0x48) from [<c0211e48>] (device_add+0x340/0x4b4)
[<c0211b08>] (device_add+0x0/0x4b4) from [<c0211fd8>] (device_register+0x1c/0x20)
[<c0211fbc>] (device_register+0x0/0x20) from [<c0260aa8>] (i2c_new_device+0xec/0x150)
r5:c7856e00 r4:c7856e20
[<c02609bc>] (i2c_new_device+0x0/0x150) from [<c0260dc0>] (i2c_register_adapter+0xa0/0x1c4)
r7:00000000 r6:c78fd078 r5:c78fd048 r4:c781d5c0
[<c0260d20>] (i2c_register_adapter+0x0/0x1c4) from [<c0260f80>] (i2c_add_numbered_adapter+0x9c/0xb4)
r7:00000a28 r6:c04600a8 r5:c78fd048 r4:00000000
[<c0260ee4>] (i2c_add_numbered_adapter+0x0/0xb4) from [<c034efa4>] (omap_i2c_probe+0x324/0x3e8)
r5:00000000 r4:c78fd000
[<c034ec80>] (omap_i2c_probe+0x0/0x3e8) from [<c02152a0>] (platform_drv_probe+0x20/0x24)
[<c0215280>] (platform_drv_probe+0x0/0x24) from [<c0214244>] (driver_probe_device+0xd0/0x190)
[<c0214174>] (driver_probe_device+0x0/0x190) from [<c021436c>] (__driver_attach+0x68/0x8c)
r7:c78b2140 r6:c047e214 r5:c04600e4 r4:c04600b0
[<c0214304>] (__driver_attach+0x0/0x8c) from [<c021399c>] (bus_for_each_dev+0x50/0x84)
r7:c78b2140 r6:c047e214 r5:c0214304 r4:00000000
[<c021394c>] (bus_for_each_dev+0x0/0x84) from [<c0214068>] (driver_attach+0x20/0x28)
r6:c047e214 r5:c047e214 r4:c00270d0
[<c0214048>] (driver_attach+0x0/0x28) from [<c0213274>] (bus_add_driver+0xa8/0x228)
[<c02131cc>] (bus_add_driver+0x0/0x228) from [<c02146a4>] (driver_register+0xb0/0x13c)
[<c02145f4>] (driver_register+0x0/0x13c) from [<c0215744>] (platform_driver_register+0x4c/0x60)
r9:00000000 r8:c001f688 r7:00000013 r6:c005b6fc r5:c00083dc
r4:c00270d0
[<c02156f8>] (platform_driver_register+0x0/0x60) from [<c001f69c>] (omap_i2c_init_driver+0x14/0x1c)
[<c001f688>] (omap_i2c_init_driver+0x0/0x1c) from [<c002c460>] (do_one_initcall+0xd0/0x1a4)
[<c002c390>] (do_one_initcall+0x0/0x1a4) from [<c0008478>] (kernel_init+0x9c/0x154)
[<c00083dc>] (kernel_init+0x0/0x154) from [<c005b6fc>] (do_exit+0x0/0x688)
r5:c00083dc r4:00000000
---[ end trace 1b75b31a2719ed1d ]---
Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: Felipe Balbi <me@felipebalbi.com>
Cc: Anand Gadiyar <gadiyar@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
---
v1:
-Keep VUSB3V1 LDO in sleep state until VBUS/ID change detected
-remove old_pwr local varibles in __twl4030_phy_power on Felipe's
suggestion
---
drivers/usb/otg/twl4030-usb.c | 78 ++++++++++++++++++++++++++--------------
1 files changed, 51 insertions(+), 27 deletions(-)
diff --git a/drivers/usb/otg/twl4030-usb.c b/drivers/usb/otg/twl4030-usb.c
index 05aaac1..0bc9769 100644
--- a/drivers/usb/otg/twl4030-usb.c
+++ b/drivers/usb/otg/twl4030-usb.c
@@ -347,11 +347,20 @@ static void twl4030_i2c_access(struct twl4030_usb *twl, int on)
}
}
-static void twl4030_phy_power(struct twl4030_usb *twl, int on)
+static void __twl4030_phy_power(struct twl4030_usb *twl, int on)
{
- u8 pwr;
+ u8 pwr = twl4030_usb_read(twl, PHY_PWR_CTRL);
+
+ if (on)
+ pwr &= ~PHY_PWR_PHYPWD;
+ else
+ pwr |= PHY_PWR_PHYPWD;
- pwr = twl4030_usb_read(twl, PHY_PWR_CTRL);
+ WARN_ON(twl4030_usb_write_verify(twl, PHY_PWR_CTRL, pwr) < 0);
+}
+
+static void twl4030_phy_power(struct twl4030_usb *twl, int on)
+{
if (on) {
regulator_enable(twl->usb3v1);
regulator_enable(twl->usb1v8);
@@ -365,15 +374,13 @@ static void twl4030_phy_power(struct twl4030_usb *twl, int on)
twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 0,
VUSB_DEDICATED2);
regulator_enable(twl->usb1v5);
- pwr &= ~PHY_PWR_PHYPWD;
- WARN_ON(twl4030_usb_write_verify(twl, PHY_PWR_CTRL, pwr) < 0);
+ __twl4030_phy_power(twl, 1);
twl4030_usb_write(twl, PHY_CLK_CTRL,
twl4030_usb_read(twl, PHY_CLK_CTRL) |
(PHY_CLK_CTRL_CLOCKGATING_EN |
PHY_CLK_CTRL_CLK32K_EN));
- } else {
- pwr |= PHY_PWR_PHYPWD;
- WARN_ON(twl4030_usb_write_verify(twl, PHY_PWR_CTRL, pwr) < 0);
+ } else {
+ __twl4030_phy_power(twl, 0);
regulator_disable(twl->usb1v5);
regulator_disable(twl->usb1v8);
regulator_disable(twl->usb3v1);
@@ -387,19 +394,25 @@ static void twl4030_phy_suspend(struct twl4030_usb *twl, int controller_off)
twl4030_phy_power(twl, 0);
twl->asleep = 1;
+ dev_dbg(twl->dev, "%s\n", __func__);
}
-static void twl4030_phy_resume(struct twl4030_usb *twl)
+static void __twl4030_phy_resume(struct twl4030_usb *twl)
{
- if (!twl->asleep)
- return;
-
twl4030_phy_power(twl, 1);
twl4030_i2c_access(twl, 1);
twl4030_usb_set_mode(twl, twl->usb_mode);
if (twl->usb_mode == T2_USB_MODE_ULPI)
twl4030_i2c_access(twl, 0);
+}
+
+static void twl4030_phy_resume(struct twl4030_usb *twl)
+{
+ if (!twl->asleep)
+ return;
+ __twl4030_phy_resume(twl);
twl->asleep = 0;
+ dev_dbg(twl->dev, "%s\n", __func__);
}
static int twl4030_usb_ldo_init(struct twl4030_usb *twl)
@@ -408,8 +421,8 @@ static int twl4030_usb_ldo_init(struct twl4030_usb *twl)
twl_i2c_write_u8(TWL4030_MODULE_PM_MASTER, 0xC0, PROTECT_KEY);
twl_i2c_write_u8(TWL4030_MODULE_PM_MASTER, 0x0C, PROTECT_KEY);
- /* put VUSB3V1 LDO in active state */
- twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 0, VUSB_DEDICATED2);
+ /* Keep VUSB3V1 LDO in sleep state until VBUS/ID change detected*/
+ /*twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 0, VUSB_DEDICATED2);*/
/* input to VUSB3V1 LDO is from VBAT, not VBUS */
twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 0x14, VUSB_DEDICATED1);
@@ -502,6 +515,26 @@ static irqreturn_t twl4030_usb_irq(int irq, void *_twl)
return IRQ_HANDLED;
}
+static void twl4030_usb_phy_init(struct twl4030_usb *twl)
+{
+ int status;
+
+ status = twl4030_usb_linkstat(twl);
+ if (status >= 0) {
+ if (status == USB_EVENT_NONE) {
+ __twl4030_phy_power(twl, 0);
+ twl->asleep = 1;
+ } else {
+ __twl4030_phy_resume(twl);
+ twl->asleep = 0;
+ }
+
+ blocking_notifier_call_chain(&twl->otg.notifier, status,
+ twl->otg.gadget);
+ }
+ sysfs_notify(&twl->dev->kobj, NULL, "vbus");
+}
+
static int twl4030_set_suspend(struct otg_transceiver *x, int suspend)
{
struct twl4030_usb *twl = xceiv_to_twl(x);
@@ -550,7 +583,6 @@ static int __devinit twl4030_usb_probe(struct platform_device *pdev)
struct twl4030_usb_data *pdata = pdev->dev.platform_data;
struct twl4030_usb *twl;
int status, err;
- u8 pwr;
if (!pdata) {
dev_dbg(&pdev->dev, "platform_data not available\n");
@@ -569,10 +601,7 @@ static int __devinit twl4030_usb_probe(struct platform_device *pdev)
twl->otg.set_peripheral = twl4030_set_peripheral;
twl->otg.set_suspend = twl4030_set_suspend;
twl->usb_mode = pdata->usb_mode;
-
- pwr = twl4030_usb_read(twl, PHY_PWR_CTRL);
-
- twl->asleep = (pwr & PHY_PWR_PHYPWD);
+ twl->asleep = 1;
/* init spinlock for workqueue */
spin_lock_init(&twl->lock);
@@ -610,15 +639,10 @@ static int __devinit twl4030_usb_probe(struct platform_device *pdev)
return status;
}
- /* The IRQ handler just handles changes from the previous states
- * of the ID and VBUS pins ... in probe() we must initialize that
- * previous state. The easy way: fake an IRQ.
- *
- * REVISIT: a real IRQ might have happened already, if PREEMPT is
- * enabled. Else the IRQ may not yet be configured or enabled,
- * because of scheduling delays.
+ /* Power down phy or make it work according to
+ * current link state.
*/
- twl4030_usb_irq(twl->irq, twl);
+ twl4030_usb_phy_init(twl);
dev_info(&pdev->dev, "Initialized TWL4030 USB module\n");
return 0;
--
1.6.2.5
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-09 17:28 ` venki kaps
@ 2010-09-10 12:31 ` Felipe Balbi
0 siblings, 0 replies; 17+ messages in thread
From: Felipe Balbi @ 2010-09-10 12:31 UTC (permalink / raw)
To: venki kaps
Cc: Balbi, Felipe, Ming Lei, greg, linux-usb, linux-omap,
linux-kernel, David Brownell, Felipe Balbi, Gadiyar, Anand
Hi,
On Thu, Sep 09, 2010 at 12:28:27PM -0500, venki kaps wrote:
>one thing i have not understood, why it requires to power down when
>the device is booted without
>a USB cable?
why would the phy be powered up for no use ?
>After booting, just attach/detach the usb cable, then i have not seen
>any issue with power numbers in off mode, RETENTION and active states.
that's because if you boot without cable the phy is left alive,
consuming power for nothing.
--
balbi
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-09 6:01 ` Felipe Balbi
@ 2010-09-09 17:28 ` venki kaps
2010-09-10 12:31 ` Felipe Balbi
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-09 17:28 UTC (permalink / raw)
To: balbi
Cc: Ming Lei, greg, linux-usb, linux-omap, linux-kernel,
David Brownell, Felipe Balbi, Gadiyar, Anand
Venkii,
On Thu, Sep 9, 2010 at 3:01 PM, Felipe Balbi <balbi@ti.com> wrote:
> On Wed, Sep 08, 2010 at 08:49:08PM -0500, Ming Lei wrote:
>>
>> 2010/9/8 venki kaps <venkiece2005@gmail.com>:
>>
>>> To resolve the above issue, we have made "PHY power on" in battery
>>> adc on function
>>> and "PHY power down" in battery adc off function.
>>
>> Good news, the temperature is bad value from battery adc if otg phy is
>> power
>> down. Maybe you only need to power on otg phy before reading battery adc,
>> then
>> power down otg phy after the reading if no usb calbe is connected with
>> musb
>> for decreasing power consumption. (I am not familiar with battery adc,
>> just
>> for your refrerence)
>
> I think you only need the usb3v1 regulator. And it can even be in sleep
> mode, it doens't have to be on. What I would suggest is that usb3v1
> never to be turned off, only .
If usb3v1 put in sleep mode, then
how about VUSB3V1 real activation?
I have tried to put in sleep by using
"twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 1, VUSB_DEDICATED2);"
but still, i have been facing the issue with battery.
one thing i have not understood, why it requires to power down when
the device is booted without
a USB cable?
I have not faced any issue with Kernel 2.6.29 + same hardware
+ the same driver but the problem is facing with Kernel 2.6.32.
I strongly suspecting the problem with PMIC regulator frame work/Power
Management
since in off mode, it is getting very good power results but if system
hits INACTIVE to RETENTION during playback then power numbers will be
more
when it is booted without USB cable.
After booting, just attach/detach the usb cable, then i have not seen
any issue with power numbers in off mode, RETENTION and active states.
> --
> balbi
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-09 1:49 ` Ming Lei
@ 2010-09-09 6:01 ` Felipe Balbi
2010-09-09 17:28 ` venki kaps
0 siblings, 1 reply; 17+ messages in thread
From: Felipe Balbi @ 2010-09-09 6:01 UTC (permalink / raw)
To: Ming Lei
Cc: venki kaps, greg, linux-usb, linux-omap, linux-kernel,
David Brownell, Felipe Balbi, Gadiyar, Anand
On Wed, Sep 08, 2010 at 08:49:08PM -0500, Ming Lei wrote:
>2010/9/8 venki kaps <venkiece2005@gmail.com>:
>
>> To resolve the above issue, we have made "PHY power on" in battery
>> adc on function
>> and "PHY power down" in battery adc off function.
>
>Good news, the temperature is bad value from battery adc if otg phy is power
>down. Maybe you only need to power on otg phy before reading battery adc, then
>power down otg phy after the reading if no usb calbe is connected with musb
>for decreasing power consumption. (I am not familiar with battery adc, just
>for your refrerence)
I think you only need the usb3v1 regulator. And it can even be in sleep
mode, it doens't have to be on. What I would suggest is that usb3v1
never to be turned off, only put in sleep mode.
--
balbi
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-08 15:55 ` venki kaps
@ 2010-09-09 1:49 ` Ming Lei
2010-09-09 6:01 ` Felipe Balbi
0 siblings, 1 reply; 17+ messages in thread
From: Ming Lei @ 2010-09-09 1:49 UTC (permalink / raw)
To: venki kaps
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
2010/9/8 venki kaps <venkiece2005@gmail.com>:
> To resolve the above issue, we have made "PHY power on" in battery
> adc on function
> and "PHY power down" in battery adc off function.
Good news, the temperature is bad value from battery adc if otg phy is power
down. Maybe you only need to power on otg phy before reading battery adc, then
power down otg phy after the reading if no usb calbe is connected with musb
for decreasing power consumption. (I am not familiar with battery adc, just
for your refrerence)
Anyway, your issue(reading mistaken temperature) is nothing to do with
twl_4030 otg driver and the patch, we does need to power down otg phy
if no vbus or ID event detected.
--
Lei Ming
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 18:22 ` venki kaps
@ 2010-09-08 15:55 ` venki kaps
2010-09-09 1:49 ` Ming Lei
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-08 15:55 UTC (permalink / raw)
To: Ming Lei
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
Hi Ming Lei & Balbi,
Thanks for your support and the porblem is resolved.
Venkii,
On Tue, Sep 7, 2010 at 11:52 PM, venki kaps <venkiece2005@gmail.com> wrote:
> Venkii,
> On Tue, Sep 7, 2010 at 11:45 PM, venki kaps <venkiece2005@gmail.com> wrote:
>> Venkii,
>> On Tue, Sep 7, 2010 at 9:18 PM, venki kaps <venkiece2005@gmail.com> wrote:
>>> Venkii,
>>>
>>> On Tue, Sep 7, 2010 at 9:10 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>>>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>>>> thanks for your good response.
>>>>>
>>>>> Venkii,
>>>>>
>>>>> On Tue, Sep 7, 2010 at 6:54 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>>>>>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>>>>>> Dear USB experts,
>>>>>>>
>>>>>>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>>>>>>>
>>>>>>> I have been facing mp3 playback idle current consumption 20mA more
>>>>>>> after booting without USB cable connected
>>>>>>> but If USB cable detach and attach happen, then able to hit proper
>>>>>>> values otherwise irrespective of cold/warm reset
>>>>>>> the current values increases to 20mA.
>>>>>>>
>>>>>>> with cable,
>>>>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>>>>> HSOTGUSB_STANDBY - SMART standby
>>>>>>>
>>>>>>> without cable,
>>>>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>>>>> HSOTGUSB_STANDBY - Active
>>>>>>>
>>>>>>> Even i have applied patch but still the same issue.
>>>>>>
>>>>>> Are you applying the patch below?
>>>>>>
>>>>>> http://marc.info/?l=linux-omap&m=128378686221264&w=2
>>>>>>
>>>>>> The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
>>>>>> 2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
>>>>>> is introduced to fix the problems caused by
>>>>>>
>>>>>> commit 461c317705eca5cac09a360f488715927fd0a927.
>>>>>>
>>>>>> which change is committed into mainline 2.6.36-rc3.
>>>>> >>> Yes, this patch i have applied.
>>>>
>>>> If you applied the patch, I guess you may see __twl4030_phy_power(twl, 0)
>>>> is called from .probe.
>>>>
>>>> If called, seems your description a little contradictory since you observed
>>>> __twl4030_phy_power(twl, 0) may hit proper values, right?
>>>
>>> Yes, __twl4030_phy_power(twl, 0) - the current values are getting
>>> proper with or without cable.
>>>>
>>>> If not called, could you trace the return value of twl4030_usb_linkstat in
>>>> twl4030_usb_phy_init?
>>> ok, i can do that and update.
>> twl4030_usb_linkstat return value is zero (0) in both
>> twl4030_usb_phy_init/twl4030_usb_irq.
> WIth twl4030_usb_phy_init, Everything is fine except battery temperature
> but surprisingly the temperature is fine with PC based usb cable charger and
> the problem is with travel adapter only.
The temperature with TA effected due to the TWL4030 PHY power down on
I2c(__twl4030_phy_power(twl, 0)).
When TA connect to the phone the battery ADC is not reading proper
values since already PHY power down.
To resolve the above issue, we have made "PHY power on" in battery
adc on function
and "PHY power down" in battery adc off function.
With the above change the problem is resolved.
>>>> thanks,
>>>>
>>>> --
>>>> Lei Ming
>>>>
>>>
>>
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 18:15 ` venki kaps
@ 2010-09-07 18:22 ` venki kaps
2010-09-08 15:55 ` venki kaps
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-07 18:22 UTC (permalink / raw)
To: Ming Lei
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
Venkii,
On Tue, Sep 7, 2010 at 11:45 PM, venki kaps <venkiece2005@gmail.com> wrote:
> Venkii,
> On Tue, Sep 7, 2010 at 9:18 PM, venki kaps <venkiece2005@gmail.com> wrote:
>> Venkii,
>>
>> On Tue, Sep 7, 2010 at 9:10 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>>> thanks for your good response.
>>>>
>>>> Venkii,
>>>>
>>>> On Tue, Sep 7, 2010 at 6:54 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>>>>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>>>>> Dear USB experts,
>>>>>>
>>>>>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>>>>>>
>>>>>> I have been facing mp3 playback idle current consumption 20mA more
>>>>>> after booting without USB cable connected
>>>>>> but If USB cable detach and attach happen, then able to hit proper
>>>>>> values otherwise irrespective of cold/warm reset
>>>>>> the current values increases to 20mA.
>>>>>>
>>>>>> with cable,
>>>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>>>> HSOTGUSB_STANDBY - SMART standby
>>>>>>
>>>>>> without cable,
>>>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>>>> HSOTGUSB_STANDBY - Active
>>>>>>
>>>>>> Even i have applied patch but still the same issue.
>>>>>
>>>>> Are you applying the patch below?
>>>>>
>>>>> http://marc.info/?l=linux-omap&m=128378686221264&w=2
>>>>>
>>>>> The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
>>>>> 2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
>>>>> is introduced to fix the problems caused by
>>>>>
>>>>> commit 461c317705eca5cac09a360f488715927fd0a927.
>>>>>
>>>>> which change is committed into mainline 2.6.36-rc3.
>>>> >>> Yes, this patch i have applied.
>>>
>>> If you applied the patch, I guess you may see __twl4030_phy_power(twl, 0)
>>> is called from .probe.
>>>
>>> If called, seems your description a little contradictory since you observed
>>> __twl4030_phy_power(twl, 0) may hit proper values, right?
>>
>> Yes, __twl4030_phy_power(twl, 0) - the current values are getting
>> proper with or without cable.
>>>
>>> If not called, could you trace the return value of twl4030_usb_linkstat in
>>> twl4030_usb_phy_init?
>> ok, i can do that and update.
> twl4030_usb_linkstat return value is zero (0) in both
> twl4030_usb_phy_init/twl4030_usb_irq.
WIth twl4030_usb_phy_init, Everything is fine except battery temperature
but surprisingly the temperature is fine with PC based usb cable charger and
the problem is with travel adapter only.
>>> thanks,
>>>
>>> --
>>> Lei Ming
>>>
>>
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 15:48 ` venki kaps
@ 2010-09-07 18:15 ` venki kaps
2010-09-07 18:22 ` venki kaps
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-07 18:15 UTC (permalink / raw)
To: Ming Lei
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
Venkii,
On Tue, Sep 7, 2010 at 9:18 PM, venki kaps <venkiece2005@gmail.com> wrote:
> Venkii,
>
> On Tue, Sep 7, 2010 at 9:10 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>> thanks for your good response.
>>>
>>> Venkii,
>>>
>>> On Tue, Sep 7, 2010 at 6:54 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>>>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>>>> Dear USB experts,
>>>>>
>>>>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>>>>>
>>>>> I have been facing mp3 playback idle current consumption 20mA more
>>>>> after booting without USB cable connected
>>>>> but If USB cable detach and attach happen, then able to hit proper
>>>>> values otherwise irrespective of cold/warm reset
>>>>> the current values increases to 20mA.
>>>>>
>>>>> with cable,
>>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>>> HSOTGUSB_STANDBY - SMART standby
>>>>>
>>>>> without cable,
>>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>>> HSOTGUSB_STANDBY - Active
>>>>>
>>>>> Even i have applied patch but still the same issue.
>>>>
>>>> Are you applying the patch below?
>>>>
>>>> http://marc.info/?l=linux-omap&m=128378686221264&w=2
>>>>
>>>> The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
>>>> 2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
>>>> is introduced to fix the problems caused by
>>>>
>>>> commit 461c317705eca5cac09a360f488715927fd0a927.
>>>>
>>>> which change is committed into mainline 2.6.36-rc3.
>>> >>> Yes, this patch i have applied.
>>
>> If you applied the patch, I guess you may see __twl4030_phy_power(twl, 0)
>> is called from .probe.
>>
>> If called, seems your description a little contradictory since you observed
>> __twl4030_phy_power(twl, 0) may hit proper values, right?
>
> Yes, __twl4030_phy_power(twl, 0) - the current values are getting
> proper with or without cable.
>>
>> If not called, could you trace the return value of twl4030_usb_linkstat in
>> twl4030_usb_phy_init?
> ok, i can do that and update.
twl4030_usb_linkstat return value is zero (0) in both
twl4030_usb_phy_init/twl4030_usb_irq.
>> thanks,
>>
>> --
>> Lei Ming
>>
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 15:40 ` Ming Lei
@ 2010-09-07 15:48 ` venki kaps
2010-09-07 18:15 ` venki kaps
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-07 15:48 UTC (permalink / raw)
To: Ming Lei
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
Venkii,
On Tue, Sep 7, 2010 at 9:10 PM, Ming Lei <tom.leiming@gmail.com> wrote:
> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>> thanks for your good response.
>>
>> Venkii,
>>
>> On Tue, Sep 7, 2010 at 6:54 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>>> Dear USB experts,
>>>>
>>>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>>>>
>>>> I have been facing mp3 playback idle current consumption 20mA more
>>>> after booting without USB cable connected
>>>> but If USB cable detach and attach happen, then able to hit proper
>>>> values otherwise irrespective of cold/warm reset
>>>> the current values increases to 20mA.
>>>>
>>>> with cable,
>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>> HSOTGUSB_STANDBY - SMART standby
>>>>
>>>> without cable,
>>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>>> HSOTGUSB_STANDBY - Active
>>>>
>>>> Even i have applied patch but still the same issue.
>>>
>>> Are you applying the patch below?
>>>
>>> http://marc.info/?l=linux-omap&m=128378686221264&w=2
>>>
>>> The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
>>> 2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
>>> is introduced to fix the problems caused by
>>>
>>> commit 461c317705eca5cac09a360f488715927fd0a927.
>>>
>>> which change is committed into mainline 2.6.36-rc3.
>> >>> Yes, this patch i have applied.
>
> If you applied the patch, I guess you may see __twl4030_phy_power(twl, 0)
> is called from .probe.
>
> If called, seems your description a little contradictory since you observed
> __twl4030_phy_power(twl, 0) may hit proper values, right?
Yes, __twl4030_phy_power(twl, 0) - the current values are getting
proper with or without cable.
>
> If not called, could you trace the return value of twl4030_usb_linkstat in
> twl4030_usb_phy_init?
ok, i can do that and update.
>
> thanks,
>
> --
> Lei Ming
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 13:50 ` venki kaps
@ 2010-09-07 15:40 ` Ming Lei
2010-09-07 15:48 ` venki kaps
0 siblings, 1 reply; 17+ messages in thread
From: Ming Lei @ 2010-09-07 15:40 UTC (permalink / raw)
To: venki kaps
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
2010/9/7 venki kaps <venkiece2005@gmail.com>:
> thanks for your good response.
>
> Venkii,
>
> On Tue, Sep 7, 2010 at 6:54 PM, Ming Lei <tom.leiming@gmail.com> wrote:
>> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>>> Dear USB experts,
>>>
>>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>>>
>>> I have been facing mp3 playback idle current consumption 20mA more
>>> after booting without USB cable connected
>>> but If USB cable detach and attach happen, then able to hit proper
>>> values otherwise irrespective of cold/warm reset
>>> the current values increases to 20mA.
>>>
>>> with cable,
>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>> HSOTGUSB_STANDBY - SMART standby
>>>
>>> without cable,
>>> OTG_SYSCONFIG standby mode of operation - SMART idle
>>> HSOTGUSB_STANDBY - Active
>>>
>>> Even i have applied patch but still the same issue.
>>
>> Are you applying the patch below?
>>
>> http://marc.info/?l=linux-omap&m=128378686221264&w=2
>>
>> The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
>> 2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
>> is introduced to fix the problems caused by
>>
>> commit 461c317705eca5cac09a360f488715927fd0a927.
>>
>> which change is committed into mainline 2.6.36-rc3.
> >>> Yes, this patch i have applied.
If you applied the patch, I guess you may see __twl4030_phy_power(twl, 0)
is called from .probe.
If called, seems your description a little contradictory since you observed
__twl4030_phy_power(twl, 0) may hit proper values, right?
If not called, could you trace the return value of twl4030_usb_linkstat in
twl4030_usb_phy_init?
thanks,
--
Lei Ming
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 13:24 ` Ming Lei
@ 2010-09-07 13:50 ` venki kaps
2010-09-07 15:40 ` Ming Lei
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-07 13:50 UTC (permalink / raw)
To: Ming Lei
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
thanks for your good response.
Venkii,
On Tue, Sep 7, 2010 at 6:54 PM, Ming Lei <tom.leiming@gmail.com> wrote:
> 2010/9/7 venki kaps <venkiece2005@gmail.com>:
>> Dear USB experts,
>>
>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>>
>> I have been facing mp3 playback idle current consumption 20mA more
>> after booting without USB cable connected
>> but If USB cable detach and attach happen, then able to hit proper
>> values otherwise irrespective of cold/warm reset
>> the current values increases to 20mA.
>>
>> with cable,
>> OTG_SYSCONFIG standby mode of operation - SMART idle
>> HSOTGUSB_STANDBY - SMART standby
>>
>> without cable,
>> OTG_SYSCONFIG standby mode of operation - SMART idle
>> HSOTGUSB_STANDBY - Active
>>
>> Even i have applied patch but still the same issue.
>
> Are you applying the patch below?
>
> http://marc.info/?l=linux-omap&m=128378686221264&w=2
>
> The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
> 2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
> is introduced to fix the problems caused by
>
> commit 461c317705eca5cac09a360f488715927fd0a927.
>
> which change is committed into mainline 2.6.36-rc3.
>>> Yes, this patch i have applied.
>>
>> If i use __twl4030_phy_power(twl, 0) at the end of USB LDO initialization,
>
> If you apply this patch against 2.6.36-rc3, you will find
> __twl4030_phy_power(twl, 0) is always called from .probe
> if you don't connect musb with PC via cable when powering on.
>
>> then able to hit proper values but USB ADC values are getting in correct
>> with Travel adapter (Charger power supply) which means temperature
>> shows 84 instead of 26~30 degrees.
>>
>> Queries,
>> -----------
>> - Is Errata 1.164 fix : OTG idle will work on 3430?
>
> No such errata found in ti wetsite, could you give a link?
In Zoom3 git,pm34xx.c file
/*
* Errata 1.164 fix : OTG autoidle can prevent
* sleep. enable/disable iclk over OFF.
*/
cm_rmw_mod_reg_bits(OMAP3430_EN_HSOTGUSB, 0x0,
CORE_MOD, CM_ICLKEN1);
>
>> - USBOTG_SUSPEND is enabled in Kernel 32, will it give any impact?
>
> Kernel does not have USBOTG_SUSPEND config option. Do you
> mean USB_SUSPEND? If so, it is nothing to do with your issue since
> it is only valid for host driver. Also for your case, musb works at
> b-idle state.
>
Yes,CONFIG_USB_SUSPEND.
>> - Is there anything missed from Power management idle path (or)
>> USB OTG controller/Transreceiver driver part?
>
> Maybe with transreceiver part, musb doesn't support runtime pm now.
>
>>
>> Could you please provide the best approach to solve my issue?
>
> Sorry, this patch is not for your issue, as said above.
>
>
> --
> Lei Ming
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-06 18:10 venki kaps
2010-09-06 20:22 ` Felipe Balbi
@ 2010-09-07 13:24 ` Ming Lei
2010-09-07 13:50 ` venki kaps
1 sibling, 1 reply; 17+ messages in thread
From: Ming Lei @ 2010-09-07 13:24 UTC (permalink / raw)
To: venki kaps
Cc: greg, linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar
2010/9/7 venki kaps <venkiece2005@gmail.com>:
> Dear USB experts,
>
> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>
> I have been facing mp3 playback idle current consumption 20mA more
> after booting without USB cable connected
> but If USB cable detach and attach happen, then able to hit proper
> values otherwise irrespective of cold/warm reset
> the current values increases to 20mA.
>
> with cable,
> OTG_SYSCONFIG standby mode of operation - SMART idle
> HSOTGUSB_STANDBY - SMART standby
>
> without cable,
> OTG_SYSCONFIG standby mode of operation - SMART idle
> HSOTGUSB_STANDBY - Active
>
> Even i have applied patch but still the same issue.
Are you applying the patch below?
http://marc.info/?l=linux-omap&m=128378686221264&w=2
The patch(USB: otg: twl4030: fix phy initialization(v1)) above is against
2.6.36-rc3, I don't think you can apply it directly on 2.6.32. And the patch
is introduced to fix the problems caused by
commit 461c317705eca5cac09a360f488715927fd0a927.
which change is committed into mainline 2.6.36-rc3.
>
> If i use __twl4030_phy_power(twl, 0) at the end of USB LDO initialization,
If you apply this patch against 2.6.36-rc3, you will find
__twl4030_phy_power(twl, 0) is always called from .probe
if you don't connect musb with PC via cable when powering on.
> then able to hit proper values but USB ADC values are getting in correct
> with Travel adapter (Charger power supply) which means temperature
> shows 84 instead of 26~30 degrees.
>
> Queries,
> -----------
> - Is Errata 1.164 fix : OTG idle will work on 3430?
No such errata found in ti wetsite, could you give a link?
> - USBOTG_SUSPEND is enabled in Kernel 32, will it give any impact?
Kernel does not have USBOTG_SUSPEND config option. Do you
mean USB_SUSPEND? If so, it is nothing to do with your issue since
it is only valid for host driver. Also for your case, musb works at
b-idle state.
> - Is there anything missed from Power management idle path (or)
> USB OTG controller/Transreceiver driver part?
Maybe with transreceiver part, musb doesn't support runtime pm now.
>
> Could you please provide the best approach to solve my issue?
Sorry, this patch is not for your issue, as said above.
--
Lei Ming
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 12:46 ` Felipe Balbi
@ 2010-09-07 13:18 ` venki kaps
0 siblings, 0 replies; 17+ messages in thread
From: venki kaps @ 2010-09-07 13:18 UTC (permalink / raw)
To: Felipe Balbi
Cc: tom.leiming, greg, linux-usb, linux-omap, linux-kernel,
David Brownell, Anand Gadiyar
Venkii,
On Tue, Sep 7, 2010 at 6:16 PM, Felipe Balbi <me@felipebalbi.com> wrote:
> Hi,
>
> On Tue, 7 Sep 2010 11:49:38 +0900, venki kaps <venkiece2005@gmail.com>
> wrote:
>>> let me see if I understand you right. The consumption is higher
>>> when the cable is kept plugged or the consumption is higher if
>>> you boot with usb cable pugged and remove it afterwards ?
>> >> The consumption is higher if boot without usb cable.If boot when
>> the cable is kept plugged
>> >> and remove it afterwards, then normal.
>
> ok, so that's what I had observed and my original patch is the one
> you want. You probably _also_ want this one though due the WARN
>>> Is WARN_ON created issue? or
>>> As you mentioned earlier, if (!regulator_is_enabled(twl->usb3v1)
regulator_enable(twl->usb3v1); would be required?
>>> could you please provide more details?
>
> --
> balbi
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-07 2:49 ` venki kaps
@ 2010-09-07 12:46 ` Felipe Balbi
2010-09-07 13:18 ` venki kaps
0 siblings, 1 reply; 17+ messages in thread
From: Felipe Balbi @ 2010-09-07 12:46 UTC (permalink / raw)
To: venki kaps
Cc: tom.leiming, greg, linux-usb, linux-omap, linux-kernel,
David Brownell, Anand Gadiyar
Hi,
On Tue, 7 Sep 2010 11:49:38 +0900, venki kaps <venkiece2005@gmail.com>
wrote:
>> let me see if I understand you right. The consumption is higher
>> when the cable is kept plugged or the consumption is higher if
>> you boot with usb cable pugged and remove it afterwards ?
> >> The consumption is higher if boot without usb cable.If boot when
> the cable is kept plugged
> >> and remove it afterwards, then normal.
ok, so that's what I had observed and my original patch is the one
you want. You probably _also_ want this one though due the WARN
--
balbi
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-06 20:22 ` Felipe Balbi
@ 2010-09-07 2:49 ` venki kaps
2010-09-07 12:46 ` Felipe Balbi
0 siblings, 1 reply; 17+ messages in thread
From: venki kaps @ 2010-09-07 2:49 UTC (permalink / raw)
To: Felipe Balbi
Cc: tom.leiming, greg, linux-usb, linux-omap, linux-kernel,
David Brownell, Anand Gadiyar
Venkii.
On Tue, Sep 7, 2010 at 5:22 AM, Felipe Balbi <me@felipebalbi.com> wrote:
> Hi,
>
> On Tue, 7 Sep 2010 03:10:30 +0900, venki kaps <venkiece2005@gmail.com>
> wrote:
>> Dear USB experts,
>>
>> Is the same fix valid for omap3430 + 2.6.32 Kernel?
>
> 3.6.32 ?? difficult to say. Why such an old kernel ? Although
> I doubt musb or twl4030-usb driver has changed that much, it's
> difficult to say.
>
>> I have been facing mp3 playback idle current consumption 20mA more
>> after booting without USB cable connected
>
> let me see if I understand you right. The consumption is higher
> when the cable is kept plugged or the consumption is higher if
> you boot with usb cable pugged and remove it afterwards ?
>> The consumption is higher if boot without usb cable.If boot when
the cable is kept plugged
>> and remove it afterwards, then normal.
>
> --
> balbi
>
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH] USB: otg: twl4030: fix phy initialization(v1)
2010-09-06 18:10 venki kaps
@ 2010-09-06 20:22 ` Felipe Balbi
2010-09-07 2:49 ` venki kaps
2010-09-07 13:24 ` Ming Lei
1 sibling, 1 reply; 17+ messages in thread
From: Felipe Balbi @ 2010-09-06 20:22 UTC (permalink / raw)
To: venki kaps
Cc: tom.leiming, greg, linux-usb, linux-omap, linux-kernel,
David Brownell, Anand Gadiyar
Hi,
On Tue, 7 Sep 2010 03:10:30 +0900, venki kaps <venkiece2005@gmail.com>
wrote:
> Dear USB experts,
>
> Is the same fix valid for omap3430 + 2.6.32 Kernel?
3.6.32 ?? difficult to say. Why such an old kernel ? Although
I doubt musb or twl4030-usb driver has changed that much, it's
difficult to say.
> I have been facing mp3 playback idle current consumption 20mA more
> after booting without USB cable connected
let me see if I understand you right. The consumption is higher
when the cable is kept plugged or the consumption is higher if
you boot with usb cable pugged and remove it afterwards ?
--
balbi
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] USB: otg: twl4030: fix phy initialization(v1)
@ 2010-09-06 18:10 venki kaps
2010-09-06 20:22 ` Felipe Balbi
2010-09-07 13:24 ` Ming Lei
0 siblings, 2 replies; 17+ messages in thread
From: venki kaps @ 2010-09-06 18:10 UTC (permalink / raw)
To: tom.leiming, greg
Cc: linux-usb, linux-omap, linux-kernel, David Brownell,
Felipe Balbi, Anand Gadiyar, venkiece2005
Dear USB experts,
Is the same fix valid for omap3430 + 2.6.32 Kernel?
I have been facing mp3 playback idle current consumption 20mA more
after booting without USB cable connected
but If USB cable detach and attach happen, then able to hit proper
values otherwise irrespective of cold/warm reset
the current values increases to 20mA.
with cable,
OTG_SYSCONFIG standby mode of operation - SMART idle
HSOTGUSB_STANDBY - SMART standby
without cable,
OTG_SYSCONFIG standby mode of operation - SMART idle
HSOTGUSB_STANDBY - Active
Even i have applied patch but still the same issue.
If i use __twl4030_phy_power(twl, 0) at the end of USB LDO initialization,
then able to hit proper values but USB ADC values are getting in correct
with Travel adapter (Charger power supply) which means temperature
shows 84 instead of 26~30 degrees.
Queries,
-----------
- Is Errata 1.164 fix : OTG idle will work on 3430?
- USBOTG_SUSPEND is enabled in Kernel 32, will it give any impact?
- Is there anything missed from Power management idle path (or)
USB OTG controller/Transreceiver driver part?
Could you please provide the best approach to solve my issue?
Best Regards,
Venkappa
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2010-09-10 12:32 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-06 15:27 [PATCH] USB: otg: twl4030: fix phy initialization(v1) tom.leiming
2010-09-06 18:10 venki kaps
2010-09-06 20:22 ` Felipe Balbi
2010-09-07 2:49 ` venki kaps
2010-09-07 12:46 ` Felipe Balbi
2010-09-07 13:18 ` venki kaps
2010-09-07 13:24 ` Ming Lei
2010-09-07 13:50 ` venki kaps
2010-09-07 15:40 ` Ming Lei
2010-09-07 15:48 ` venki kaps
2010-09-07 18:15 ` venki kaps
2010-09-07 18:22 ` venki kaps
2010-09-08 15:55 ` venki kaps
2010-09-09 1:49 ` Ming Lei
2010-09-09 6:01 ` Felipe Balbi
2010-09-09 17:28 ` venki kaps
2010-09-10 12:31 ` Felipe Balbi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®