[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_JsqK6TCJHtVTk-ZkW57gpebn-5WYRLVLm626C3g5uVFsnBw@mail.gmail.com>
Date: Fri, 23 Sep 2016 08:27:05 -0500
From: Rob Herring <robh@...nel.org>
To: Robin Murphy <robin.murphy@....com>
Cc: Stuart Yoder <stuart.yoder@....com>,
Alison Wang <b18965@...escale.com>,
"shawnguo@...nel.org" <shawnguo@...nel.org>,
"kernel@...gutronix.de" <kernel@...gutronix.de>,
Fabio Estevam Estevam <fabio.estevam@....com>,
"linux@...linux.org.uk" <linux@...linux.org.uk>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Scott Wood <scott.wood@....com>, Leo Li <leoyang.li@....com>,
Jason Jin <jason.jin@....com>
Subject: Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms
On Fri, Sep 23, 2016 at 8:18 AM, Robin Murphy <robin.murphy@....com> wrote:
> On 23/09/16 14:13, Stuart Yoder wrote:
>>
>>
>>> -----Original Message-----
>>> From: Robin Murphy [mailto:robin.murphy@....com]
>>> Sent: Friday, September 23, 2016 7:17 AM
>>> To: Alison Wang <b18965@...escale.com>; shawnguo@...nel.org; kernel@...gutronix.de; Fabio Estevam
>>> Estevam <fabio.estevam@....com>; linux@...linux.org.uk; linux-arm-kernel@...ts.infradead.org; linux-
>>> kernel@...r.kernel.org; Scott Wood <scott.wood@....com>; Stuart Yoder <stuart.yoder@....com>; Leo Li
>>> <leoyang.li@....com>
>>> Cc: Jason Jin <jason.jin@....com>
>>> Subject: Re: [PATCH 1/2] armv8: aarch32: Execute 32-bit Linux for LayerScape platforms
>>>
>>> Hi Alison,
>>>
>>> On 23/09/16 03:19, Alison Wang wrote:
>>>> The ARMv8 architecture supports:
>>>> 1. 64-bit execution state, AArch64.
>>>> 2. 32-bit execution state, AArch32, that is compatible with previous
>>>> versions of the ARM architecture.
>>>>
>>>> LayerScape platforms are compliant with ARMv8 architecture. This patch
>>>> is to support running 32-bit Linux kernel for LayerScape platforms.
>>>>
>>>> Verified on LayerScape LS1043ARDB, LS1012ARDB, LS1046ARDB boards.
>>>>
>>>> Signed-off-by: Ebony Zhu <ebony.zhu@....com>
>>>> Signed-off-by: Alison Wang <alison.wang@....com>
>>>> ---
>>>> arch/arm/Kconfig | 9 +++++++++
>>>> arch/arm/mach-imx/Kconfig | 14 ++++++++++++++
>>>> arch/arm/mach-imx/Makefile | 4 +++-
>>>> arch/arm/mach-imx/mach-layerscape.c | 23 +++++++++++++++++++++++
>>>> 4 files changed, 49 insertions(+), 1 deletion(-)
>>>> create mode 100644 arch/arm/mach-imx/mach-layerscape.c
>>>>
>>>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>>>> index f0c8068..e8d470e 100644
>>>> --- a/arch/arm/Kconfig
>>>> +++ b/arch/arm/Kconfig
>>>> @@ -294,6 +294,15 @@ config PGTABLE_LEVELS
>>>> default 3 if ARM_LPAE
>>>> default 2
>>>>
>>>> +config ARCH_AARCH32_ES_SUPPORT
>>>> + def_bool n
>>>> + help
>>>> + The ARMv8 architecture supports 64-bit execution state, AArch64
>>>> + and 32-bit execution state, AArch32, that is compatible with
>>>> + previous versions of the ARM architecture.
>>>> +
>>>> + Enable AArch32 execution state support for ARMv8 architecture.
>>>
>>> What's this supposed to do, exactly? I've been running 32-bit kernels on
>>> my Juno with very little issue (beyond a couple of DT tweaks, and some
>>> firmware hacks with a corresponding bit of A64 assembly tacked on the
>>> front of the zImage to switch into AArch32 state).
>>
>> Which arch/arm/mach-* platform are you using for Juno?
>
> I don't even know! :) I just start with a multi_v7_defconfig plus a few
> extra bits (LPAE, KVM, sil24, sky2, etc.) and it works. I guess it's the
> combination of mach-vexpress and mach-virt.
I believe the answer is none. Enabling VExpress may enable other
drivers, but obviously none of the code in mach-vexpress is needed
since it is not used for 64-bit builds.
Rob
Powered by blists - more mailing lists