u-boot/arch/arm/cpu/armv8
Michael Walle dd6df64c68 armv8: layerscape: rework spin table
There are two issues:

 (1) The spin table doesn't convert the endianness of the jump address.
     Although there is code for it, the result isn't used at all (x0).
 (2) If something goes wrong, the function returns. But that doesn't
     make sense at all.

Use the actual converted jump address as destination to fix. If
there is an error, jump to a trap loop. And rearrange the code exception
level switching code to make it smaller and clearer.

This reduces the size of the spin table code section from 696 bytes to
424 bytes. If CONFIG_ARMV8_SWITCH_TO_EL1 the code size reduced from 696
bytes to 632 bytes.

Signed-off-by: Michael Walle <michael@walle.cc>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-07-27 14:16:28 +05:30
..
fsl-layerscape armv8: layerscape: rework spin table 2020-07-27 14:16:28 +05:30
hisilicon common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
s32v234 treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
cache.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cache_v8.c armv8: cache_v8: fix mmu_set_region_dcache_behaviour 2020-05-25 11:54:53 -04:00
config.mk SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cpu-dt.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
cpu.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
exception_level.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
exceptions.S armv8: Reduce exception handling code 2018-08-03 19:53:54 -04:00
fwcall.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
generic_timer.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
Kconfig imx: imx8qm/qxp: Recover SPL data section for partition reboot 2020-05-10 20:55:20 +02:00
linux-kernel-image-header-vars.h arm64: add an option to switch visibility of CONFIG_SYS_INIT_SP_BSS_OFFSET 2019-07-10 22:37:23 +09:00
lowlevel_init.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile imx: imx8qm/qxp: Recover SPL data section for partition reboot 2020-05-10 20:55:20 +02:00
psci.S ARMv8: PSCI: Fix PSCI_TABLE relocation issue 2019-04-23 17:57:28 -04:00
sec_firmware.c common: Drop asm/ptrace.h from common header 2020-05-18 21:19:23 -04:00
sec_firmware_asm.S armv8: sec_firmware: change el2_to_aarch32 SMC ID 2018-12-06 14:37:19 -08:00
smccc-call.S arm: Leave smccc calls in .text when efi_loader=n 2019-02-13 09:40:06 +01:00
spin_table.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
spin_table_v8.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
spl_data.c imx: imx8qm/qxp: Recover SPL data section for partition reboot 2020-05-10 20:55:20 +02:00
start.S arm64: issue ISB after updating system registers 2020-07-07 11:01:52 -04:00
tlb.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
transition.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
u-boot-spl.lds imx: imx8qm/qxp: Recover SPL data section for partition reboot 2020-05-10 20:55:20 +02:00
u-boot.lds ARMv8: Allow SiP service extensions on top of PSCI code 2019-04-22 18:13:21 -04:00