Thread (9 messages) 9 messages, 2 authors, 2012-08-31
STALE5055d
Revisions (4)
  1. v1 [diff vs current]
  2. v1 [diff vs current]
  3. v1 current
  4. v1 [diff vs current]

[PATCH 0/3] ARM: OMAP2/3: DSS HWMOD fixes

From: Tomi Valkeinen <hidden>
Date: 2012-08-22 06:24:37
Also in: linux-omap

On Wed, 2012-07-04 at 06:11 -0600, Paul Walmsley wrote:
Hi Tomi

On Wed, 27 Jun 2012, Paul Walmsley wrote:
quoted
On Thu, 10 May 2012, Tomi Valkeinen wrote:
quoted
These patches fix DSS hwmod data related to sysc flags. I haven't seen any
problem produced by these missing bits, but by looking at the TRM it's clear
that they should be defined.

However, applying these will cause additional warnings to show during boot:

omap_hwmod: dss_dispc: softreset failed (waited 10000 usec)
omap_hwmod: dss_rfbi: softreset failed (waited 10000 usec)

Most likely the softreset fails even now, but as there's no check to verify it,
no warnings are visible.

I think the reason for the failing softreset is the same problem as we have on
OMAP4: dss_core hwmod should be enabled before other dss hwmods can be enabled
(and reset).
Thanks, queued for 3.6.

Not sure what to do about the softreset issues at the moment, due to 
competing priorities.  But for sure the data should match the hardware.
I've dropped these for 3.6 since they cause a PM regression during a 
system suspend test:

[   39.721282] Powerdomain (dss_pwrdm) didn't enter target state 1

Probably before we can pull these in, we need to figure out what's going 
on there.
I was testing with omap3 overo, on v3.6-rc2 +
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
fixes-for-linus

I don't seem to be able to enter full suspend even without dss. This is
with DSS compiled as modules, and not loaded:

# echo mem > /sys/power/state 
[   21.697265] PM: Syncing filesystems ... done.
[   21.711059] Freezing user space processes ... (elapsed 0.02 seconds) done.
[   21.740722] Freezing remaining freezable tasks ... (elapsed 0.02 seconds) done.
[   21.911407] PM: suspend of devices complete after 134.399 msecs
[   21.921874] PM: late suspend of devices complete after 4.150 msecs
[   21.934753] PM: noirq suspend of devices complete after 6.256 msecs
[   21.941467] Disabling non-boot CPUs ...
[   24.639495] Powerdomain (iva2_pwrdm) didn't enter target state 1
[   24.645812] Powerdomain (dss_pwrdm) didn't enter target state 1
[   24.652008] Powerdomain (per_pwrdm) didn't enter target state 1
[   24.658233] Powerdomain (core_pwrdm) didn't enter target state 1
[   24.664550] Powerdomain (usbhost_pwrdm) didn't enter target state 1
[   24.671112] Could not enter target state in pm_suspend
[   24.679901] PM: noirq resume of devices complete after 3.173 msecs
[   24.691101] PM: early resume of devices complete after 2.716 msecs
[   25.086517] PM: resume of devices complete after 388.793 msecs
[   25.097564] Restarting tasks ... done.

There's also still the old bug that happens if I have USB ethernet
gadget as built-in:

