From: Eric Piel <Eric.Piel@tremplin-utc.net>
To: venkatesh.pallipadi@intel.com
Cc: davej@redhat.com, Dominik Brodowski <linux@dominikbrodowski.net>,
cpufreq@lists.linux.org.uk
Subject: Re: [PATCH] transition latency of speedstep-ich (third try)
Date: Tue, 20 Sep 2005 00:35:15 +0200 [thread overview]
Message-ID: <432F3D23.9040308@tremplin-utc.net> (raw)
In-Reply-To: <20050919101843.GA13041@isilmar.linta.de>
19.09.2005 12:18, Dominik Brodowski wrote/a écrit:
> Hi,
>
> On Sun, Sep 18, 2005 at 11:15:09PM +0200, Eric Piel wrote:
>
>>Here is my third try to get speedstep-ich compatible with the ondemand
>>governor. Taking into account the comments of Dominik I've gone through
>>the intel documentation in order to get the transition latency depending
>>on the processor.
>
> Thanks for doing so!
>
>
>>+ case SPEEDSTEP_PROCESSOR_PIII_T:
>>+ /* Max 100??s, according to intel's 29834006.pdf p.22 */
>
> ^^
> The greek sign in microsecond can't be printed well, so I suggest you use
> "us" instead.
>
>
>>+ * Max ~42??s -> 50??s, according to intel's 25068607.pdf p.40 and p.50
>
> ^^ ^^
> same here.
Ok, sorry, just forgot it was not an ASCII character (even xterm
supports UTF-8 nowadays ;-) ). I'll resend as soon as I get the answer
from Venki.
> Other than that, it'd be great if you, Venki, could take a look at the
> technical side of this. Because of the cpufreq list still being down, I
> attached the message in full below.
Indeed, Venki, I would be extremely thanksfull if you could validate
those numbers. To sum up, could you confirm that the transition latency
between two frequencies never exeeds:
* 100us for Coppermine and Tualatin
* 50us for Pentium 4 M
Cheers
Eric
>
>>While for the centrino processors such information is clearly written,
>>this was not the case for the processors managed by speedstep-ich. I did
>>my best to understand the electrical timing descriptions and the results
>>look realistic, but I can't guaranty 100% certainty. At least, the code
>>hasn't destroyed my pentium coppermine yet ;-)
>>
>>It's against 2.6.13, hope you like it...
>>
>>Eric
>>
>>--
>>Set the transition latency of speedstep-ich depending on the processor,
>>using information taken from intel's manuals.
>>
>>Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net>
>>--
>
>
>>--- linux-2.6.13/arch/i386/kernel/cpu/cpufreq/speedstep-ich.c.bak 2005-08-08 10:14:35.000000000 +0200
>>+++ linux-2.6.13/arch/i386/kernel/cpu/cpufreq/speedstep-ich.c 2005-09-17 12:50:27.000000000 +0200
>>@@ -301,6 +301,35 @@ static int speedstep_verify (struct cpuf
>> }
>>
>>
>>+/**
>>+ * speedstep_get_transition_latency - returns the maximum transition latency
>>+ * of the current processor
>>+ * @processor: type of processor
>>+ *
>>+ * The CPU transition latency depends on the type of CPU, so we get it
>>+ * from a database.
>>+ */
>>+static unsigned int speedstep_get_transition_latency(unsigned int processor)
>>+{
>>+ switch (processor) {
>>+ case SPEEDSTEP_PROCESSOR_PIII_C:
>>+ case SPEEDSTEP_PROCESSOR_PIII_C_EARLY:
>>+ /* According to intel's p3_ds.pdf p.23 and table 22, similar to PIII_T */
>>+ case SPEEDSTEP_PROCESSOR_PIII_T:
>>+ /* Max 100??s, according to intel's 29834006.pdf p.22 */
>>+ return 100000;
>>+ case SPEEDSTEP_PROCESSOR_P4M:
>>+ /*
>>+ * Depends on the bus clock, which should be at least 100MHz.
>>+ * Max ~42??s -> 50??s, according to intel's 25068607.pdf p.40 and p.50
>>+ */
>>+ return 50000;
>>+ default:
>>+ /* No info has yet be found, so we are conservative */
>>+ return CPUFREQ_ETERNAL;
>>+ }
>>+}
>>+
>> static int speedstep_cpu_init(struct cpufreq_policy *policy)
>> {
>> int result = 0;
>>@@ -335,7 +364,8 @@ static int speedstep_cpu_init(struct cpu
>>
>> /* cpuinfo and default policy values */
>> policy->governor = CPUFREQ_DEFAULT_GOVERNOR;
>>- policy->cpuinfo.transition_latency = CPUFREQ_ETERNAL;
>>+ policy->cpuinfo.transition_latency =
>>+ speedstep_get_transition_latency(speedstep_processor);
>> policy->cur = speed;
>>
>> result = cpufreq_frequency_table_cpuinfo(policy, speedstep_freqs);
next prev parent reply other threads:[~2005-09-19 22:35 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-06 22:33 [PATCH] support for CPUFREQ_ETERNAL drivers by the ondemand governor Eric Piel
2005-02-09 19:15 ` Dominik Brodowski
2005-03-06 17:06 ` [PATCH] transition latency of speedstep-ich Eric Piel
[not found] ` <20050307182137.GB24559@isilmar.linta.de>
[not found] ` <432DD8DD.3090805@tremplin-utc.net>
[not found] ` <20050919101843.GA13041@isilmar.linta.de>
2005-09-19 22:35 ` Eric Piel [this message]
-- strict thread matches above, loose matches on Subject: below --
2005-09-28 1:26 [PATCH] transition latency of speedstep-ich (third try) Pallipadi, Venkatesh
2005-09-28 21:38 ` Eric Piel
2005-09-28 23:53 Pallipadi, Venkatesh
2005-09-29 22:06 ` Eric Piel
2005-10-14 15:19 ` Stefan Seyfried
2005-10-05 20:39 Pallipadi, Venkatesh
2005-11-26 22:40 ` Eric Piel
2005-11-28 22:12 ` Mattia Dongili
2005-11-28 22:19 Pallipadi, Venkatesh
2005-11-28 23:35 ` Eric Piel
2005-11-28 23:48 ` Mattia Dongili
2005-11-29 7:48 ` Mattia Dongili
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=432F3D23.9040308@tremplin-utc.net \
--to=eric.piel@tremplin-utc.net \
--cc=cpufreq@lists.linux.org.uk \
--cc=davej@redhat.com \
--cc=linux@dominikbrodowski.net \
--cc=venkatesh.pallipadi@intel.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.