Booting from SPI on an AM35xx (and possibly other TI SOCs) requires
a special format:
- 32 bit image size in big-endian
- 32 bit load address in big-endian
- binary image converted from little- to big-endian
The mk-am35xx-spi-image tool converts barebox.bin to
this format.
Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This is mostly useful during the initial port of barebox to a new
board which is supported by u-boot. It also allows starting barebox
from a SRAM-based u-boot SPL.
A different load address can be set like this:
make barebox.uimage UIMAGE_BASE=0x80000000
Also add barebox.ubl to CLEAN_FILES.
Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
The dependencies for generating the environment do not work properly:
- If files are removed from the defaultenv, a subsequent make will not
update the default environment.
- If CONFIG_DEFAULT_ENVIRONMENT_PATH changes, the default environment
also will not be regenerated.
This patch fixes this by introducing a cmd_env which has the content of
$(ENV_FILES) in the command so that the if_changed mechanism recognizes
a change when $(ENV_FILE) changes. This also results in a nice " ENV "
string in the build process.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
When building a special image from the original (compressed or
not) binary, to not overwrite KBUILD_BINARY.
This allows producing multiple images (such as MLO, UBL, ...)
from the (z)barebox.bin. In the case where no special image is
used, KBUILD_IMAGE is set to KBUILD_BINARY.
This patch was developed together with Sascha Hauer. Thanks!
Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Depending on the SoC a barebox.bin, barebox.netx, barebox.s5p, MLO image
is generated. With pbl support there now is an additional
arch/arm/pbl/zbarebox.bin image.
To help the user to determine which image should be flashed to his device,
generate a barebox-flash-image link.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
disasm: For generating an disasssembly of an ELF file
ln: For creating a softlink
Use the disasm command for generating barebox.S
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
This allows for creating a pre-bootloader binary for
- nand boot
- mmc boot
- compressed image
The pbl will be incharge of the lowlevel init if needed.
The barebox will skip it.
Import string functions from linux 3.4 (arch/arm/boot/compressed/string.c) and
implement a dummy panic.
For now on introduce dummy zbarebox* targets and c code that will contain later
the decompressor. This only implemeted on ARM.
This patch is based on Sascha Hauer <s.hauer@pengutronix.de>
Add compressed image support patch
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
This will allow to link compiled object to the built-in-pbl.o across the source
tree that will be finally link to the pbl.
Now we compile the source %.c in pbl-%.o and provide -D__PBL__
so we can known in the source when it's compile for barebox or the pbl.
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
If CONFIG_KALLSYMS is not set then barebox version is always "#0".
By-default on mips boards CONFIG_KALLSYMS don't set, so barebox
version does not increase after every build.
This patch fixes the problem.
Signed-off-by: Svetlana Khafizova <sv.khafizova@gmail.com>
Signed-off-by: Aleksey Kuleshov <rndfax@yandex.ru>
Acked-by:: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
The bareboxenv-target binary is automatically created but never
deleted nor is it excluded from git tracking. This patch remedies
the situation by adding scripts/bareboxenv-target to .gitignnore
and adjusting the list of to be deleted files of the 'clean' target
in the core Makefile.
Signed-off-by: Roberto Nibali <rnibali@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This patch adds the scripts/mkcompile_h from the Kernel. This gives
us additional information about the build like who built this binary
and with which compiler. Currently the only information used is the
build timestamp and the generation number.
This also fixes the build timestamp in the banner which is now correct
even with consecutive builds without making clean in between.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
When building sandbox with ccache, one would hit warnings such as:
warning: 'struct mmsghdr' declared inside parameter list
on random files; a way to reproduce this issue is to build a simple
file doing just:
#include <sys/socket.h>
int main(void) {
return 0;
}
gcc -Wall -P -c -o foo foo.c
But actually the -P flag is only useful when generating non-C files,
such as linker scripts in the case of barebox. Removing the -P flag
from all the gcc invocations, except when generating .lds files makes
the warning go away. It turns out that this is what
linux/scripts/Makefile.build also does nowadays.
Signed-off-by: Loïc Minier <loic.minier@linaro.org>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
With this kallsyms finally start working at least on ARM. This
enables us resolving addresses into symbols which is particularly
useful in combination with stack unwinding support. As kallsyms
now compile and work we can remove the depends on BROKEN.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Currently the documentation does always claim to be version 1. We add
the revision plus the git version to the manual.
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
this will allow each arch to handle the boards more simply and depending on
there need
the env var BOARD will refer to the current board dirent
for sandbox as we have only one board the board dirent is arch/sandbox/board
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
As a side effect don't build barebox.S when barebox.bin is updated. I
didn't manage to keep the old behaviour and I consider it cleaner this
way.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
On x86 'objdump' does not know which parts of the image are 16 bit code and
32 bit. As the default is 32 bit, it will output garbage from the 16 bit parts
(due to 16/32 bit ops are sharing the same opcodes).
Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Adjust the asm symlink support so we do not create the
symlink unless really needed.
We check the precense of include/asm-$ARCH by checking
for the system.h file. We may end up with a stale directory
so it is not enough to check if the directory is present.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Oh, dear dad, can you see me now
I am myself, like you somehow
Ill ride the wave where it takes me
Ill hold the pain...
Release me...
Ohh...ohh...ohh...ohh...
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
When changing the board it is necessary to change the symlink
from include/config.h to the new board
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
[Patch 04/17] U-Boot-V2:ARM: Remove unwanted flags from Makefile
CFLAGS: "-D __ARM__" should have been "-D__ARM__". this breaks sparse check.
Further -nostdinc in Makefile is redfined by
commit ID:847934bc960ba1588c87e283118318dfdd78d4c0
This is unecessary as NOSTDINC_FLAGS defines it
Signed-off-by: Nishanth Menon<x0nishan@ti.com>
Added two targets to the toplevel Makefile : docs and htmdocs.
Further output formats might be added later (PDF, TeX, ...) and
wrapped by the docs target.
Signed-off-by: Carsten Schlote <c.schlote@konzeptpark.de>
This patch improves the default environment handling, now the makesystem
bails out if the default environment path is empty or points to an
invalid directory (with activated default environment). It also fixes
this error:
find: invalid predicate `'
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
fixes:
[mkl@octopus:~/pengutronix/pii-bf/u-boot-v2]$ make TAGS
MAKE TAGS
find: security/selinux: No such file or directory
find: security/selinux: No such file or directory
find: security/selinux: No such file or directory
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
a generic linker script to arch/arm/lib/u-boot.lds.S.
If a board wants to overwrite a linker script it can do
so using CONFIG_BOARD_LINKER_SCRIPT.
There is no generic linker script for ppc and blackfin
yet, so still use the board specific one.