Re: [ANNOUNCE] new PM branch: pm-20081119

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"ext Sriram V" <vshrirama@xxxxxxxxx> writes:

> Kevin,
>
> On Fri, Nov 21, 2008 at 9:35 PM, Kevin Hilman
> <khilman@xxxxxxxxxxxxxxxxxxx> wrote:
>> "Premi, Sanjeev" <premi@xxxxxx> writes:
>>
>>>> -----Original Message-----
>>>> From: Kevin Hilman [mailto:khilman@xxxxxxxxxxxxxxxxxxx]
>>>> Sent: Thursday, November 20, 2008 11:10 PM
>>>> To: Premi, Sanjeev
>>>> Cc: Peter Reid; linux-omap@xxxxxxxxxxxxxxx
>>>> Subject: Re: [ANNOUNCE] new PM branch: pm-20081119
>>>>
>>>> "Premi, Sanjeev" <premi@xxxxxx> writes:
>>>>
>>>> > These are my observations on OMAP3EVM:
>>>> >
>>>> > 1) Very frequently I see these messages:
>>>> >
>>>> > <4>__ratelimit: 6736 callbacks suppressed
>>>> > __ratelimit: 6736 callbacks suppressed <3>omapfb omapfb: irq error
>>>> > status 00c2 omapfb omapfb: irq error status 00c2 <3>omapfb
>>>> omapfb: irq
>>>> > error status 0060 omapfb omapfb: irq error status 0060 <3>omapfb
>>>> > omapfb: irq error status 00c2 omapfb omapfb: irq error status 00c2
>>>> > <3>omapfb omapfb: irq error status 0060 omapfb omapfb: irq error
>>>> > status 0060 <3>omapfb omapfb: irq error status 00e2 omapfb
>>>> omapfb: irq
>>>> > error status 00e2 <3>omapfb omapfb: irq error status 00c2 omapfb
>>>> > omapfb: irq error status 00c2 <3>omapfb omapfb: irq error
>>>> status 0060
>>>> > omapfb omapfb: irq error status 0060 <3>omapfb omapfb: irq error
>>>> > status 00e2 omapfb omapfb: irq error status 00e2 <3>omapfb
>>>> omapfb: irq
>>>> > error status 00c2 omapfb omapfb: irq error status 00c2 <3>omapfb
>>>> > omapfb: irq error status 0060 omapfb omapfb: irq error status 0060
>>>>
>>>> Sanjeev,
>>>>
>>>> For starters can you try with a minimal kernel (no drivers,
>>>> no framebuffer, etc.)
>>>>
>>>> The first goal is to hit retention and off with no drivers
>>>> than start moving out to address driver issues from there.
>>>>
>>>> Kevin
>>>>
>>>
>>> Here is what I was able to see with the minimal config (attached).
>>>
>>> [root@OMAP3EVM /]# echo mem > /sys/power/state
>>> <6>PM: Syncing filesystems ... PM: Syncing filesystems ... done.
>>> done.
>>> Freezing user space processes ... Freezing user space processes ... (elapsed 0.00 seconds) (elapsed 0.00 seconds) done.
>>> done.
>>> Freezing remaining freezable tasks ... Freezing remaining freezable tasks ... (elapsed 0.01 seconds) (elapsed 0.01 seconds) done.done.
>>>
>>> Suspending console(s) (use no_console_suspend to debug)
>>> Suspending console(s) (use no_console_suspend to debug)
>>>
>>> <snip>un-printable characters<snip>
>>>
>>> Powerdomain (per_pwrdm) didn't enter target state 1
>>> Could not enter target state in pm_suspend
>>> Restarting tasks ... Restarting tasks ... done.
>>> done.
>>
>> This is what I see on Beagle as well (PER is not entering retention.)
>>
>
>> At this point, the current PM debug code doesn't help further in
>> determining exactly why a powerdomain did not hit its target state.
>> Some device in the domain may still have its clocks enabled, or its
>> idle state not set correctly.  Or, a given module may have been
>> initialized by the bootloader in a way which prevents it from going
>> idle.
>>
>
>   True. I have observed on omap3evm with minimum configuration, and
> booting out of ramdisk:
>           with nand booting:  only per powerdomain does not enter retention
>           with mmc boot:  core and per dont enter retention
>
>    it could do with clocks set the bootloaders that is preventing it from
>    entering ret/off.

To tackle this you should have CONFIG_OMAP_RESET_CLOCKS enabled in
config.

>    what do you mean by idle state not set correctly? are you referring
> to auto-idle bit?

Not sure what Kevin meant there, but if the problem was in the
autoidle bit in *_SYSCONFIG, I would expect also CORE pwrdm to
fail. Anyway it's also worth of checking the statuses of PER modules
*_SYSCONFIG registers.

>
>
>> We need some improved PM debug capabilities in the kernel to pinpoint
>> exactly the module that is causing the problem.
>>
>
>    Apart from PM debug, are you using any other module/methods to
>    debug?

State of PRCM registers can be quickly checked from
/sys/kernel/debug/pm_debug/registers/current (assuming you have mount
debugfs in /sys/kernel/debug and PM_DEBUG is enabled in config).

-- 
Jouni Högander

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux