devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mark Rutland <mark.rutland@arm.com>
To: Kumar Gala <galak@codeaurora.org>
Cc: Catalin Marinas <Catalin.Marinas@arm.com>,
	Device Tree Mailing List <devicetree@vger.kernel.org>,
	linux-arm-msm <linux-arm-msm@vger.kernel.org>,
	Will Deacon <Will.Deacon@arm.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"arm@kernel.org" <arm@kernel.org>,
	Abhimanyu Kapur <abhimany@codeaurora.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [RFC PATCH 0/5] Add smp booting support for Qualcomm ARMv8 SoCs
Date: Tue, 14 Apr 2015 16:45:10 +0100	[thread overview]
Message-ID: <20150414154509.GI28709@leverpostej> (raw)
In-Reply-To: <97B1A2D4-6F6B-433B-83E6-9C8A95D1BFC6@codeaurora.org>

On Tue, Apr 14, 2015 at 03:44:11PM +0100, Kumar Gala wrote:
> 
> > On Apr 14, 2015, at 9:21 AM, Kumar Gala <galak@codeaurora.org> wrote:
> > 
> >>>> 
> >>>> So please come up with proper technical arguments rather than the kernel
> >>>> should take whatever SoC vendors dreamt of.
> >>> 
> >>> There is no technical argument to be made.  This is about the
> >>> community and you as maintainer wanting to accept code that complies
> >>> to your decision or not.
> >> 
> >> If you are not willing to make technical arguments, I don't have to
> >> provide any further reasons in this thread. It's your choice. In the
> >> meantime, the short answer is NAK.
> 
> I assume you would than NAK someone trying to get support for their
> Nexus 9 Tablet using a Tegra K1.

That would depend on how they try to boot secondary CPUs. It's
unfortunate that a product is shipping with an arbitrary implementation
specific SMP bringup mechanism, but its existence doesn't necessitate
that we support it.

People are currently working on PSCI support for 32-bit Tegra platforms
in U-Boot, and it's my understanding that a reasonable proportion of
that could should be possible to reuse for 64-bit. That may be
applicable to the Nexus 9.

Otherwise it's possible to have a shim which can place the secondaries
into a spin-table. It looks like that would be necessary anyway; there
seem to be some egregious boot protocol violations. 

> It appears the shipping code for that device didn’t use PSCI (again guessing because it wasn’t available at the time).
> 
> https://android.googlesource.com/kernel/tegra/+/android-tegra-flounder-3.10-lollipop-release/arch/arm64/mach-tegra/platsmp.c

Commit e790f1deb26a2e23 ("arm64: psci: add support for PSCI invocations
from the kernel") has been upstream since v3.9-rc1. It's even in the
(v3.10 derived) tree you link to:

https://android.googlesource.com/kernel/tegra/+/android-tegra-flounder-3.10-lollipop-release/arch/arm64/kernel/psci.c

As is spin-table:

https://android.googlesource.com/kernel/tegra/+/android-tegra-flounder-3.10-lollipop-release/arch/arm64/kernel/smp_spin_table.c

> If so, I find this counter to the Linux kernel communities normal desire to support the most hardware platforms.

Supporting hardware platforms doesn't mean that we must accept code
which we believe to be problematic.

We don't want implementation-specific SMP bringup mechanisms because
we've learnt from the lessons of the past. They're almost always
ill-defined, not reusable, and they're a maintenance burden for all
system software targeting ARM which gets worse over time.

If there are technical problems with the existing mechanisms, we're open
to solving them. Others have engaged with the kernel community and/or
ARM (in the case of PSCI) to do so, and all others upstream so far have
used common enable methods.

Mark. 

  reply	other threads:[~2015-04-14 15:45 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-09 17:37 [RFC PATCH 0/5] Add smp booting support for Qualcomm ARMv8 SoCs Kumar Gala
2015-04-09 17:37 ` [RFC PATCH 3/5] arm64: introduce CPU_OF_TABLES for cpu ops selection Kumar Gala
2015-04-09 21:17   ` Arnd Bergmann
2015-04-14 15:52     ` Mark Rutland
2015-04-10 10:28   ` Lorenzo Pieralisi
     [not found] ` <1428601031-5366-1-git-send-email-galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-04-09 17:37   ` [RFC PATCH 5/5] arm64: qcom: add cpu operations Kumar Gala
2015-04-09 21:19     ` Arnd Bergmann
2015-04-10 10:08       ` Catalin Marinas
2015-04-10 10:39     ` Lorenzo Pieralisi
2015-04-14 16:29     ` Mark Rutland
2015-04-14 20:51       ` Arnd Bergmann
2015-04-15 14:46         ` Catalin Marinas
2015-04-14 22:52       ` Al Stone
2015-04-15  9:04         ` Mark Rutland
2015-04-15 14:53           ` Catalin Marinas
2015-04-15 16:29             ` Al Stone
2015-04-10 10:05 ` [RFC PATCH 0/5] Add smp booting support for Qualcomm ARMv8 SoCs Catalin Marinas
     [not found]   ` <20150410100529.GA6854-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2015-04-10 15:24     ` Kumar Gala
     [not found]       ` <493B15F8-0EBE-4633-9604-671EF403F36E-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-04-10 16:10         ` Catalin Marinas
2015-04-10 19:06           ` Kumar Gala
2015-04-13  9:41             ` Catalin Marinas
2015-04-14 14:21               ` Kumar Gala
2015-04-14 14:44                 ` Kumar Gala
2015-04-14 15:45                   ` Mark Rutland [this message]
2015-04-14 22:32                 ` Lorenzo Pieralisi
2015-04-15 16:17                   ` Lina Iyer
2015-04-15 17:35                     ` Lorenzo Pieralisi
2015-04-15 14:27                 ` Catalin Marinas
2015-04-14 16:36   ` Mark Rutland
2015-04-14 19:49     ` Kumar Gala
2015-04-14 21:17       ` Catalin Marinas
2015-04-14 21:48         ` Rob Clark
     [not found]           ` <CAF6AEGtoxNrCoxT5n0CXmKMnL-YprJ3DkAuM4Myi87WMxPqBGw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-15 13:34             ` Catalin Marinas
2015-04-15 15:01               ` Rob Clark
2015-04-16 15:21                 ` Catalin Marinas
     [not found]                   ` <20150416152121.GE819-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2015-04-16 17:17                     ` Rob Clark
     [not found]                       ` <CAF6AEGt3bf70MUWFU_kqtc8KDR09tMUCkXbqOq0SpOXU44moTg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-16 21:39                         ` Catalin Marinas
2015-04-16 22:03                       ` Matt Sealey
2015-04-10 11:03 ` Lorenzo Pieralisi
2015-04-10 15:25   ` Kumar Gala
2015-04-10 16:07     ` Lorenzo Pieralisi
2015-04-16 22:08     ` Rob Herring
  -- strict thread matches above, loose matches on Subject: below --
2015-04-10 20:43 Kumar Gala

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=20150414154509.GI28709@leverpostej \
    --to=mark.rutland@arm.com \
    --cc=Catalin.Marinas@arm.com \
    --cc=Will.Deacon@arm.com \
    --cc=abhimany@codeaurora.org \
    --cc=arm@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.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).