linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: mylene.josserand@bootlin.com (Mylène Josserand)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 6/7] arm: dts: sun8i: a83t: Fix undefined offset with virtual timer
Date: Thu, 22 Feb 2018 10:30:15 +0100	[thread overview]
Message-ID: <20180222103015.40249fee@dell-desktop.home> (raw)
In-Reply-To: <823f256a-3240-7bb4-cc0b-711108f3076c@arm.com>

Hi Marc,

Thank you for the review!

On Tue, 20 Feb 2018 18:07:54 +0000
Marc Zyngier <marc.zyngier@arm.com> wrote:

> 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?

For sun8i-a83t, the kernel is in 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.

Okay, thanks for the commit pointed, I will try to adopt what it is done
for Renesas.

Best regards,

-- 
Myl?ne Josserand, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
http://bootlin.com

  reply	other threads:[~2018-02-22  9:30 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
2018-02-22  9:30     ` Mylène Josserand [this message]
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=20180222103015.40249fee@dell-desktop.home \
    --to=mylene.josserand@bootlin.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 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).