From: maxime.ripard@free-electrons.com (Maxime Ripard)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4] clocksource: arch_timer: Fix code to use physical timers when requested
Date: Thu, 20 Nov 2014 09:49:00 +0100 [thread overview]
Message-ID: <20141120084900.GC24143@lukather> (raw)
In-Reply-To: <1412753937-29343-1-git-send-email-sonnyrao@chromium.org>
Hi,
On Wed, Oct 08, 2014 at 12:38:57AM -0700, Sonny Rao wrote:
> This is a bug fix for using physical arch timers when
> the arch_timer_use_virtual boolean is false. It restores the
> arch_counter_get_cntpct() function after removal in
>
> 0d651e4e "clocksource: arch_timer: use virtual counters"
>
> We need this on certain ARMv7 systems which are architected like this:
>
> * The firmware doesn't know and doesn't care about hypervisor mode and
> we don't want to add the complexity of hypervisor there.
>
> * The firmware isn't involved in SMP bringup or resume.
>
> * The ARCH timer come up with an uninitialized offset between the
> virtual and physical counters. Each core gets a different random
> offset.
>
> * The device boots in "Secure SVC" mode.
>
> * Nothing has touched the reset value of CNTHCTL.PL1PCEN or
> CNTHCTL.PL1PCTEN (both default to 1 at reset)
>
> One example of such as system is RK3288 where it is much simpler to
> use the physical counter since there's nobody managing the offset and
> each time a core goes down and comes back up it will get reinitialized
> to some other random value.
>
> Fixes: 0d651e4e65e9 ("clocksource: arch_timer: use virtual counters")
> Cc: stable at vger.kernel.org
> Signed-off-by: Sonny Rao <sonnyrao@chromium.org>
> Acked-by: Olof Johansson <olof@lixom.net>
Has this been merged yet?
If not, you can add my Tested-by, it makes the Allwinner A31 boot
flawlessly with the arch timers (together with the patch "clocksource:
arch_timer: Allow the device tree to specify uninitialized timer
registers")
Thanks!
Maxime
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- 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/20141120/1344830f/attachment.sig>
WARNING: multiple messages have this Message-ID (diff)
From: Maxime Ripard <maxime.ripard@free-electrons.com>
To: Sonny Rao <sonnyrao@chromium.org>
Cc: linux-arm-kernel@lists.infradead.org,
Mark Rutland <Mark.Rutland@arm.com>,
Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
Russell King <linux@arm.linux.org.uk>,
Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Will Deacon <will.deacon@arm.com>,
linux-kernel@vger.kernel.org, stable@vger.kernel.org,
dianders@chromium.org, Marc Zyngier <marc.zyngier@arm.com>,
Sudeep Holla <Sudeep.Holla@arm.com>,
Olof Johansson <olof@lixom.net>,
Thomas Gleixner <tglx@linutronix.de>,
Stephen Boyd <sboyd@codeaurora.org>
Subject: Re: [PATCH v4] clocksource: arch_timer: Fix code to use physical timers when requested
Date: Thu, 20 Nov 2014 09:49:00 +0100 [thread overview]
Message-ID: <20141120084900.GC24143@lukather> (raw)
In-Reply-To: <1412753937-29343-1-git-send-email-sonnyrao@chromium.org>
[-- Attachment #1: Type: text/plain, Size: 1760 bytes --]
Hi,
On Wed, Oct 08, 2014 at 12:38:57AM -0700, Sonny Rao wrote:
> This is a bug fix for using physical arch timers when
> the arch_timer_use_virtual boolean is false. It restores the
> arch_counter_get_cntpct() function after removal in
>
> 0d651e4e "clocksource: arch_timer: use virtual counters"
>
> We need this on certain ARMv7 systems which are architected like this:
>
> * The firmware doesn't know and doesn't care about hypervisor mode and
> we don't want to add the complexity of hypervisor there.
>
> * The firmware isn't involved in SMP bringup or resume.
>
> * The ARCH timer come up with an uninitialized offset between the
> virtual and physical counters. Each core gets a different random
> offset.
>
> * The device boots in "Secure SVC" mode.
>
> * Nothing has touched the reset value of CNTHCTL.PL1PCEN or
> CNTHCTL.PL1PCTEN (both default to 1 at reset)
>
> One example of such as system is RK3288 where it is much simpler to
> use the physical counter since there's nobody managing the offset and
> each time a core goes down and comes back up it will get reinitialized
> to some other random value.
>
> Fixes: 0d651e4e65e9 ("clocksource: arch_timer: use virtual counters")
> Cc: stable@vger.kernel.org
> Signed-off-by: Sonny Rao <sonnyrao@chromium.org>
> Acked-by: Olof Johansson <olof@lixom.net>
Has this been merged yet?
If not, you can add my Tested-by, it makes the Allwinner A31 boot
flawlessly with the arch timers (together with the patch "clocksource:
arch_timer: Allow the device tree to specify uninitialized timer
registers")
Thanks!
Maxime
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2014-11-20 8:49 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-08 7:38 [PATCH v4] clocksource: arch_timer: Fix code to use physical timers when requested Sonny Rao
2014-10-08 7:38 ` Sonny Rao
2014-11-20 8:49 ` Maxime Ripard [this message]
2014-11-20 8:49 ` Maxime Ripard
2014-11-20 9:18 ` Sonny Rao
2014-11-20 9:18 ` Sonny Rao
2014-11-20 9:23 ` Daniel Lezcano
2014-11-20 9:23 ` Daniel Lezcano
2014-11-20 10:20 ` Daniel Lezcano
2014-11-20 10:20 ` Daniel Lezcano
2014-11-20 16:10 ` Catalin Marinas
2014-11-20 16:10 ` Catalin Marinas
2014-11-20 16:24 ` Doug Anderson
2014-11-20 16:24 ` Doug Anderson
2014-11-20 16:58 ` Catalin Marinas
2014-11-20 16:58 ` Catalin Marinas
2014-11-21 20:58 ` Olof Johansson
2014-11-21 20:58 ` Olof Johansson
2014-11-24 2:25 ` Sonny Rao
2014-11-24 2:25 ` Sonny Rao
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=20141120084900.GC24143@lukather \
--to=maxime.ripard@free-electrons.com \
--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 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.