All of lore.kernel.org
 help / color / mirror / Atom feed
From: daniel.lezcano@linaro.org (Daniel Lezcano)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v9 0/4] arm64: arch_timer: Add workaround for hisilicon-161010101 erratum
Date: Mon, 30 Jan 2017 22:54:30 +0100	[thread overview]
Message-ID: <20170130215430.GJ2206@mai> (raw)
In-Reply-To: <20170130155209.GC1160@leverpostej>

On Mon, Jan 30, 2017 at 03:52:09PM +0000, Mark Rutland wrote:
> Hi Daniel,
> 
> On Tue, Jan 24, 2017 at 05:35:51PM +0100, Daniel Lezcano wrote:
> > That wasn't my point. The way the errata are handled in this patchset is
> > elegant and I have nothing against it. I'm worried about the accumulation of
> > fixes, hacks, workarounds in this driver. So my naive question is about not
> > using an identified bogus clocksource and use another one available on the
> > board, which is I believe often the case, instead of trying to deal with bogus
> > hardware. Apparently, that is not possible because 1) of KVM, 2) of duplication
> > and 3) of integration with the ARM64 code.
> > 
> > Does it mean it is not possible to use another clocksource/clockevent than the
> > armv8-timer ?
> > 
> > Can you elaborate these three points ? 
> 
> Practically speaking, these platforms have no other clocksource or
> clockevent device that I am aware of, which can be enumerated in a
> standard manner using ACPI.
> 
> For point 1, KVM is intimately familiar with the architected timer
> (which is managed during VM context switch in hyp code, for example).
> KVM knows nothing of other clocksource or clockevent devices, and it is
> far from trivial to plumb these in either way. Since the architected
> timer is a mandatory part of ARMv8, guests may attempt to use it
> regardless.
> 
> For point 3, arm64 currently requires the architected timer as this is
> mandatory per the ARMv8 architecture. It is non-trivial to add support
> for other devices to the vDSO, the delay loop, etc.

Ok, thanks for these clarifications.

> Localising these quirks to the architected timer driver is by far the
> least worst option available. Marc and I are perfectly happy to manage
> that.

It is up to me to ensure the clockevent/clocksource drivers in general are
following the right direction. And this driver looks more and more opaque. I
will spend some times to do a review of the driver as soon as I have time.

So we finish the reviews of this series, you take the patches when I ack them up,
but from this point, any submission for this driver will have to stick to the
standard submission rules, that is to say: Thomas Gleixner and I have to be
recipients of the patches and go through our tree. Dependency issues with
other patchset must be solved before applying them in another tree.

Thanks.

  -- Daniel

-- 

 <http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: Mark Rutland <mark.rutland@arm.com>
Cc: devicetree@vger.kernel.org, Marc Zyngier <marc.zyngier@arm.com>,
	catalin.marinas@arm.com, will.deacon@arm.com,
	stuart.yoder@nxp.com, linuxarm@huawei.com, oss@buserror.net,
	Ding Tianhong <dingtianhong@huawei.com>,
	shawnguo@kernel.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v9 0/4] arm64: arch_timer: Add workaround for hisilicon-161010101 erratum
Date: Mon, 30 Jan 2017 22:54:30 +0100	[thread overview]
Message-ID: <20170130215430.GJ2206@mai> (raw)
In-Reply-To: <20170130155209.GC1160@leverpostej>

On Mon, Jan 30, 2017 at 03:52:09PM +0000, Mark Rutland wrote:
> Hi Daniel,
> 
> On Tue, Jan 24, 2017 at 05:35:51PM +0100, Daniel Lezcano wrote:
> > That wasn't my point. The way the errata are handled in this patchset is
> > elegant and I have nothing against it. I'm worried about the accumulation of
> > fixes, hacks, workarounds in this driver. So my naive question is about not
> > using an identified bogus clocksource and use another one available on the
> > board, which is I believe often the case, instead of trying to deal with bogus
> > hardware. Apparently, that is not possible because 1) of KVM, 2) of duplication
> > and 3) of integration with the ARM64 code.
> > 
> > Does it mean it is not possible to use another clocksource/clockevent than the
> > armv8-timer ?
> > 
> > Can you elaborate these three points ? 
> 
> Practically speaking, these platforms have no other clocksource or
> clockevent device that I am aware of, which can be enumerated in a
> standard manner using ACPI.
> 
> For point 1, KVM is intimately familiar with the architected timer
> (which is managed during VM context switch in hyp code, for example).
> KVM knows nothing of other clocksource or clockevent devices, and it is
> far from trivial to plumb these in either way. Since the architected
> timer is a mandatory part of ARMv8, guests may attempt to use it
> regardless.
> 
> For point 3, arm64 currently requires the architected timer as this is
> mandatory per the ARMv8 architecture. It is non-trivial to add support
> for other devices to the vDSO, the delay loop, etc.

