public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@deeprootsystems.com>
To: Koen Kooi <koen@beagleboard.org>
Cc: "Woodruff, Richard" <r-woodruff2@ti.com>,
	"linux-omap@vger.kernel.org List" <linux-omap@vger.kernel.org>
Subject: Re: Beagle PM hangs
Date: Fri, 30 Jan 2009 14:39:43 -0800	[thread overview]
Message-ID: <87y6wsh100.fsf@deeprootsystems.com> (raw)
In-Reply-To: <212700A7-C5FE-4CAA-BACF-7931D45C02CC@beagleboard.org> (Koen Kooi's message of "Fri\, 30 Jan 2009 23\:09\:13 +0100")

Koen Kooi <koen@beagleboard.org> writes:

> Op 30 jan 2009, om 23:03 heeft Woodruff, Richard het volgende
> geschreven:
>
>>
>>>> Just a thought, do you still see these problems when using the
>>>> CPUfreq
>>>> performance governor instead of the ondemand governor?
>>>>
>>>> It could be pointing to some bugs in the switching of operating
>>>> points.
>>>
>>> Speaking of operating points, is there a reason why cpufreq only goes
>>> to 550MHz? It's disappointing that omap3 gets marketed with "600MHz",
>>> but that TI won't let it run at that speed with their cpufreq
>>> drivers.
>>
>> Run at that speed on your board if you like.  You can run even
>> faster if you like but at some point you will start to have odd
>> failures.
>>
>> The 600MHz overdrive operating point is such that if you use it all
>> the time your part life may be reduced.  If you use the stock
>> ondemand governor with no kind of policy teak you'll be at that OPP
>> a lot.
>>
>> Percentage operation in overdrive figures into expected life of a
>> given part. For reference code we just make the needed use cases
>> explicitly ask for overdrive.  This way usage is predictable in well
>> defined mobile product.
>>
>> Depending on the chip you buy things are rated differently.  This
>> rating requires part sorting which typically pushes the price up
>> some.  Any step you add into fabrication of high volumes increases
>> cost.
>
> If you look at http://beagleboard.org/hardware it says "600Mhz"
> multiple times, so I'd expect the board to be running at 600MHz if I
> were a customer. If I read the TRM right I can run the cpu at 600MHz
> continuously for a few years, which exceeds the lifespan of most
> mobile products I have owned.
> So my real question is: why limit it in the kernel if all that's
> needed is a costum userspace governer?

In fact, you wouldn't even need a custom governor.

You can just use performance or ondemand, and use CPUfreq policies set
the max available frequency at 550 most of the time, but set the max
to 600 for certain usecases.

Also, dropping the in-kernel restricion is very trivial.  See patch
below.  With that patch applied, just use performance or ondemand
governors and do this:

To avoid governor picking overdrive OPP:

# echo 550000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq  

To allow overdrive:

# echo 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq  

Kevin

diff --git a/arch/arm/mach-omap2/clock34xx.c b/arch/arm/mach-omap2/clock34xx.c
index 2389eb6..e9a75a3 100644
--- a/arch/arm/mach-omap2/clock34xx.c
+++ b/arch/arm/mach-omap2/clock34xx.c
@@ -698,8 +698,7 @@ void omap2_clk_init_cpufreq_table(struct cpufreq_frequency_table **table)
 	if (!mpu_opps)
 		return;
 
-	/* Avoid registering the 120% Overdrive with CPUFreq */
-	prcm = mpu_opps + MAX_VDD1_OPP - 1;
+	prcm = mpu_opps + MAX_VDD1_OPP;
 	for (; prcm->rate; prcm--) {
 		freq_table[i].index = i;
 		freq_table[i].frequency = prcm->rate / 1000;

  reply	other threads:[~2009-01-30 22:39 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <345163910901280814nb847b34pca50f4ee6e49929d@mail.gmail.com>
2009-01-28 16:28 ` Beagle PM hangs Kevin Hilman
2009-01-28 17:46   ` Kevin Hilman
2009-01-30 14:16     ` Sriram V
2009-01-30 14:34       ` Woodruff, Richard
2009-01-30 17:12         ` Kevin Hilman
2009-01-30 19:41           ` Pandita, Vikram
2009-01-30 19:53           ` Kevin Hilman
2009-01-30 21:31           ` Woodruff, Richard
2009-02-02  5:00           ` Nayak, Rajendra
2009-01-30 21:34     ` Koen Kooi
2009-01-30 22:03       ` Woodruff, Richard
2009-01-30 22:09         ` Koen Kooi
2009-01-30 22:39           ` Kevin Hilman [this message]
2009-01-30 22:49             ` Woodruff, Richard
2009-01-30 23:21               ` Kevin Hilman
2009-01-31 11:18                 ` Igor Stoppa
2009-01-30 22:40           ` Woodruff, Richard
2009-01-29 17:20   ` Peter Reid

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=87y6wsh100.fsf@deeprootsystems.com \
    --to=khilman@deeprootsystems.com \
    --cc=koen@beagleboard.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=r-woodruff2@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox