From: Kevin Hilman <khilman@ti.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Joe Woodward <jw@terrafix.co.uk>, Paul Walmsley <paul@pwsan.com>,
Archit Taneja <a0393947@ti.com>,
linux-omap@vger.kernel.org
Subject: Re: v3.4-rc4 DSS PM problem (Was: Re: Problems with 3.4-rc5)
Date: Tue, 15 May 2012 10:29:11 -0700 [thread overview]
Message-ID: <87pqa5mjyw.fsf@ti.com> (raw)
In-Reply-To: <1337066897.1951.12.camel@lappyti> (Tomi Valkeinen's message of "Tue, 15 May 2012 10:28:17 +0300")
Tomi Valkeinen <tomi.valkeinen@ti.com> writes:
> On Mon, 2012-05-14 at 15:48 -0700, Kevin Hilman wrote:
>> Tomi Valkeinen <tomi.valkeinen@ti.com> writes:
>>
>> > On Mon, 2012-05-14 at 08:36 +0100, Joe Woodward wrote:
>> >> Any news on this?
>> >>
>> >> This thread seems to have gone a little quiet...
>> >
>> > Hi,
>> >
>> > I've been doing testing to understand the problem, but so far I don't
>> > have any idea why things go wrong. I haven't found out any logic in
>> > which configuration works and which doesn't. Looks to me that for some
>> > reason the PM prevents DSS from getting data fast enough with certain
>> > fifo thresholds.
>> >
>> > I have two ways to avoid the problem, but I've been reluctant to make
>> > patches for those because I feel it's just hiding the problem. One way
>> > is to change DISPC SIDLEMODE or MIDLEMODE to disallow idle/standby. The
>> > other is to use certain fifo threshold values, which just seem to work
>> > for unknown reasons.
>> >
>> > Considering that we already have a SIDLEMODE hack in DSS for omap3 when
>> > using DSI, I wonder if the omap3 PM + DSS combination is just plain
>> > broken, and we should disallow idle. I'm not quite sure what are the
>> > implications of that.
>> >
>> > I'd appreciate comments from the PM people =).
>>
>> Unfortunately, without the bandwidth to dig into this deeply myself, I
>> don't have much to add.
>
> Yes, that's understandable.
>
> However, can you shed some light about the PM in OMAP3. What is it that
> happens here regarding PM, which does not happen is USB gadget driver is
> compiled in? Or when I set DSS to no-idle or no-standby? Something about
> L3/core/memory going into idle state?
My first guess would have been that in those two cases, CORE was
prevented from going into retention, but based on what you said earlier,
it sounds like CORE is always staying on.
Just to clarify: by USB gadget, I assume you mean MUSB? (a.k.a USB OTG,
or HS USB in the TRM)? I'm a bit confused because earlier you mentioned
keeping usbhost_pwrdm active, but USB host is separate IP in its own
powerdomain, whereas USB OTG is an IP in the CORE powerdomain.
> I tried to look at the debugfs/pm_debug/ files, but I couldn't see a
> difference between working and non-working cases. At least the
> OFF/RET/ON/etc states were not affected. Are there some other debug
> files to look at? Are there power saving features that are not
> observable via debug files?
There may not be a difference in the actual states being hit, but there
may be subtle differences in latencies to enter/exit the various states.
An interesting experiment would be to disable the deeper C-states in
CPUidle and see if the problem still exists. Here's a little shell
snippet to do this via sysfs:
# CPUidle: disable everything but C1
cd /sys/devices/system/cpu/cpu0/cpuidle
for state in state[1-6]*; do
if [ -e ${state} ]; then
echo 1 > ${state}/disable
fi
done
>> As we know, it's not unheard of for various IPs to have bugs in
>> smart-idle mode ;)
>>
>> The one thing I can say is that the reason it probably worked on earlier
>> kernels was because the UART driver was not actually idling, so you were
>> probably never hitting low power states.
>
> There is also a change in the DSS fifos, which probably triggered this.
> I think I can fall back to the old behavior.
Because of the current boot defaults, the only pwrdm that is actively
transitioning during idle is the MPU pwrdm.
So if preventing the MPU pwrdm from hitting idle makes the problem go
away, we'd need to better understand this wakeup latency constraint and
possibly code it in the DSS driver.
Kevin
next prev parent reply other threads:[~2012-05-15 17:29 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-02 11:52 Problems with 3.4-rc5 Joe Woodward
2012-05-02 12:24 ` Archit Taneja
2012-05-02 12:46 ` Joe Woodward
2012-05-03 8:28 ` Tomi Valkeinen
2012-05-03 8:49 ` Joe Woodward
2012-05-03 10:02 ` Archit Taneja
2012-05-03 13:07 ` Tomi Valkeinen
2012-05-04 9:19 ` Joe Woodward
2012-05-04 13:50 ` Tomi Valkeinen
2012-05-04 14:01 ` Tomi Valkeinen
2012-05-04 14:09 ` Joe Woodward
2012-05-04 14:54 ` v3.4-rc4 DSS PM problem (Was: Re: Problems with 3.4-rc5) Tomi Valkeinen
2012-05-04 14:58 ` Tomi Valkeinen
2012-05-08 13:26 ` Tomi Valkeinen
2012-05-14 7:36 ` Joe Woodward
2012-05-14 7:55 ` Tomi Valkeinen
2012-05-14 22:48 ` Kevin Hilman
2012-05-15 7:28 ` Tomi Valkeinen
2012-05-15 17:29 ` Kevin Hilman [this message]
2012-05-15 17:55 ` Paul Walmsley
2012-05-16 9:08 ` Tomi Valkeinen
2012-05-16 9:20 ` Tomi Valkeinen
2012-05-24 16:19 ` Paul Walmsley
2012-05-16 10:09 ` Cousson, Benoit
2012-05-24 12:35 ` Tomi Valkeinen
2012-05-25 0:39 ` Paul Walmsley
2012-05-25 8:24 ` Tomi Valkeinen
2012-05-25 12:55 ` Jean Pihet
2012-06-12 10:15 ` Joe Woodward
2012-06-12 10:37 ` Tomi Valkeinen
2012-06-12 10:50 ` Joe Woodward
2012-06-12 11:05 ` Tomi Valkeinen
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=87pqa5mjyw.fsf@ti.com \
--to=khilman@ti.com \
--cc=a0393947@ti.com \
--cc=jw@terrafix.co.uk \
--cc=linux-omap@vger.kernel.org \
--cc=paul@pwsan.com \
--cc=tomi.valkeinen@ti.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 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.