Ok, thanks for these clarifications.

> Localising these quirks to the architected timer driver is by far the
> least worst option available. Marc and I are perfectly happy to manage
> that.

It is up to me to ensure the clockevent/clocksource drivers in general are
following the right direction. And this driver looks more and more opaque. I
will spend some times to do a review of the driver as soon as I have time.

So we finish the reviews of this series, you take the patches when I ack them up,
but from this point, any submission for this driver will have to stick to the
standard submission rules, that is to say: Thomas Gleixner and I have to be
recipients of the patches and go through our tree. Dependency issues with
other patchset must be solved before applying them in another tree.

Thanks.

  -- Daniel

-- 

 <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2017-01-30 21:54 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-19 13:35 [PATCH v9 0/4] arm64: arch_timer: Add workaround for hisilicon-161010101 erratum Ding Tianhong
2017-01-19 13:35 ` Ding Tianhong
2017-01-19 13:35 ` [PATCH v9 1/4] arm64: arch_timer: Add device tree binding " Ding Tianhong
2017-01-19 13:35   ` Ding Tianhong
2017-01-19 13:35 ` [PATCH v9 2/4] arm64: arch_timer: Introduce a generic erratum handing mechanism for fsl-a008585 Ding Tianhong
2017-01-19 13:35   ` Ding Tianhong
2017-01-30 21:59   ` Daniel Lezcano
2017-01-30 21:59     ` Daniel Lezcano
2017-01-19 13:35 ` [PATCH v9 3/4] arm64: arch_timer: Work around Erratum Hisilicon-161010101 Ding Tianhong
2017-01-19 13:35   ` Ding Tianhong
2017-01-30 23:17   ` Daniel Lezcano
2017-01-30 23:17     ` Daniel Lezcano
2017-01-19 13:35 ` [PATCH v9 4/4] arm64: arch timer: Add timer erratum property for Hip05-d02 and Hip06-d03 Ding Tianhong
2017-01-19 13:35   ` Ding Tianhong
2017-01-19 13:49 ` [PATCH v9 0/4] arm64: arch_timer: Add workaround for hisilicon-161010101 erratum Marc Zyngier
2017-01-19 13:49   ` Marc Zyngier
2017-01-20  1:22   ` Ding Tianhong
2017-01-20  1:22     ` Ding Tianhong
2017-01-20 15:04 ` Mark Rutland
2017-01-20 15:04   ` Mark Rutland
2017-01-22  7:59   ` Hanjun Guo
2017-01-22  7:59     ` Hanjun Guo
2017-01-23 10:31     ` Mark Rutland
2017-01-23 10:31       ` Mark Rutland
2017-01-23  7:36   ` Ding Tianhong
2017-01-23  7:36     ` Ding Tianhong
2017-01-23  8:43     ` Marc Zyngier
2017-01-23  8:43       ` Marc Zyngier
2017-01-23 10:39   ` Will Deacon
2017-01-23 10:39     ` Will Deacon
2017-01-23 22:40     ` Daniel Lezcano
2017-01-23 22:40       ` Daniel Lezcano
2017-01-24 15:08 ` Daniel Lezcano
2017-01-24 15:08   ` Daniel Lezcano
2017-01-24 15:27   ` Marc Zyngier
2017-01-24 15:27     ` Marc Zyngier
2017-01-24 16:35     ` Daniel Lezcano
2017-01-24 16:35       ` Daniel Lezcano
2017-01-30 15:52       ` Mark Rutland
2017-01-30 15:52         ` Mark Rutland
2017-01-30 21:54         ` Daniel Lezcano [this message]
2017-01-30 21:54           ` Daniel Lezcano
2017-01-31 12:14           ` Mark Rutland
2017-01-31 12:14             ` Mark Rutland

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=20170130215430.GJ2206@mai \
    --to=daniel.lezcano@linaro.org \
    --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.