u-boot/arch/arm/cpu
Andre Przywara 1416e2d225 armv8: make SPL exception vectors optional
Even though the exception vector table is a fundamental part of the ARM
architecture, U-Boot mostly does not make real use of it, except when
crash dumping. But having it in takes up quite some space, partly due to
the architectural alignment requirement of 2KB. Since we don't take special
care of that, the compiler adds a more or less random amount of padding
space, which increases the image size quite a bit, especially for the SPL.

On a typical Allwinner build this is around 1.5KB of padding, plus 1KB
for the vector table (mostly padding space again), then some extra code
to do the actual handling. This amounts to almost 10% of the maximum image
size, which is quite a lot for a pure debugging feature.

Add a Kconfig symbol to allow the exception vector table to be left out
of the build for the SPL.
For now this is "default y" for everyone, but specific defconfigs,
platforms or .config files can opt out here at will, to mitigate the code
size pressure we see for some SPLs.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2018-08-03 19:53:54 -04:00
..
arm11 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
arm720t SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
arm920t SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
arm926ejs ARM: mxs: let boards override entire dram parameter table 2018-06-18 16:24:57 +02:00
arm946es SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
arm1136 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
arm1176 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
armv7 Patch queue for efi - 2018-07-25 2018-07-30 16:02:29 -04:00
armv7m arm: armv7m: Clean up some thumb / compiler flag options 2018-05-23 13:03:42 -04:00
armv8 armv8: make SPL exception vectors optional 2018-08-03 19:53:54 -04:00
pxa SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sa1100 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
u-boot-spl.lds SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
u-boot.lds efi_loader: Rename sections to allow for implicit data 2018-07-25 14:57:44 +02:00