[U-Boot] [PATCH v4 0/4] Add support for Thumb-1 builds

Albert ARIBAUD albert.u.boot at aribaud.net
Sun Jul 5 17:13:43 CEST 2015


This series implements essential changes for thumb-1 support and
activates thumb-1 build for openrd as a proof of concept as well as
a fix to bring the size of openrd targets back under an acceptable
limit.

For other targets, some additional files might need to be forced to
ARM building, notably architecture-specific instances of lowlevel_init.S
or of cpu.c. This should be handled on a case-by-case basis.

Changes in v4:
- Made stm32f429-discovery explicitly state that it builds
  for Thumb

Changes in v3:
- added arch/arm/lib/mem{set,cpy}.S to the list of modules
  which should always be built in ARM state.
- Selected HAS_THUMB2 for CPU_V7M.
- Fixed invalidate_l2_cache() when building for Thumb-1.

Changes in v2:
- fixed a typo in the commit message
- added file arch/arm/thumb1/include/asm/proc-armv/system.h,
  which overrides arch/arm/include/asm/proc-armv/system.h
  when building for Thumb-1 and provides non-functional but
  Thumb-compilable IRQ and FIQ related macros and functions.

Albert ARIBAUD (4):
  stm32f429-discovery: add CONFIG_SYS_THUMB_BUILD
  arm: support Thumb-1 with CONFIG_SYS_THUMB_BUILD
  kirkwood: support CONFIG_SYS_THUMB_BUILD
  openrd: switch to CONFIG_SYS_THUMB_BUILD

 Makefile                                       |  2 +
 arch/arm/Kconfig                               |  5 ++
 arch/arm/cpu/arm926ejs/Makefile                | 11 ++++
 arch/arm/cpu/arm926ejs/cache.c                 |  5 ++
 arch/arm/include/asm/cache.h                   |  4 ++
 arch/arm/lib/Makefile                          | 24 +++++++++
 arch/arm/lib/cache.c                           | 11 ++++
 arch/arm/lib/memcpy.S                          |  4 +-
 arch/arm/lib/memset.S                          |  2 +-
 arch/arm/mach-kirkwood/Makefile                |  6 +++
 arch/arm/mach-orion5x/Makefile                 | 10 ++++
 arch/arm/thumb1/include/asm/proc-armv/system.h | 69 ++++++++++++++++++++++++++
 examples/standalone/Makefile                   | 10 ++++
 include/configs/openrd.h                       |  1 +
 include/configs/stm32f429-discovery.h          |  1 +
 scripts/Makefile.lib                           |  3 +-
 16 files changed, 164 insertions(+), 4 deletions(-)
 create mode 100644 arch/arm/thumb1/include/asm/proc-armv/system.h

-- 
2.1.0



More information about the U-Boot mailing list