9
0
Fork 0
Commit Graph

146 Commits

Author SHA1 Message Date
Sascha Hauer 51885a7d73 Change byte order detection mechanism to kernel style
The Linux Kernel defines only one of __LITTLE_ENDIAN and
__BIG_ENDIAN. Endianess can then be tested with #ifdef __xx_ENDIAN. Userspace
always defined both __LITTLE_ENDIAN and __BIG_ENDIAN and byteorder can then
be tested with #if __BYTE_ORDER == __xx_ENDIAN.

As we tend to use a lot of Kernel code in barebox we switch to use the kernel
way of determing the byte order.

As this always causes a lot of confusion add a check to include/common.h to
make sure only one of __LITTLE_ENDIAN and __BIG_ENDIAN is defined.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-06-28 13:49:16 +02:00
Sascha Hauer 104a6a7ccf ARM: Allow to compile in thumb-2 mode
This shrinks the resulting binary size by ~25%. Exceptions
are still handled in arm mode, so we have to explicitely
put .arm directives into the exception code. Thumb-2 mode
has been tested on i.MX51 Babbage board.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-03-06 09:37:59 +01:00
Sascha Hauer 192d6fe9be Merge branch 'pu/debug' into next 2012-01-27 09:31:13 +01:00
Sascha Hauer 79c2f03aee Add dump_stack function
At least ARM allows us to dump the stack, but we currently
have no prototype for this. Add a dump_stack prototype and
provide a static inline function for architectures without
stack dump support. Also, call dump_stack() in panic() to
provide more information in the case of a panic.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-01-26 14:12:08 +01:00
Jean-Christophe PLAGNIOL-VILLARD b7498fdb82 banner: add config to disable it
this will allow to save 144 bytes

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2012-01-11 21:22:34 +08:00
Sascha Hauer afa7c80e74 common.h: remove unused function declarations
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-12-15 11:46:50 +01:00
Sascha Hauer 4b09cdc798 add kernel gunzip implementation
The kernel uncompression functions have a unified API so use this
implementation to get it.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-11-29 21:12:42 +01:00
Sascha Hauer 248e5f1cbe compile in simple_strtoull
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-11-29 20:55:50 +01:00
Sascha Hauer 38884dabbe remove irq support fragments
We never had interrupt support in barebox and we have no plans to
add interrupt support. Even if we do I doubt the current fragments
of irq support are helpful, so remove them.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-11-28 11:41:33 +01:00
Sascha Hauer 569a24bb07 pcm030: use new functionality
We introduced several new functions to ease our life
on ppc, use themn on the pcm030:

- setup iomux and bus clocks in board code
- add sdram memory according to detected size

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-27 10:27:32 +02:00
Sascha Hauer 3100ea1466 ARM: rework MMU support
In barebox we used 1MiB sections to map our SDRAM cachable. This
has the drawback that we have to map our sdram twice: cached for
normal sdram and uncached for DMA operations. As address space gets
sparse on newer systems we are sometines unable to find a suitably
big enough area for the dma coherent space.

This patch changes the MMU code to use second level page tables.
With it we can implement dma_alloc_coherent as normal malloc, we
just have to remap the allocated area uncached afterwards and map
it cached again after free().

This makes arm_create_section(), setup_dma_coherent() and mmu_enable()
noops.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-03 09:11:10 +02:00
Jean-Christophe PLAGNIOL-VILLARD 72685fe9e8 fix: commands/bootm.c:346:2: warning: statement with no effect
convert enable_interrupts() and disable_interrupts() to static inline
if no IRQ supoprt enable

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-07-17 17:42:21 +02:00
Sascha Hauer 3f1ff6b730 move version_string to seperate file
In a noninteractive environment barebox will be compiled without
command support. So move version_string to a seperate file which
is compiled unconditionally.
Also, display the banner when the simple console support is used.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:08 +02:00
Juergen Beisert 799b06606b Add more useful generic macros
Stolen from the Linux kernel.

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-21 08:26:08 +01:00
Juergen Beisert f3d7fe0673 Add macro for correct rounding in integer devisions
Just stolen from Linux.

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 15:15:06 +01:00
Juergen Beisert f9a11ecfef Make DIV_ROUND_UP macro globally available
Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 15:15:06 +01:00
Marek Belisko 83a9266a08 common: Add define for IOMEM helper macro.
IOMEM helper macro is used for address casting which then
is used in read(bwl)/write(bwl) functions.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-11-19 09:34:00 +01:00
Sascha Hauer e2fadcc34a version_string: sparse fixes
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-21 22:21:24 +02:00
Sascha Hauer 5f6a7e0f65 commands/mem.c: sparse fixes
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-21 22:21:23 +02:00
Jean-Christophe PLAGNIOL-VILLARD 5baf5ae9bd add WARN_ON and WARN support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-08-30 14:36:07 +02:00
Sascha Hauer 1b5de4c0fe crc32: activate crc32_no_comp (needed for jffs2 and UBI)
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-07-05 13:00:01 +02:00
Sascha Hauer 56299cc7fd remove now unused arch_execute
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-03-30 14:15:03 +02:00
Sascha Hauer edf4e51a82 introduce a arch_shutdown call and call it from shutdown_barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-03-30 14:15:03 +02:00
Sascha Hauer e723f79cb7 make panic and hang __noreturn functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-03-30 14:15:03 +02:00
Sascha Hauer e11c07c339 make reset_cpu a __noreturn function
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-03-30 14:15:03 +02:00
Marc Kleine-Budde 6351ff2eff common.h: add compile time check helper functions
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2010-02-16 21:49:33 +01:00
Matthias Kaehlcke 6f4ed9536d Add EP93xx ethernet driver
Added ethernet driver for EP93xx SoCs

Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-01-14 10:04:13 +01:00
Sascha Hauer abb8c0f1d7 fix arch_execute prototype
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-12-17 13:36:43 +01:00
Sascha Hauer a3ffa97f40 rename U-Boot-v2 project to barebox
This has been done with the following script:

