From: Marc Zyngier <marc.zyngier@arm.com>
To: "Mylène Josserand" <mylene.josserand@bootlin.com>,
maxime.ripard@bootlin.com, wens@csie.org, linux@armlinux.org.uk,
robh+dt@kernel.org, mark.rutland@arm.com
Cc: devicetree@vger.kernel.org, quentin.schulz@bootlin.com,
linux-kernel@vger.kernel.org, clabbe.montjoie@gmail.com,
thomas.petazzoni@bootlin.com,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v3 6/7] arm: dts: sun8i: a83t: Fix undefined offset with virtual timer
Date: Tue, 20 Feb 2018 18:07:54 +0000 [thread overview]
Message-ID: <823f256a-3240-7bb4-cc0b-711108f3076c@arm.com> (raw)
In-Reply-To: <20180219081837.15482-7-mylene.josserand@bootlin.com>
Hi Mylène,
On 19/02/18 08:18, Mylène Josserand wrote:
> The ARM architected timers use an offset between their physical and
> virtual counters. That offset should be configured by the bootloader
> in CNTVOFF.
>
> However, the A83t bootloader fails to do so, and we end up with an
> undefined offset (which in our case is random), meaning that each CPU
> will have a different time, which isn't working very well.
>
> Fix that by setting the arm,cpu-registers-not-fw-configured that will
> make Linux use the physical timers instead of the virtual ones. One
> possible side effect would be that the virtualization features would
> be disabled. However, due to the way the GIC has been integrated in
> the system, it is already unusable so we're effectively not losing any
> feature.
>
> Signed-off-by: Mylène Josserand <mylene.josserand@bootlin.com>
> ---
> arch/arm/boot/dts/sun8i-a83t.dtsi | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/boot/dts/sun8i-a83t.dtsi b/arch/arm/boot/dts/sun8i-a83t.dtsi
> index e97a6d17b8d0..b9bdb891cf2f 100644
> --- a/arch/arm/boot/dts/sun8i-a83t.dtsi
> +++ b/arch/arm/boot/dts/sun8i-a83t.dtsi
> @@ -123,6 +123,7 @@
> <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
> <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
> <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
> + arm,cpu-registers-not-fw-configured;
> };
>
> clocks {
>
Is the firmware dropping you in the kernel in secure or non-secure mode?
If the later, what you have is the only solution. If the former, that
I'd suggest you adopt what we already have for the Renesas stuff (see
arch/arm/mach-shmobile/headsmp-apmu.S and commit 3fd45a136ff6).
It would allow you to use the virtual timer as intended.
Thanks,
M.
--
Jazz is not dead. It just smells funny...
next prev parent reply other threads:[~2018-02-20 18:07 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-19 8:18 [PATCH v3 0/7] Add SMP support on sun8i-a83t Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 1/7] ARM: sun8i: smp: Add support for A83T Mylène Josserand
2018-02-19 9:04 ` Maxime Ripard
2018-02-19 10:39 ` Mylène Josserand
2018-02-20 3:32 ` Chen-Yu Tsai
2018-02-22 7:47 ` Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 2/7] ARM: dts: sun8i: Add CPUCFG device node for A83T dtsi Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 3/7] ARM: dts: sun8i: Add PRCM device node for the " Mylène Josserand
2018-02-19 8:48 ` Maxime Ripard
2018-02-19 10:42 ` Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 4/7] ARM: dts: sun8i: Add R_CPUCFG " Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 5/7] arm: dts: sun8i: a83t: Add CCI-400 node Mylène Josserand
2018-02-19 8:49 ` Maxime Ripard
2018-02-19 10:43 ` Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 6/7] arm: dts: sun8i: a83t: Fix undefined offset with virtual timer Mylène Josserand
2018-02-19 8:52 ` Maxime Ripard
2018-02-19 10:44 ` Mylène Josserand
2018-02-20 18:07 ` Marc Zyngier [this message]
2018-02-22 9:30 ` Mylène Josserand
2018-02-19 8:18 ` [PATCH v3 7/7] ARM: sun8i: smp: Remove the disabling of CPU0 Mylène Josserand
2018-02-19 8:54 ` Maxime Ripard
2018-02-19 10:50 ` Mylène Josserand
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=823f256a-3240-7bb4-cc0b-711108f3076c@arm.com \
--to=marc.zyngier@arm.com \
--cc=clabbe.montjoie@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=mark.rutland@arm.com \
--cc=maxime.ripard@bootlin.com \
--cc=mylene.josserand@bootlin.com \
--cc=quentin.schulz@bootlin.com \
--cc=robh+dt@kernel.org \
--cc=thomas.petazzoni@bootlin.com \
--cc=wens@csie.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