# echo mem > /sys/power/state 
[   25.011657] PM: Syncing filesystems ... done.
[   25.026184] Freezing user space processes ... (elapsed 0.02 seconds) done.
[   25.055145] Freezing remaining freezable tasks ... (elapsed 0.02 seconds) done.
[   25.086303] Suspending console(s) (use no_console_suspend to debug)
[   25.264953] PM: suspend of devices complete after 166.717 msecs
[   25.269348] PM: late suspend of devices complete after 4.394 msecs
[   25.275482] twl: i2c_read failed to transfer all messages
[   25.275543] twl: i2c_write failed to transfer all messages
[   25.275604] twl: i2c_write failed to transfer all messages
[   25.275634] ------------[ cut here ]------------
[   25.275665] WARNING: at drivers/usb/otg/twl4030-usb.c:360 __twl4030_phy_power+0x88/0x98()
[   25.275665] Modules linked in:
[   25.275726] [<c001b8cc>] (unwind_backtrace+0x0/0xf0) from [<c004217c>] (warn_slowpath_common+0x4c
/0x64)
[   25.275756] [<c004217c>] (warn_slowpath_common+0x4c/0x64) from [<c00421b0>] (warn_slowpath_null+0
x1c/0x24)
[   25.275787] [<c00421b0>] (warn_slowpath_null+0x1c/0x24) from [<c03babe8>] (__twl4030_phy_power+0x
88/0x98)
[   25.275787] [<c03babe8>] (__twl4030_phy_power+0x88/0x98) from [<c03bac84>] (twl4030_phy_power+0x8
c/0xf4)
[   25.275817] [<c03bac84>] (twl4030_phy_power+0x8c/0xf4) from [<c03bad90>] (twl4030_phy_suspend.clo
ne.7+0x18/0x44)
[   25.275848] [<c03bad90>] (twl4030_phy_suspend.clone.7+0x18/0x44) from [<c03bae38>] (twl4030_set_s
uspend+0x1c/0x24)
[   25.275878] [<c03bae38>] (twl4030_set_suspend+0x1c/0x24) from [<c03d92ec>] (omap2430_runtime_susp
end+0x4c/0x54)
[   25.275909] [<c03d92ec>] (omap2430_runtime_suspend+0x4c/0x54) from [<c0328b10>] (pm_generic_runti
me_suspend+0x2c/0x40)
[   25.275939] [<c0328b10>] (pm_generic_runtime_suspend+0x2c/0x40) from [<c003dcd0>] (_od_suspend_no
irq+0x34/0x68)
[   25.275939] [<c003dcd0>] (_od_suspend_noirq+0x34/0x68) from [<c0329bf0>] (dpm_run_callback.clone.
10+0x30/0xb4)
[   25.275970] [<c0329bf0>] (dpm_run_callback.clone.10+0x30/0xb4) from [<c032a3c4>] (dpm_suspend_end
+0x30c/0x514)
[   25.276000] [<c032a3c4>] (dpm_suspend_end+0x30c/0x514) from [<c00830c0>] (suspend_devices_and_ent
er+0xbc/0x2d0)
[   25.276031] [<c00830c0>] (suspend_devices_and_enter+0xbc/0x2d0) from [<c0083460>] (pm_suspend+0x1
8c/0x208)
[   25.276031] [<c0083460>] (pm_suspend+0x18c/0x208) from [<c00826f4>] (state_store+0x120/0x134)
[   25.276062] [<c00826f4>] (state_store+0x120/0x134) from [<c02c0b10>] (kobj_attr_store+0x14/0x20)
[   25.276092] [<c02c0b10>] (kobj_attr_store+0x14/0x20) from [<c0170668>] (sysfs_write_file+0x100/0x
184)
[   25.276123] [<c0170668>] (sysfs_write_file+0x100/0x184) from [<c010e238>] (vfs_write+0xb4/0x148)
[   25.276153] [<c010e238>] (vfs_write+0xb4/0x148) from [<c010e4c0>] (sys_write+0x40/0x70)
[   25.276184] [<c010e4c0>] (sys_write+0x40/0x70) from [<c0013ee0>] (ret_fast_syscall+0x0/0x3c)
[   25.276184] ---[ end trace 7ca935fb21bbfe5c ]---
[   25.276397] twl: i2c_read failed to transfer all messages
[   25.276397] VUSB1V5: failed to disable
[   25.276428] twl: i2c_read failed to transfer all messages
[   25.276428] VUSB1V8: failed to disable
[   25.276458] twl: i2c_read failed to transfer all messages
[   25.276489] VUSB3V1: failed to disable
[   25.277252] PM: noirq suspend of devices complete after 7.843 msecs
[   25.277313] Disabling non-boot CPUs ...
[   27.809631] Powerdomain (iva2_pwrdm) didn't enter target state 1
[   27.809631] Powerdomain (dss_pwrdm) didn't enter target state 1
[   27.809631] Powerdomain (per_pwrdm) didn't enter target state 1
[   27.809661] Powerdomain (core_pwrdm) didn't enter target state 1
[   27.809661] Powerdomain (usbhost_pwrdm) didn't enter target state 1
[   27.809661] Could not enter target state in pm_suspend
[   27.810699] twl: i2c_write failed to transfer all messages
[   27.810760] twl: i2c_read failed to transfer all messages
[   27.810791] twl: i2c_write failed to transfer all messages
[   27.810821] twl: i2c_write failed to transfer all messages
[   27.810852] ------------[ cut here ]------------
[   27.810882] WARNING: at drivers/usb/otg/twl4030-usb.c:360 __twl4030_phy_power+0x88/0x98()
[   27.810913] Modules linked in:
[   27.810943] [<c001b8cc>] (unwind_backtrace+0x0/0xf0) from [<c004217c>] (warn_slowpath_common+0x4c
/0x64)
[   27.810974] [<c004217c>] (warn_slowpath_common+0x4c/0x64) from [<c00421b0>] (warn_slowpath_null+0
x1c/0x24)
[   27.810974] [<c00421b0>] (warn_slowpath_null+0x1c/0x24) from [<c03babe8>] (__twl4030_phy_power+0x
88/0x98)
[   27.811004] [<c03babe8>] (__twl4030_phy_power+0x88/0x98) from [<c03bac40>] (twl4030_phy_power+0x4
8/0xf4)
[   27.811035] [<c03bac40>] (twl4030_phy_power+0x48/0xf4) from [<c03bacfc>] (__twl4030_phy_resume+0x
10/0x48)
[   27.811065] [<c03bacfc>] (__twl4030_phy_resume+0x10/0x48) from [<c03bad4c>] (twl4030_phy_resume+0
x18/0x44)
[   27.811065] [<c03bad4c>] (twl4030_phy_resume+0x18/0x44) from [<c03bae2c>] (twl4030_set_suspend+0x
10/0x24)
[   27.811096] [<c03bae2c>] (twl4030_set_suspend+0x10/0x24) from [<c03d9298>] (omap2430_runtime_resu
me+0x50/0x58)
[   27.811126] [<c03d9298>] (omap2430_runtime_resume+0x50/0x58) from [<c0328b50>] (pm_generic_runtim
e_resume+0x2c/0x40)
[   27.811157] [<c0328b50>] (pm_generic_runtime_resume+0x2c/0x40) from [<c003dc10>] (_od_resume_noir
q+0x44/0x58)
[   27.811187] [<c003dc10>] (_od_resume_noirq+0x44/0x58) from [<c0329bf0>] (dpm_run_callback.clone.1
0+0x30/0xb4)
[   27.811187] [<c0329bf0>] (dpm_run_callback.clone.10+0x30/0xb4) from [<c0329d00>] (dpm_resume_noir
q+0x8c/0x224)
[   27.811218] [<c0329d00>] (dpm_resume_noirq+0x8c/0x224) from [<c032a5d8>] (dpm_resume_start+0xc/0x
18)
[   27.811248] [<c032a5d8>] (dpm_resume_start+0xc/0x18) from [<c0083118>] (suspend_devices_and_enter
+0x114/0x2d0)
[   27.811279] [<c0083118>] (suspend_devices_and_enter+0x114/0x2d0) from [<c0083460>] (pm_suspend+0x
18c/0x208)
[   27.811279] [<c0083460>] (pm_suspend+0x18c/0x208) from [<c00826f4>] (state_store+0x120/0x134)
[   27.811309] [<c00826f4>] (state_store+0x120/0x134) from [<c02c0b10>] (kobj_attr_store+0x14/0x20)
[   27.811340] [<c02c0b10>] (kobj_attr_store+0x14/0x20) from [<c0170668>] (sysfs_write_file+0x100/0x
184)
[   27.811370] [<c0170668>] (sysfs_write_file+0x100/0x184) from [<c010e238>] (vfs_write+0xb4/0x148)
[   27.811401] [<c010e238>] (vfs_write+0xb4/0x148) from [<c010e4c0>] (sys_write+0x40/0x70)
[   27.811401] [<c010e4c0>] (sys_write+0x40/0x70) from [<c0013ee0>] (ret_fast_syscall+0x0/0x3c)
[   27.811431] ---[ end trace 7ca935fb21bbfe5d ]---
[   27.811462] twl: i2c_read failed to transfer all messages
[   27.811492] twl: i2c_write failed to transfer all messages
[   27.811523] twl: i2c_read failed to transfer all messages
[   27.811553] twl: i2c_write failed to transfer all messages
[   27.811614] twl: i2c_write failed to transfer all messages
[   27.811645] twl: i2c_write failed to transfer all messages
[   27.811676] twl: i2c_read failed to transfer all messages
[   27.814544] PM: noirq resume of devices complete after 4.638 msecs
[   27.819000] PM: early resume of devices complete after 2.960 msecs
[   28.240875] PM: resume of devices complete after 421.783 msecs
[   28.878845] Restarting tasks ... done.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120822/3d316dd3/attachment-0001.sig>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help