From: Santosh Shilimkar <santosh.shilimkar@ti.com>
To: Kevin Hilman <khilman@ti.com>
Cc: linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Subject: RE: [PATCH 0/6] omap3: pm: Fixes for low power code
Date: Tue, 8 Mar 2011 17:11:04 +0530 [thread overview]
Message-ID: <b5cdbcef5de05fd6fa85f532e8c29271@mail.gmail.com> (raw)
In-Reply-To: <87k4ghro9h.fsf@ti.com>
Kevin,
> -----Original Message-----
> From: Kevin Hilman [mailto:khilman@ti.com]
> Sent: Thursday, March 03, 2011 6:53 AM
> To: Santosh Shilimkar
> Cc: linux-omap@vger.kernel.org; linux-arm-kernel@lists.infradead.org
> Subject: Re: [PATCH 0/6] omap3: pm: Fixes for low power code
>
> Hi Santosh,
>
> Santosh Shilimkar <santosh.shilimkar@ti.com> writes:
>
> > The series does below fixes to the omap3 low power code.
> > 1. Use supported ARMv7 instructions instead of the legacy ones
> > 2. Fix the MMU on sequence
> > 3. Fix the cache flush scenario when only L1 lost.
> > 4. Remove all un-necessary context save registers
> > 5. Disable C-bit before cache clean
> > 6. Use set_cr() exported API instead of custom one.
>
> Look like good cleanups, thanks.
>
> > It's generated against mainline and tested with OMAP3630 ZOOM3.
> > 1. Renetion and off-mode mode in suspend - ok.
> > 2. Retention in idle - ok
>
> Testing this series along with other PM changes queued up for
> mainline
> (my pm-core branch), this doesn't work for me on 3630/Zoom3 (but
> works
> fine on 3430/n900.)
>
> Here's what I did using omap2plus_defconfig + enabling CPUidle
>
> First tested suspend:
>
> echo 4 > /debug/pm_debug/wakeup_timer_seconds
> echo mem > /sys/power/state
>
> then, setup UART idle/wakeup:
>
> echo 5 > /sys/devices/platform/omap/omap_uart.0/sleep_timeout
> echo 5 > /sys/devices/platform/omap/omap_uart.1/sleep_timeout
> echo 5 > /sys/devices/platform/omap/omap_uart.2/sleep_timeout
> echo 5 > /sys/devices/platform/omap/omap_uart.3/sleep_timeout
> echo enabled >
> /sys/devices/platform/serial8250.0/tty/ttyS0/power/wakeup
>
> then enabled idle:
>
> echo 1 > /debug/pm_debug/sleep_while_idle
>
> As soon as I do this, it hangs.
>
> Without your series, it's working fine for me. Only after merging
> your series it hangs.
>
I rebased this series against latest pm-core branch which also
has Dave's THUMB2 series merged.
After few trials I managed to reproduce the issue. With
above steps it was still working for me but with off mode
enabled, I saw a lock-up in suspend. Further debugging, I
found that one CP15 register save/restore position was
swapped which lead to this. I fixed that.
I have pushed the rebased series on below branch.
git://dev.omapzoom.org/pub/scm/santosh/kernel-omap4-base.git
pm-core-omap3-asm
Regards,
Santosh
WARNING: multiple messages have this Message-ID (diff)
From: santosh.shilimkar@ti.com (Santosh Shilimkar)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/6] omap3: pm: Fixes for low power code
Date: Tue, 8 Mar 2011 17:11:04 +0530 [thread overview]
Message-ID: <b5cdbcef5de05fd6fa85f532e8c29271@mail.gmail.com> (raw)
In-Reply-To: <87k4ghro9h.fsf@ti.com>
Kevin,
> -----Original Message-----
> From: Kevin Hilman [mailto:khilman at ti.com]
> Sent: Thursday, March 03, 2011 6:53 AM
> To: Santosh Shilimkar
> Cc: linux-omap at vger.kernel.org; linux-arm-kernel at lists.infradead.org
> Subject: Re: [PATCH 0/6] omap3: pm: Fixes for low power code
>
> Hi Santosh,
>
> Santosh Shilimkar <santosh.shilimkar@ti.com> writes:
>
> > The series does below fixes to the omap3 low power code.
> > 1. Use supported ARMv7 instructions instead of the legacy ones
> > 2. Fix the MMU on sequence
> > 3. Fix the cache flush scenario when only L1 lost.
> > 4. Remove all un-necessary context save registers
> > 5. Disable C-bit before cache clean
> > 6. Use set_cr() exported API instead of custom one.
>
> Look like good cleanups, thanks.
>
> > It's generated against mainline and tested with OMAP3630 ZOOM3.
> > 1. Renetion and off-mode mode in suspend - ok.
> > 2. Retention in idle - ok
>
> Testing this series along with other PM changes queued up for
> mainline
> (my pm-core branch), this doesn't work for me on 3630/Zoom3 (but
> works
> fine on 3430/n900.)
>
> Here's what I did using omap2plus_defconfig + enabling CPUidle
>
> First tested suspend:
>
> echo 4 > /debug/pm_debug/wakeup_timer_seconds
> echo mem > /sys/power/state
>
> then, setup UART idle/wakeup:
>
> echo 5 > /sys/devices/platform/omap/omap_uart.0/sleep_timeout
> echo 5 > /sys/devices/platform/omap/omap_uart.1/sleep_timeout
> echo 5 > /sys/devices/platform/omap/omap_uart.2/sleep_timeout
> echo 5 > /sys/devices/platform/omap/omap_uart.3/sleep_timeout
> echo enabled >
> /sys/devices/platform/serial8250.0/tty/ttyS0/power/wakeup
>
> then enabled idle:
>
> echo 1 > /debug/pm_debug/sleep_while_idle
>
> As soon as I do this, it hangs.
>
> Without your series, it's working fine for me. Only after merging
> your series it hangs.
>
I rebased this series against latest pm-core branch which also
has Dave's THUMB2 series merged.
After few trials I managed to reproduce the issue. With
above steps it was still working for me but with off mode
enabled, I saw a lock-up in suspend. Further debugging, I
found that one CP15 register save/restore position was
swapped which lead to this. I fixed that.
I have pushed the rebased series on below branch.
git://dev.omapzoom.org/pub/scm/santosh/kernel-omap4-base.git
pm-core-omap3-asm
Regards,
Santosh
next prev parent reply other threads:[~2011-03-08 11:41 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-21 13:19 [PATCH 0/6] omap3: pm: Fixes for low power code Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-02-21 13:19 ` [PATCH 1/6] omap3: pm: Use amrv7 supported instructions instead of legacy cp15 ones Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-02-21 13:19 ` [PATCH 2/6] omap3: pm: Fix the mmu on sequence in the asm code Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-02-21 13:19 ` [PATCH 3/6] omap3: pm: Allow the cache clean when L1 is lost Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-02-21 13:19 ` [PATCH 4/6] omap3: pm: Remove un-necessary cp15 registers form low power cpu context Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-02-21 13:19 ` [PATCH 5/6] omap3: pm: Clear the SCTLR C bit in asm code to prevent data cache allocation Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-02-21 13:19 ` [PATCH 6/6] omap3: pm: Use exported set_cr() instead of a custom one Santosh Shilimkar
2011-02-21 13:19 ` Santosh Shilimkar
2011-03-03 1:22 ` [PATCH 0/6] omap3: pm: Fixes for low power code Kevin Hilman
2011-03-03 1:22 ` Kevin Hilman
2011-03-04 6:54 ` Santosh Shilimkar
2011-03-04 6:54 ` Santosh Shilimkar
2011-03-08 11:41 ` Santosh Shilimkar [this message]
2011-03-08 11:41 ` Santosh Shilimkar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b5cdbcef5de05fd6fa85f532e8c29271@mail.gmail.com \
--to=santosh.shilimkar@ti.com \
--cc=khilman@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.