From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alison Wang Date: Thu, 19 May 2016 16:26:00 +0800 Subject: [U-Boot] [PATCH v2 0/2] armv8: Support loading 32-bit OS in AArch32 execution state Message-ID: <1463646362-15531-1-git-send-email-b18965@freescale.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de This series is to support loading a 32-bit OS, the execution state will change from AArch64 to AArch32 when jumping to kernel. The architecture information will be got through checking FIT image, then U-Boot will load 32-bit OS or 64-bit OS automatically. Spin-table method is used for secondary cores to load 32-bit OS. The architecture information will be got through checking FIT image and saved in the os_arch element of spin-table, then the secondary cores will check os_arch and jump to 32-bit OS or 64-bit OS automatically. Changes in v2: - armv8_switch_to_el2_aarch32() is removed. armv8_switch_to_el2_m is used to switch to AArch64 EL2 or AArch32 Hyp. - armv8_switch_to_el1_aarch32() is removed. armv8_switch_to_el1_m is used to switch to AArch64 EL1 or AArch32 SVC. ---------------------------------------------------------------- Alison Wang (2): armv8: Support loading 32-bit OS in AArch32 execution state armv8: fsl-layerscape: SMP support for loading 32-bit OS arch/arm/cpu/armv8/fsl-layerscape/lowlevel.S | 35 +++++++++++++++++++++++++++++++---- arch/arm/cpu/armv8/fsl-layerscape/mp.c | 10 ++++++++++ arch/arm/cpu/armv8/transition.S | 8 ++++---- arch/arm/include/asm/arch-fsl-layerscape/mp.h | 6 ++++++ arch/arm/include/asm/macro.h | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------- arch/arm/include/asm/system.h | 25 +++++++++++++++++++++++-- arch/arm/lib/bootm.c | 31 +++++++++++++++++++++++++++---- common/image-fit.c | 12 +++++++++++- 8 files changed, 185 insertions(+), 22 deletions(-)