public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@deeprootsystems.com>
To: "Cousson, Benoit" <b-cousson@ti.com>
Cc: Paul Walmsley <paul@pwsan.com>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>
Subject: Re: hwmod and PER going idle before WFI
Date: Tue, 24 Nov 2009 11:44:09 -0800	[thread overview]
Message-ID: <87iqczu2ra.fsf@deeprootsystems.com> (raw)
In-Reply-To: <74583B8642AB8841B30447520659FCA9DE273C2F@dnce01.ent.ti.com> (Benoit Cousson's message of "Tue\, 24 Nov 2009 20\:33\:39 +0100")

"Cousson, Benoit" <b-cousson@ti.com> writes:

> Hi Kevin,
>
>>From: linux-omap-owner@vger.kernel.org [mailto:linux-omap-
>>owner@vger.kernel.org] On Behalf Of Kevin Hilman
>>
>>Hi Paul,
>>
>>In working with the UART conversion to hwmod, I noticed something I
>>don't see when not using hwmod for managing the UARTs.
>>
>>Namely, in the idle path for PER we do disable the PER UART (via
>>omap_uart_prepare_for_idle(2)) and then the GPIO context is saved via
>>omap3_per_save_context();
>>
>>When switching to use omap_hwmod, I noticed via crashes and then via
>>lauterbach that as soon as UART3 clocks are disabled, PER goes idle.
>>This causes the subsequent GPIO context save to fault since PER has
>>gone idle.
>>
>>I seem to remember having a similar problem before when the problem
>>was in the management of autodeps cause by a mis-merge.
>>
>>The patch below is a hack/workaround that just moves the UART idle after
>>the GPIO context save because I haven't found the root cause yet.
>>
>>Any ideas what might be happening here?
>
> This is probably due to the PER HW supervised mode and the fact that there is no sleep dependency by default between MPU and PER or between CORE and PER.
> As soon as the latest peripherals inside the PER power domain is going to idle, the clock domain and thus the power domain can transition to the next power state, even if the CPU is running.
> It can by avoided by enabling the dependency but then you will prevent the PER to go to OFF mode even if not used.
>
> What was changed to trigger that behavior now?
>

The primary change is using the omap_device API for managing UART PM
in mach-omap2/serial.c instead of directly using clock API.

I'll be posting the UART patches shortly.

Kevin

      reply	other threads:[~2009-11-24 19:44 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-24 19:03 hwmod and PER going idle before WFI Kevin Hilman
2009-11-24 19:33 ` Cousson, Benoit
2009-11-24 19:44   ` Kevin Hilman [this message]

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=87iqczu2ra.fsf@deeprootsystems.com \
    --to=khilman@deeprootsystems.com \
    --cc=b-cousson@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=paul@pwsan.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox