Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1490409

RE: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms

From Stuart Yoder <stuart.yoder@nxp.com>
Newsgroups linux.kernel
Subject RE: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms
Date 2016-09-23 21:50 +0200
Message-ID <skDou-7lF-27@gated-at.bofh.it> (permalink)
References <skxj4-38t-33@gated-at.bofh.it> <skzXz-53e-23@gated-at.bofh.it> <skAqC-5wp-41@gated-at.bofh.it> <skB3j-5Jn-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



> -----Original Message-----
> From: Arnd Bergmann [mailto:arnd@arndb.de]
> Sent: Friday, September 23, 2016 10:58 AM
> To: Robin Murphy <robin.murphy@arm.com>
> Cc: linux-arm-kernel@lists.infradead.org; Stuart Yoder <stuart.yoder@nxp.com>; Alison Wang
> <b18965@freescale.com>; shawnguo@kernel.org; kernel@pengutronix.de; Fabio Estevam Estevam
> <fabio.estevam@nxp.com>; linux@armlinux.org.uk; linux-kernel@vger.kernel.org; Scott Wood
> <scott.wood@nxp.com>; Leo Li <leoyang.li@nxp.com>; Jason Jin <jason.jin@nxp.com>
> Subject: Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms
> 
> On Friday, September 23, 2016 4:13:30 PM CEST Robin Murphy wrote:
> > On 23/09/16 15:44, Arnd Bergmann wrote:
> > > On Friday, September 23, 2016 3:24:12 PM CEST Robin Murphy wrote:
> > >> On 23/09/16 15:01, Stuart Yoder wrote:
> > >> Otherwise you can
> > >> always simply run your own shim at EL2 to drive an AArch32 EL1 (it'll
> > >> need to trap and translate subsequent SMC calls for e.g. PSCI).
> > >>
> > >>> If there is such a requirement, it's something begging for standardization.
> > >>> Doesn't make sense for multiple divergent approaches for switching from
> > >>> aarch64/EL2 to aarch32/EL2.
> > >>
> > >> Perhaps - I did briefly look into how hard it would be to write a proper
> > >> SMC service handler to do this (since ATF does have a framework for such
> > >> things), but concluded it would be more than 10 minutes' work and just
> > >> cheated instead. It's certainly something which could be raised with the
> > >> firmware folks.
> > >
> > > If we end up allowing all arm64 platforms to be enabled in arch/arm,
> > > we could perhaps create a generic implementation that does both of
> > > those things, i.e.
> > >
> > > - Take the arm32 kernel Image or zImage file, wrap it inside of a binary
> > >   that implements the arm64 boot protocol.
> > > - When that starts up, try to use the new PSCI call to jump into
> > >   the arm32 kernel
> > > - If PSCI failed and we are running in EL2, implement the shim
> > >   and start the arm32 kernel in EL1 mode
> >
> > Really, though, the firmware call thing is an incredibly niche use-case.
> > Beyond development, the only real benefit of starting an AArch32 kernel
> > in Hyp is that you can run AArch32 KVM guests, which you can do equally
> > well (if not better) under an AArch64 kernel.
> 
> This was my question earlier in the thread, apparently Alison has
> another use case in mind, but I don't yet know what that is. If
> that use case is important enough, we could do it this way.
> 
> The only use case I can think of at the moment is boot testing
> on kernelci.org, which could be used to check whether all the drivers
> work in 32-bit environments.

The reason we want aarch32 kernel support is for specific customers that
have requirements for legacy 32-bit kernel drivers that function on ARMv7
but for some reason are very problematic to port to a 64-bit kernel.  So,
the way to ease the 64-bit transition is allow them to run an aarch32 kernel
and their driver on an ARMv8 SoC.   I don't think we specifically care
whether the kernel starts at EL2 or EL1.

Stuart

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Robin Murphy <robin.murphy@arm.com> - 2016-09-23 14:20 +0200
  RE: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Stuart Yoder <stuart.yoder@nxp.com> - 2016-09-23 15:20 +0200
    Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Robin Murphy <robin.murphy@arm.com> - 2016-09-23 15:20 +0200
      Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms Rob Herring <robh@kernel.org> - 2016-09-23 15:30 +0200
      Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Sudeep Holla <sudeep.holla@arm.com> - 2016-09-23 15:50 +0200
      Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Robin Murphy <robin.murphy@arm.com> - 2016-09-23 16:30 +0200
        Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms Arnd Bergmann <arnd@arndb.de> - 2016-09-23 16:50 +0200
          Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Robin Murphy <robin.murphy@arm.com> - 2016-09-23 17:20 +0200
            Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms Arnd Bergmann <arnd@arndb.de> - 2016-09-23 18:00 +0200
              Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms Arnd Bergmann <arnd@arndb.de> - 2016-09-23 20:30 +0200
                RE: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Jason Jin <jason.jin@nxp.com> - 2016-09-26 23:30 +0200
              RE: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Stuart Yoder <stuart.yoder@nxp.com> - 2016-09-23 21:50 +0200
      RE: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape  platforms Stuart Yoder <stuart.yoder@nxp.com> - 2016-09-23 21:40 +0200

csiph-web