[WIP] add very basic ELF support on MIPS

Antony Pavlov antonynpavlov at gmail.com
Fri Jul 20 04:47:32 EDT 2012

This patch series introduces the basic ELF files support
for bootm command on MIPS based on kexec.

The goal of this work is ELF linux kernel loading for MIPS.

The patches 1-3 used to introduce per-arch low-level init for MIPS.

The patch 4 adds the nessesary low-level initialisation for
qemu-malta suitable for Linux kernel.

Just now barebox for MIPS32 has no support for cache, so
this patch series tries to overcome this disadvantage in
patch 5.

The patch 6 introduce memory region for loading ELFs on qemu-malta.

At last the patch 7 introduces kexec infrastructure for ELF loading.

Current problems:
 * there is no Linux kernel cmdline support;
 * the code is not clean (e.g. there are some '#if 0' and
   some unused declarations);
 * barebox already has ELF support for modules, but
   this patch series just has no integration with it.

This patch series and one additional huge patch with sample
Linux ELF image for malta can be found at

[RFC 1/7] MIPS: move start.S code to .text_entry section
[RFC 2/7] MIPS: add the initial support for lowlevel init
[RFC 3/7] MIPS: malta: add bogus lowlevel init
[RFC 4/7] MIPS: malta: add YAMON-style GT64120 memory map
[RFC 5/7] MIPS: malta: make KSEG0 uncached
[RFC 6/7] MIPS: qemu-malta: add KSEG0 memory region
[RFC 7/7] bootm: add very basic ELF support on MIPS (stealed from

More information about the barebox mailing list