find -path ./.git -prune -o -type f -print0 | xargs -0 -r sed -i \
	-e 's/u2boot/barebox/g' \
	-e 's/U2Boot/barebox/g' \
	-e 's/U-boot V2/barebox/g' \
	-e 's/u-boot v2/barebox/g' \
	-e 's/U-Boot V2/barebox/g' \
	-e 's/U-Boot-v2/barebox/g' \
	-e 's/U_BOOT/BAREBOX/g' \
	-e 's/UBOOT/BAREBOX/g' \
	-e 's/uboot/barebox/g' \
	-e 's/u-boot/barebox/g' \
	-e 's/u_boot/barebox/g' \
	-e 's/U-Boot/barebox/g' \
	-e 's/U-boot/barebox/g' \
	-e 's/U-BOOT/barebox/g'

find -path ./.git -prune -o \( -name "*u-boot*" -o -name "*uboot*" -o -name "*u_boot*" \) -print0 | \
	xargs -0 -r rename 's/u[-_]?boot/barebox/'

It needs some manual fixup following in the next patch

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-12-15 10:18:30 +01:00
Sascha Hauer 505d65fc5c add *_MAX and *_MIN macros
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-06-10 13:54:42 +02:00
Sascha Hauer 2672196646 fix pr_debug
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-06 11:12:29 +02:00
Sascha Hauer 0b5a776c1e Shutdown U-Boot before starting an OS
Some devices, especially the ones doing DMA should be disabled before
giving control to an OS. We take the simple approach here: Just shutdown
the devices in the reverse order they were activated.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-03-19 12:21:18 +01:00
Sascha Hauer 36ae69a2dc remove unused stuff from include/common.h
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-03-19 12:21:13 +01:00
Sascha Hauer c3fc1364d9 Introduce dev_* and pr_* functions
Proven to be useful in linux kernel, U-Boot should have such a thing
aswell. We do not distinguish between the various print levels others
than debug and not debug.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-10-31 14:02:25 +01:00
Sascha Hauer 12f00ac59c add include/linux/kernel.h
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-08-13 16:52:09 +02:00
Sascha Hauer 2db67353f3 add compiler header files from kernel
Add include/linux/compiler*.h from Linux Kernel and remove old
include/compiler.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-08-13 16:41:17 +02:00
Sascha Hauer a9912f68c6 Fixed orphaned CONFIG_INTERRUPTS
replace remaining CONFIG_INTERRUPTS with CONFIG_USE_IRQ

Signed-off-by: Carsten Schlote <schlote@vahanus.net>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-04-04 14:45:04 +02:00
Sascha Hauer c0770312bc remove traces of old tab completion 2008-03-01 22:47:06 +01:00
Marc Kleine-Budde e68ac6368d Revert "separating memory commands"
This reverts commit d59c600c65.

Conflicts:

	commands/Makefile
	common/Kconfig
	common/Makefile

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2007-11-27 23:19:55 +01:00
Juergen Beisert d59c600c65 separating memory commands
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
2007-11-12 16:28:23 +01:00
Sascha Hauer 996eb57938 add container_of macro. Needed for list implementation 2007-10-11 15:59:01 +02:00
Sascha Hauer 17c3e64578 export functions 2007-10-04 12:37:06 +02:00
Sascha Hauer 685d85540c move ARRAY_SIZE macro to include/common.h 2007-09-28 19:46:37 +02:00
Sascha Hauer 326e4bddc3 print_size() -> size_human_readable()
return a pointer to a human readable string rather than printingit directly
2007-09-26 15:23:46 +02:00
Sascha Hauer 14b5c2a647 - teach hush to honour PATH variable
- remove common/main.c. This is now handled in the different shells.
2007-09-24 01:40:06 +02:00
Sascha Hauer ca8ae5695a add the possibility to have a arch specific 'go' command. Some
architectures need this (e.g. blackfin and i386)
2007-09-16 11:16:08 +02:00
Sascha Hauer 23ab186b15 compile fixes 2007-07-05 22:12:11 +02:00
Sascha Hauer 9afd20bdb0 svn_rev_693
remove do_reset
2007-07-05 18:02:18 +02:00
Sascha Hauer 98432d3925 svn_rev_683
more cleanups, fix compiler warnings
2007-07-05 18:02:16 +02:00
Sascha Hauer d9147943ab svn_rev_677
remove arm specific things
2007-07-05 18:02:16 +02:00