linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 5/5 v2] ARM: OMAP1: recalculate loops per jiffy after dpll1 reprogram
Date: Sat, 10 Dec 2011 00:25:03 +0000	[thread overview]
Message-ID: <20111210002503.GA6018@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <201112091100.01690.jkrzyszt@tis.icnet.pl>

On Fri, Dec 09, 2011 at 11:00:01AM +0100, Janusz Krzysztofik wrote:
> On Friday 09 of December 2011 at 09:42:45, Russell King - ARM Linux wrote:
> > On Tue, Nov 29, 2011 at 01:25:32AM +0100, Janusz Krzysztofik wrote:
> > > However, the result of cpufreq_scale() differs from that of
> > > (re)calibrate_delay() by ca. 6%, i.e., 70.40 vs. 74.54. Please advise if
> > > this approximation is acceptable.
> > 
> > You don't say which figure is what.
> 
> Hi,
> Those were BogoMIPS, which you were talking about in your comment 
> (http://www.spinics.net/lists/linux-omap/msg60811.html).

I realise that.  But which is which - is 70.40 from recalibrate_delay
or is it 74.54?  Your message is too vague to be able to interpret your
results because it's impossible to work out what figure refers to which
method.

> > Note that calibrate_delay() is itself inaccurate - the loops_per_jiffy
> > is the number of loops which can be executed between two timer ticks
> > _minus_ the time to process the timer interrupt itself.  So, it's
> > actually always a little less than the theoretical number of loops
> > within that time period.
> 
> I see. Then, in case of a machine always booting at, let's say, 12 and
> then reprogrammed to 150 MHz, we actually scale up that less then the
> theoretical number, with a side effect of scaling up its error as well.
> Perhaps in this case, when the machine is going to run at that target
> rate until rebooted, we should rather decide to recalibrate to keep
> that error proportionally small compared to the target loops per
> jiffy value, like it worked in my initial proposal? I think that
> your argument about unnecessarily wasting 10s of milliseconds has
> marginal importance here because we will be redoing that calibration
> only once, at boot time, and never later until next reboot.

It really doesn't matter - udelay() etc is not designed to be mega
accurate but good enough.  The fact is that it has always produced a
delay of approximately the value requested of it (and normally it
would produce a slightly shorter delay) and that's a fact of life
that driver authors should already be dealing with.

So, your patch is fine.

  parent reply	other threads:[~2011-12-10  0:25 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-27  3:32 [PATCH 0/5] ARM: OMAP1: Fix dpll1 reprogramming related issues Janusz Krzysztofik
2011-11-27  3:32 ` [PATCH 1/5] ARM: OMAP1: Fix dpll1 default rate reprogramming method Janusz Krzysztofik
2011-11-28 17:45   ` Tony Lindgren
2011-11-28 22:00     ` [PATCH 2a/5] Remove unsafe clock values from omap1_defconfig Janusz Krzysztofik
2011-11-30 22:32       ` Tony Lindgren
2011-11-30 20:57     ` [PATCH 2a/5 v2] ARM: OMAP1: select clock rate by CPU type Janusz Krzysztofik
2011-11-30 22:28       ` Tony Lindgren
2011-12-01 10:10         ` Janusz Krzysztofik
2011-12-01 18:22           ` Tony Lindgren
2011-12-01 18:54             ` Janusz Krzysztofik
2011-12-01 19:06               ` Tony Lindgren
2011-12-04 12:17         ` [PATCH] ARM: OMAP1: Move dpll1 rates selection from config to runtime Janusz Krzysztofik
2011-12-08 23:13           ` Janusz Krzysztofik
2011-12-09  1:51             ` [PATCH v2] " Janusz Krzysztofik
2011-12-09  2:09               ` Tony Lindgren
2011-12-09  2:31                 ` Janusz Krzysztofik
2011-12-09  1:51       ` [PATCH] ARM: OMAP1: Set the omap1623 sram size to 16K Tony Lindgren
     [not found]     ` <201112010310.43890.jkrzyszt@tis.icnet.pl>
     [not found]       ` <20111201022750.GY13928@atomide.com>
2011-12-01  9:54         ` [PATCH 2a/5] Remove unsafe clock values from omap1_defconfig Janusz Krzysztofik
2011-12-01 10:21           ` Janusz Krzysztofik
2011-12-01 17:17           ` Tony Lindgren
2011-12-01 18:38             ` Janusz Krzysztofik
2011-12-01 19:04               ` Tony Lindgren
2011-12-01 19:23                 ` Janusz Krzysztofik
2011-12-01 19:46                   ` Tony Lindgren
2011-12-01 20:30                     ` [PATCH] ARM: OMAP1: " Janusz Krzysztofik
2011-12-01 20:13                   ` [PATCH 0/2 v2] ARM: OMAP1: Fix dpll1 reprogramming related issues Janusz Krzysztofik
2011-12-01 21:16                     ` [PATCH v2] ARM: OMAP1: Update dpll1 default rate reprogramming method Janusz Krzysztofik
2011-12-02  2:09                     ` [PATCH 0/2 v2] ARM: OMAP1: Fix dpll1 reprogramming related issues Tony Lindgren
2011-12-02 17:02                       ` Janusz Krzysztofik
2011-12-01 20:13                   ` [PATCH 1/2 v2] ARM: OMAP1: Fix ckctl value used for dpll1 defualt rate Janusz Krzysztofik
2011-12-01 20:13                   ` [PATCH 2/2 v2] ARM: OMAP1: recalculate loops per jiffy after dpll1 reprogram Janusz Krzysztofik
2011-12-04 15:07                 ` [PATCH] ARM: OMAP1: Always reprogramme dpll1 rate at boot Janusz Krzysztofik
2011-11-27  3:32 ` [PATCH 2/5] ARM: OMAP1: Fix ckctl value used for dpll1 defualt rate Janusz Krzysztofik
2011-11-27  3:32 ` [PATCH 3/5] ARM: OMAP1: Fix dpll1 reprogramming not actually allowed Janusz Krzysztofik
2011-11-28 17:46   ` Tony Lindgren
2011-11-27  3:32 ` [PATCH 4/5] init/calibrate.c: allow for recalibration of loops per jiffy Janusz Krzysztofik
2011-11-28 15:39   ` Russell King - ARM Linux
2011-11-28 22:30     ` Janusz Krzysztofik
2011-11-27  3:32 ` [PATCH 5/5] ARM: OMAP1: recalibrate loops per jiffy after dpll1 reprogram Janusz Krzysztofik
2011-11-29  0:25   ` [PATCH 5/5 v2] ARM: OMAP1: recalculate " Janusz Krzysztofik
2011-12-09  8:42     ` Russell King - ARM Linux
2011-12-09 10:00       ` Janusz Krzysztofik
2011-12-09 10:09         ` Janusz Krzysztofik
2011-12-10  0:25         ` Russell King - ARM Linux [this message]
2011-12-10 12:04           ` Janusz Krzysztofik

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=20111210002503.GA6018@n2100.arm.linux.org.uk \
    --to=linux@arm.linux.org.uk \
    --cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).