All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@ti.com>
To: Mason <slash.tmp@free.fr>
Cc: Felipe Balbi <balbi@ti.com>, Stephen Boyd <sboyd@codeaurora.org>,
	Shawn Guo <shawn.guo@linaro.org>,
	Russell King <linux@arm.linux.org.uk>,
	Arnd Bergmann <arnd@arndb.de>, Tony Lindgren <tony@atomide.com>,
	Linux OMAP <linux-omap@vger.kernel.org>,
	Linux ARM <linux-arm-kernel@lists.infradead.org>
Subject: Re: [RFC/NOT FOR MERGING] HACK: add global/private timers for A9
Date: Thu, 4 Jun 2015 15:37:32 -0500	[thread overview]
Message-ID: <20150604203732.GI5710@saruman.tx.rr.com> (raw)
In-Reply-To: <5570B5E8.90300@free.fr>

[-- Attachment #1: Type: text/plain, Size: 1341 bytes --]

On Thu, Jun 04, 2015 at 10:32:40PM +0200, Mason wrote:
> On 04/06/2015 22:08, Felipe Balbi wrote:
> 
> > On Thu, Jun 04, 2015 at 11:46:59AM +0200, Mason wrote:
> >> Also, check /proc/timer_list for a "Broadcast device". If you don't
> >> define one, the TWD timers are set to periodic mode, with hrtimers
> >> disabled.
> > 
> > Did you manage to turn global timer into Broadcast device ?
> 
> Disclaimer: I am a kernel noob, take everything I say with
> a rock of salt.
> 
> As far as I can see, the global timer code doesn't handle
> frequency changes, whereas the TWD code does.

All right, but TWD has C3STOP and that prevents it from being used as
broadcast device.

Tony Lindgren had the idea of implementing a timer switch during idle
and that could help us strip the kernel off of C3STOP feature flag. That
means we might be able to use TWD as broadcast until CPU decides to
idle, at which point we need to switch to a different timer.

> Yet all these timers are clocked by PERIPHCLK, which is defined
> as CPUCLK / N. So if a platform enables cpufreq, CPUCLK will
> vary, meaning PERIPHCLK will vary. I don't see how the global
> timer can work in that situation.
> 
> cf. also this recent thread:
> http://thread.gmane.org/gmane.linux.kernel.cpufreq/15770

I'll have a read, cheers.

-- 
balbi

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: balbi@ti.com (Felipe Balbi)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC/NOT FOR MERGING] HACK: add global/private timers for A9
Date: Thu, 4 Jun 2015 15:37:32 -0500	[thread overview]
Message-ID: <20150604203732.GI5710@saruman.tx.rr.com> (raw)
In-Reply-To: <5570B5E8.90300@free.fr>

On Thu, Jun 04, 2015 at 10:32:40PM +0200, Mason wrote:
> On 04/06/2015 22:08, Felipe Balbi wrote:
> 
> > On Thu, Jun 04, 2015 at 11:46:59AM +0200, Mason wrote:
> >> Also, check /proc/timer_list for a "Broadcast device". If you don't
> >> define one, the TWD timers are set to periodic mode, with hrtimers
> >> disabled.
> > 
> > Did you manage to turn global timer into Broadcast device ?
> 
> Disclaimer: I am a kernel noob, take everything I say with
> a rock of salt.
> 
> As far as I can see, the global timer code doesn't handle
> frequency changes, whereas the TWD code does.

All right, but TWD has C3STOP and that prevents it from being used as
broadcast device.

Tony Lindgren had the idea of implementing a timer switch during idle
and that could help us strip the kernel off of C3STOP feature flag. That
means we might be able to use TWD as broadcast until CPU decides to
idle, at which point we need to switch to a different timer.

> Yet all these timers are clocked by PERIPHCLK, which is defined
> as CPUCLK / N. So if a platform enables cpufreq, CPUCLK will
> vary, meaning PERIPHCLK will vary. I don't see how the global
> timer can work in that situation.
> 
> cf. also this recent thread:
> http://thread.gmane.org/gmane.linux.kernel.cpufreq/15770

I'll have a read, cheers.

-- 
balbi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150604/b0f8da26/attachment.sig>

  reply	other threads:[~2015-06-04 20:40 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-03 20:32 [RFC/NOT FOR MERGING] HACK: add global/private timers for A9 Felipe Balbi
2015-06-03 20:32 ` Felipe Balbi
2015-06-03 20:44 ` Tony Lindgren
2015-06-03 20:44   ` Tony Lindgren
2015-06-03 20:55 ` Arnd Bergmann
2015-06-03 20:55   ` Arnd Bergmann
2015-06-03 21:04   ` Felipe Balbi
2015-06-03 21:04     ` Felipe Balbi
2015-06-03 21:28     ` Felipe Balbi
2015-06-03 21:28       ` Felipe Balbi
2015-06-03 21:41       ` Stephen Boyd
2015-06-03 21:41         ` Stephen Boyd
2015-06-03 21:54         ` Felipe Balbi
2015-06-03 21:54           ` Felipe Balbi
2015-06-04  9:46           ` Mason
2015-06-04  9:46             ` Mason
2015-06-04 19:05             ` Felipe Balbi
2015-06-04 19:05               ` Felipe Balbi
2015-06-04 20:08             ` Felipe Balbi
2015-06-04 20:08               ` Felipe Balbi
2015-06-04 20:18               ` Felipe Balbi
2015-06-04 20:18                 ` Felipe Balbi
2015-06-04 20:29                 ` Felipe Balbi
2015-06-04 20:29                   ` Felipe Balbi
2015-06-04 22:20                   ` Stephen Boyd
2015-06-04 22:20                     ` Stephen Boyd
2015-06-05 15:42                     ` Felipe Balbi
2015-06-05 15:42                       ` Felipe Balbi
2015-06-04 20:32               ` Mason
2015-06-04 20:32                 ` Mason
2015-06-04 20:37                 ` Felipe Balbi [this message]
2015-06-04 20:37                   ` Felipe Balbi
2015-06-04 21:00                   ` Mason
2015-06-04 21:00                     ` Mason
2015-06-04 21:46                   ` Tony Lindgren
2015-06-04 21:46                     ` Tony Lindgren
2015-06-03 22:26 ` Tony Lindgren
2015-06-03 22:26   ` Tony Lindgren
2015-06-04  3:45   ` Felipe Balbi
2015-06-04  3:45     ` Felipe Balbi

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=20150604203732.GI5710@saruman.tx.rr.com \
    --to=balbi@ti.com \
    --cc=arnd@arndb.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=sboyd@codeaurora.org \
    --cc=shawn.guo@linaro.org \
    --cc=slash.tmp@free.fr \
    --cc=tony@atomide.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.