Hello, one specialty of mvebu is that it has a movable register window. Its base address is configured within this register range, so there is no way to find out the current position. The BootROM leaves this window at 0xd0000000, however it is beneficial to move it further to the end of the address range (usually 0xf1000000) to benefit from more continuous RAM. For this reason one of the first things that barebox does it to move the window accordingly. If however barebox is loaded as a second stage image this results in a crash as the register base address register is already moved. This series implements that the called image gets the base address from the barebox header. It defaults to 0xd0000000 which is right for the (unaware) BootROM and when barebox jumps into such an image the register position is passed accordingly. Best regards Uwe Uwe Kleine-König (4): mvebu: get initial position of register window from image header filetype: Add image type for boot images used on Armada 370 and XP kwbimage_v1: add support to boot a mvebu image mvebu: netgear-rn2120: make use of mvebu_get_initial_int_reg_base arch/arm/Kconfig | 1 + arch/arm/boards/netgear-rn2120/lowlevel.c | 12 ++-- arch/arm/mach-mvebu/Makefile | 1 + arch/arm/mach-mvebu/common.c | 6 +- .../arm/mach-mvebu/include/mach/barebox-arm-head.h | 54 ++++++++++++++ arch/arm/mach-mvebu/include/mach/common.h | 17 +++++ arch/arm/mach-mvebu/kwbootimage.c | 84 ++++++++++++++++++++++ common/filetype.c | 8 +++ include/filetype.h | 1 + 9 files changed, 176 insertions(+), 8 deletions(-) create mode 100644 arch/arm/mach-mvebu/include/mach/barebox-arm-head.h create mode 100644 arch/arm/mach-mvebu/kwbootimage.c -- 2.11.0 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox