All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/23] microblaze: Add support for full relocation
@ 2022-06-15 13:20 Michal Simek
  2022-06-15 13:20 ` [PATCH v4 01/23] tools: relocate-rela: Open binary u-boot file later Michal Simek
                   ` (23 more replies)
  0 siblings, 24 replies; 25+ messages in thread
From: Michal Simek @ 2022-06-15 13:20 UTC (permalink / raw)
  To: u-boot, git
  Cc: Alistair Delva, Angelo Dureghello, Daniel Schwierzeck,
	Heiko Schocher, Heinrich Schuchardt, Huan Wang, Marek Vasut,
	Michal Simek, Ovidiu Panait, Rick Chen, Sean Anderson,
	Simon Glass

Hi,

this series is adding support for full rela relocation.
Origin NEEDS_MANUAL_RELOC option is still there as default.

Code has been tested with multiple configurations on QEMU.
- Origin behavior - u-boot
- Relocated version - u-boot.elf
- Loading u-boot.bin to higher address than TEXT_BASE
- Loading u-boot.bin to lower address than TEXT_BASE

In v2 I fixed Kconfig issue reported in v1 series.

In v3 fix issues reported by gitlab CI.

I incorrectly squashed m68k change to wrong patch. V4 fixes it.

Thanks,
Michal

Changes in v4:
- Revert incorrect m68k merge - wrong patch
- Aligned NEEDS_MANUAL_RELOC for m68k

Changes in v3:
- Move NEEDS_MANUAL_RELOC to m68k Kconfig to avoid Kconfig issues

Changes in v2:
- new patch in series to solve Kconfig warning
- Fix endian selection

Michal Simek (23):
  tools: relocate-rela: Open binary u-boot file later
  Makefile: Fix description for relocate-rela parameters
  tools: relocate-rela: Use global variables
  tools: relocate-rela: Read rela start/end directly from ELF
  microblaze: Switch absolute branches to relative
  microblaze: Fix stack protection behavior
  microblaze: Fix early stack allocation
  microblaze: Remove CONFIG_TEXT_BASE from code
  microblaze: Fix typo in exception.c
  mips: Move endianness selection to arch/Kconfig
  microblaze: Enable REMAKE_ELF
  microblaze: Separate code end substraction
  microblaze: Change stack protection address to new stack address
  microblaze: Optimize register usage in relocate_code
  microblaze: Remove code around r20 in relocate_code()
  microblaze: Remove _start symbol handling at U-Boot start
  microblaze: Add comment about reset location
  microblaze: Create SYM_ADDR macro to deal with symbols
  tools: relocate-rela: Extract elf64 reloc to special function
  tools: relocate-rela: Check that relocation works only for EM_AARCH64
  tools: relocate-rela: Add support for elf32 decoding
  tools: relocate-rela: Add support for 32bit Microblaze relocation
  microblaze: Add support for run time relocation

 Makefile                             |   6 +-
 arch/Kconfig                         |  26 +-
 arch/m68k/Kconfig                    |   3 +
 arch/microblaze/Kconfig              |  14 +
 arch/microblaze/config.mk            |  11 +
 arch/microblaze/cpu/Makefile         |   1 +
 arch/microblaze/cpu/exception.c      |   2 +-
 arch/microblaze/cpu/relocate.c       | 111 ++++++
 arch/microblaze/cpu/start.S          | 130 +++++--
 arch/microblaze/cpu/u-boot.lds       |  14 +
 arch/mips/Kconfig                    |  18 -
 common/board_f.c                     |   2 +
 configs/microblaze-generic_defconfig |   1 +
 include/configs/microblaze-generic.h |   4 -
 tools/relocate-rela.c                | 545 +++++++++++++++++++++++++--
 15 files changed, 789 insertions(+), 99 deletions(-)
 create mode 100644 arch/microblaze/cpu/relocate.c

-- 
2.36.1


^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2022-06-24 12:15 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-15 13:20 [PATCH v4 00/23] microblaze: Add support for full relocation Michal Simek
2022-06-15 13:20 ` [PATCH v4 01/23] tools: relocate-rela: Open binary u-boot file later Michal Simek
2022-06-15 13:20 ` [PATCH v4 02/23] Makefile: Fix description for relocate-rela parameters Michal Simek
2022-06-15 13:20 ` [PATCH v4 03/23] tools: relocate-rela: Use global variables Michal Simek
2022-06-15 13:21 ` [PATCH v4 04/23] tools: relocate-rela: Read rela start/end directly from ELF Michal Simek
2022-06-15 13:21 ` [PATCH v4 05/23] microblaze: Switch absolute branches to relative Michal Simek
2022-06-15 13:21 ` [PATCH v4 06/23] microblaze: Fix stack protection behavior Michal Simek
2022-06-15 13:21 ` [PATCH v4 07/23] microblaze: Fix early stack allocation Michal Simek
2022-06-15 13:21 ` [PATCH v4 08/23] microblaze: Remove CONFIG_TEXT_BASE from code Michal Simek
2022-06-15 13:21 ` [PATCH v4 09/23] microblaze: Fix typo in exception.c Michal Simek
2022-06-15 13:21 ` [PATCH v4 10/23] mips: Move endianness selection to arch/Kconfig Michal Simek
2022-06-15 13:21 ` [PATCH v4 11/23] microblaze: Enable REMAKE_ELF Michal Simek
2022-06-15 13:21 ` [PATCH v4 12/23] microblaze: Separate code end substraction Michal Simek
2022-06-15 13:21 ` [PATCH v4 13/23] microblaze: Change stack protection address to new stack address Michal Simek
2022-06-15 13:21 ` [PATCH v4 14/23] microblaze: Optimize register usage in relocate_code Michal Simek
2022-06-15 13:21 ` [PATCH v4 15/23] microblaze: Remove code around r20 in relocate_code() Michal Simek
2022-06-15 13:21 ` [PATCH v4 16/23] microblaze: Remove _start symbol handling at U-Boot start Michal Simek
2022-06-15 13:21 ` [PATCH v4 17/23] microblaze: Add comment about reset location Michal Simek
2022-06-15 13:21 ` [PATCH v4 18/23] microblaze: Create SYM_ADDR macro to deal with symbols Michal Simek
2022-06-15 13:21 ` [PATCH v4 19/23] tools: relocate-rela: Extract elf64 reloc to special function Michal Simek
2022-06-15 13:21 ` [PATCH v4 20/23] tools: relocate-rela: Check that relocation works only for EM_AARCH64 Michal Simek
2022-06-15 13:21 ` [PATCH v4 21/23] tools: relocate-rela: Add support for elf32 decoding Michal Simek
2022-06-15 13:21 ` [PATCH v4 22/23] tools: relocate-rela: Add support for 32bit Microblaze relocation Michal Simek
2022-06-15 13:21 ` [PATCH v4 23/23] microblaze: Add support for run time relocation Michal Simek
2022-06-24 12:15 ` [PATCH v4 00/23] microblaze: Add support for full relocation Michal Simek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.