- Oct 21, 2011
-
-
Macpaul Lin authored
Add standalone program related support for nds32 architecture. Signed-off-by:
Macpaul Lin <macpaul@andestech.com>
-
Che-liang Chiou authored
The examples/api is not configured with USE_PRIVATE_LIBGCC. This makes building examples/api break on certain boards that do not/cannot use the public libgcc. Nevertheless, this patch has to also touch the top-level Makefile to fix this problem because the current top-level Makefile does not specify libgcc as a prerequisite of examples/api, and explicitly builds examples/api _before_ libgcc. For testing this patch, I added the following to configs/seaboard.h and ran demo.bin on a Seaboard. +#define CONFIG_API +#define CONFIG_SYS_MMC_MAX_DEVICE 2 +#define CONFIG_CMD_NET +#define CONFIG_NET_MULTI Signed-off-by:
Che-Liang Chiou <clchiou@chromium.org> Acked-by:
Mike Frysinger <vapier@gentoo.org>
-
- Oct 17, 2011
-
-
Jason Hobbs authored
These are various places I found that checked for conditions equivalent to isblank. Signed-off-by:
Jason Hobbs <jason.hobbs@calxeda.com>
-
- May 12, 2011
-
-
Joakim Tjernlund authored
Noticed while building all of mpc8xx. Also constify usage string in timer.c Warnings fixed are: timer.c: In function 'timer': timer.c:189: warning: format not a string literal and no format arguments timer.c:258: warning: format not a string literal and no format arguments atm.c: In function 'atmUnload': atm.c:99: warning: array subscript is above array bounds atm.c: In function 'atmLoad': atm.c:65: warning: array subscript is above array bounds codec.c: In function 'codsp_write_pop_int': codec.c:678: warning: array subscript is above array bounds codec.c: In function 'codsp_write_cop_short': codec.c:585: warning: array subscript is above array bounds codec.c: In function 'codsp_write_sop_int': codec.c:512: warning: array subscript is above array bounds Signed-off-by:
Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
-
Che-liang Chiou authored
GNU Makefile have two flavors of variables, recursively expanded that is defined by using '=', and simply expanded that is defined by using ':='. The bug is caused by using recursively expanded flavor for BIN and SREC. As you can see below, they are prepended by $(obj) twice. We can reproduce this bug with a simplified version of this Makefile: $ cat >Makefile <<\EOF obj := /path/to/obj/ ELF := hello_world BIN_rec = $(addsuffix .bin,$(ELF)) # recursively expanded BIN_sim := $(addsuffix .bin,$(ELF)) # simply expanded ELF := $(addprefix $(obj),$(ELF)) BIN_rec := $(addprefix $(obj),$(BIN_rec)) BIN_sim := $(addprefix $(obj),$(BIN_sim)) show: @echo BIN_rec=$(BIN_rec) @echo BIN_sim=$(BIN_sim) .PHONY: show EOF $ make show BIN_rec=/path/to/obj//path/to/obj/hello_world.bin BIN_sim=/path/to/obj/hello_world.bin Signed-off-by:
Che-Liang Chiou <clchiou@chromium.org>
-
- May 09, 2011
-
-
Daniel Schwierzeck authored
All architectures but MIPS are using --gc-sections on final linking. This patch introduces that feature for MIPS to reduce the memory and flash footprint. Signed-off-by:
Daniel Schwierzeck <daniel.schwierzeck@googlemail.com> Cc: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Thomas Lange <thomas@corelatus.se> Cc: Vlad Lungu <vlad.lungu@windriver.com> Signed-off-by:
Shinya Kuribayashi <skuribay@pobox.com>
-
- Apr 13, 2011
-
-
Graeme Russ authored
Signed-off-by:
Graeme Russ <graeme.russ@gmail.com>
-
- Apr 12, 2011
-
-
Wolfgang Denk authored
Rename STANDALONE_LOAD_ADDR into CONFIG_STANDALONE_LOAD_ADDR and allow that the architecture-specific default value gets overwritten by defining the value in the board header file. Signed-off-by:
Wolfgang Denk <wd@denx.de> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp> Cc: Daniel Hellstrom <daniel@gaisler.com> Cc: Tsi Chung Liew <tsi-chung.liew@freescale.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
-
- Mar 31, 2011
-
-
Wolfgang Denk authored
Commit 44c6e659 "rename _end to __bss_end__ broke building of a large number of systems (at least all PowerPC?): libstubs.o: In function `app_startup': examples/standalone/stubs.c:197: undefined reference to `__bss_end__' The rename should not be done for the files in the examples/standalone/ directory, as these are not using the code from start.S, but do their own BSS clearing, and either use their own linker scripts or the ones provided by the compilers. Signed-off-by:
Po-Yu Chuang <ratbert@faraday-tech.com> Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Mar 27, 2011
-
-
Po-Yu Chuang authored
Currently, _end is used for end of BSS section. We want _end to mean end of u-boot image, so we rename _end to __bss_end__ first. Signed-off-by:
Po-Yu Chuang <ratbert@faraday-tech.com>
-
- Jan 09, 2011
-
-
Mike Frysinger authored
One more place that was missed during the do_reset() unification. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
- Nov 17, 2010
-
-
Sebastien Carlier authored
Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols". This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired. The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts. This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by:
Sebastien Carlier <sebastien.carlier@gmail.com>
-
- Oct 12, 2010
-
-
Peter Tyser authored
Using -fno-toplevel-reorder causes gcc to not reorder functions. This ensures that an application's entry point will be the first function in the application's source file. This change, along with commit 620bbba5 should cause a standalone application's entry point to be at the base of the compiled binary. Previously, the entry point could change depending on gcc version and flags. Note -fno-toplevel-reorder is only available in gcc version 4.2 or greater. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
- Sep 04, 2010
-
-
Xiangfu Liu authored
From the document, if set all arguments in "OUTPUT_FORMAT" to "tradbigmips", then even add "-EL" to gcc we still get EB format. pb1x00 is only used in Little-endian, so its default endian should be set to LE. Signed-off-by:
Xiangfu Liu <xiangfu@openmobilefree.net> Signed-off-by:
Shinya Kuribayashi <skuribay@pobox.com>
-
- Jul 12, 2010
-
-
Juergen Kilb authored
The smc911x_detect function in /net/driver/net/smc911x.c returns a 0 if everything was ok (a chip was found) and -1 else. In the standalone example 'smc911x_eeprom' the return value of smc911x_detect is interpreted in a different way (0 for error, !0 as OK). This leads to the error that the chip will not be detected. Signed-off-by:
Juergen Kilb <j.kilb@phytec.de> Acked-by:
Mike Frysinger <vapier@gentoo.org> Signed-off-by:
Ben Warren <biggerbadderben@gmail.com>
-
- Jul 04, 2010
-
-
Wolfgang Denk authored
The hush shell dynamically allocates (and re-allocates) memory for the argument strings in the "char *argv[]" argument vector passed to commands. Any code that modifies these pointers will cause serious corruption of the malloc data structures and crash U-Boot, so make sure the compiler can check that no such modifications are being done by changing the code into "char * const argv[]". This modification is the result of debugging a strange crash caused after adding a new command, which used the following argument processing code which has been working perfectly fine in all Unix systems since version 6 - but not so in U-Boot: int main (int argc, char **argv) { while (--argc > 0 && **++argv == '-') { /* ====> */ while (*++*argv) { switch (**argv) { case 'd': debug++; break; ... default: usage (); } } } ... } The line marked "====>" will corrupt the malloc data structures and usually cause U-Boot to crash when the next command gets executed by the shell. With the modification, the compiler will prevent this with an error: increment of read-only location '*argv' N.B.: The code above can be trivially rewritten like this: while (--argc > 0 && **++argv == '-') { char *arg = *argv; while (*++arg) { switch (*arg) { ... Signed-off-by:
Wolfgang Denk <wd@denx.de> Acked-by:
Mike Frysinger <vapier@gentoo.org>
-
Wolfgang Denk authored
Change the return type of the *printf() functions to the standard "int"; no changes are needed but returning the already available length count. This will save a few additional strlen() calls later... Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Jun 29, 2010
-
-
Peter Tyser authored
Previously, standalone applications were compiled with gcc flags that produced relocatable executables on the PowerPC architecture (eg with the -mrelocatable and -fPIC flags). There's no reason for these applications to be fully relocatable at this time since no relocation fixups are performed on standalone applications. Additionally, removing the gcc relocation flags results in the entry point of applications residing at the base of the image. When a standalone application was relocatable, the entry point was generally located at an offset into the image which was confusing and prone to errors. This change moves the entry point of PowerPC standalone applications from 0x40004 (usually) to 0x40000. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com> Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- May 28, 2010
-
-
Thomas Chou authored
The nios-32 arch is obsolete and broken. So it is removed. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw>
-
Thomas Chou authored
The "-ffixed-r15" option doesn't work well for gcc4. Since we don't use gp for small data with option "-G0", we can use gp as global data pointer. This allows compiler to use r15. It is necessary for gcc4 to work properly. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
- Apr 21, 2010
-
-
Stefan Roese authored
As discussed on the list, move "arch/ppc" to "arch/powerpc" to better match the Linux directory structure. Please note that this patch also changes the "ppc" target in MAKEALL to "powerpc" to match this new infrastructure. But "ppc" is kept as an alias for now, to not break compatibility with scripts using this name. Signed-off-by:
Stefan Roese <sr@denx.de> Acked-by:
Wolfgang Denk <wd@denx.de> Acked-by:
Detlev Zundel <dzu@denx.de> Acked-by:
Kim Phillips <kim.phillips@freescale.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Anatolij Gustschin <agust@denx.de>
-
- Apr 13, 2010
-
-
Peter Tyser authored
Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
Peter Tyser authored
Now that the other architecture-specific lib directories have been moved out of the top-level directory there's not much reason to have the '_generic' suffix on the common lib directory. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
Peter Tyser authored
Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk This change is intended to clean up the top-level directory structure and more closely mimic Linux's directory organization. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
- Mar 12, 2010
-
-
Wolfgang Denk authored
Building examples/standalone/eepro100_eeprom triggers this error: In file included from include/common.h:629, from eepro100_eeprom.c:24: include/net.h: In function 'NetReadIP': include/net.h:430: warning: implicit declaration of function 'memcpy' eepro100_eeprom.c: At top level: eepro100_eeprom.c:81: error: conflicting types for 'memcpy' include/net.h:430: error: previous implicit declaration of 'memcpy' was here Fix this. Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
Wolfgang Denk authored
Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Feb 01, 2010
-
-
Mike Frysinger authored
Building for a bf533-stamp ends up with this error: smc91111_eeprom.o: In function `smc91111_eeprom': examples/standalone/smc91111_eeprom.c:58: undefined reference to `memset' make[2]: *** [smc91111_eeprom] Error 1 The new eth_struct definition means gcc has to zero out the structure on the stack, and some gcc versions optimize this with an implicit call to memset. So tweak the structure style to avoid that gcc feature. Signed-off-by:
Mike Frysinger <vapier@gentoo.org> Signed-off-by:
Ben Warren <biggerbadderben@gmail.com>
-
- Jan 18, 2010
-
-
Ben Warren authored
Commit 6a45e384 (Make getenv_IPaddr() global) inadvertently added ' #include "net.h" ' to the standalone programs, creating duplicate definitions of 'struct eth_device'. This patch removes the local definitions and removes other code that breaks due to the change in definition. Signed-off-by:
Ben Warren <biggerbadderben@gmail.com> Acked-by:
Mike Frysinger <vapier@gentoo.org>
-
- Dec 05, 2009
-
-
Ingo van Lil authored
According to the PPC reference implementation the udelay() function is responsible for resetting the watchdog timer as frequently as needed. Most other architectures do not meet that requirement, so long-running operations might result in a watchdog reset. This patch adds a generic udelay() function which takes care of resetting the watchdog before calling an architecture-specific __udelay(). Signed-off-by:
Ingo van Lil <inguin@gmx.de>
-
- Dec 02, 2009
-
-
Mike Frysinger authored
Since the Makefile now controls the compilation of this, there is no need for CONFIG checking nor the stub function. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
Sanjeev Premi authored
Some versions of 'make' do not handle trailing white-spaces properly. Trailing spaces in ELF causes a 'fake' source to be added to the variable COBJS; leading to build failure (listed below). The problem was found with GNU Make 3.80. Using text-function 'strip' as a workaround for the problem. make[1]: Entering directory `/home/sanjeev/u-boot/examples/standalone' arm-none-linux-gnueabi-gcc -g -Os -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x80e80000 -I/home/sanjeev/u-boot/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/codesourcery/2009q1- 203/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.3/include -pipe -DCONFIG_ ARM -D__ARM__ -marm -mabi=aapcs-linux -mno-thumb-interwork -march=armv5 -Wall -Wstrict-prototypes -fno-stack-protector -g -Os -fno-common -ff ixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x80e80000 -I/home/sanje ev/u-boot/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/co desourcery/2009q1-203/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.3/includ e -pipe -DCONFIG_ARM -D__ARM__ -marm -mabi=aapcs-linux -mno-thumb-inte rwork -march=armv5 -I.. -Bstatic -T u-boot.lds -Ttext 0x80e80000 -o .c arm-none-linux-gnueabi-gcc: no input files make[1]: *** [.c] Error 1 make[1]: Leaving directory `/home/sanjeev/u-boot/examples/standalone' make: *** [examples/standalone] Error 2 premi # Signed-off-by:
Sanjeev Premi <premi@ti.com> Fixed typo (s/ElF/ELF/). Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Nov 23, 2009
-
-
Scott McNutt authored
the standalone examples. Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
- Nov 13, 2009
-
-
Mike Frysinger authored
When the smc911x driver was converted to NET_MULTI, the smc911x eeprom was missed. The config option needed updating as well as overhauling of the rergister read/write functions. Signed-off-by:
Mike Frysinger <vapier@gentoo.org> Tested-by:
Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by:
Ben Warren <biggerbadderben@gmail.com>
-
- Oct 27, 2009
-
-
Sergey Mironov authored
Signed-off-by:
Sergey Mironov <ierton@gmail.com> Signed-off-by:
Daniel Hellstrom <daniel@gaisler.com>
-
- Oct 05, 2009
-
-
Ben Warren authored
All in-tree boards that use this controller have CONFIG_NET_MULTI added Also: - changed CONFIG_DRIVER_SMC91111 to CONFIG_SMC91111 - cleaned up line lengths - modified all boards that override weak function in this driver - modified all eeprom standalone apps to work with new driver - updated blackfin standalone EEPROM app after testing Signed-off-by:
Ben Warren <biggerbadderben@gmail.com> Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
- Oct 03, 2009
-
-
Mike Frysinger authored
Clean up the arch/cpu/board/config checks as well as redundant setting of srec/bin variables by using the kbuild VAR-$(...) style. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
Mike Frysinger authored
Rather than maintain/extend the current ifeq($(ARCH)) mess that exists in the standalone Makefile, push the setting up of LOAD_ADDR out to the arch config.mk (and rename to STANDALONE_LOAD_ADDR in the process). This keeps the common code clean and lets the arch do whatever crazy crap it wants in its own area. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
Mike Frysinger authored
Atmel DataFlashes by default operate with pages that are slightly bigger than normal binary sizes (i.e. many are 1056 byte pages rather than 1024 bytes). However, they also have a "power of 2" mode where the pages show up with the normal binary size. The latter mode is required in order to boot with a Blackfin processor, so many people wish to convert their DataFlashes on their development systems to this mode. This standalone application does just that. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
Robin Getz authored
Since the Blackfin ABI favors higher scratch registers by default, use the last scratch register (P3) for global data rather than the first (P5). This allows the compiler's register allocator to use higher number scratch P registers, which in turn better matches the Blackfin instruction set, which reduces the size of U-Boot by more than 1024 bytes... Signed-off-by:
Robin Getz <robin.getz@analog.com> Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
- Sep 15, 2009
-
-
Mike Frysinger authored
Clean up the arch/cpu/board/config checks as well as redundant setting of srec/bin variables by using the kbuild VAR-$(...) style. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-