- Aug 20, 2010
-
-
Thomas Chou authored
There is a limitation (or bug?) of nios2 toolchain. The nios2 gcc didn't generate correct code when the reset vector is passed as a constant. It just generated a direct "call", which was wrong when the reset vector was not located in the same 256MB span as u-boot. The "Nios II Processor Reference Handbook" said, "call can transfer execution anywhere within the 256 MByte range determined by PC31..28. The Nios II GNU linker does not automatically handle cases in which the address is out of this range." So we have to use registered "callr" instruction to do the job. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
We should check argv[3] only if there are enough args. Otherwise, it might cause invalid memory access fault. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
- Jul 12, 2010
-
-
Thomas Chou authored
This will be used by nand_plat. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
This patch adds fdt support to boot linux, followed Michal's work on microblaze. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
Follow the discussion of Charles Manning and Mike Frysinger. Using gc_sections helps reduce image size. Configuring for nios2-generic board... Before, text data bss dec hex filename 123979 3724 22892 150595 24c43 /tmp/u-boot/u-boot After, text data bss dec hex filename 115983 3800 22732 142515 22cb3 /tmp/u-boot/u-boot Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.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>
-
- May 28, 2010
-
-
Thomas Chou authored
This patch allows users to override default STANDALONE_LOAD_ADDR. The gcclibdir path was duplicated in the standalone Makefile and can be removed. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
This patch fixes the run-time error on div64 when built with gcc4, which was reported by jhwu0625 on nios forum. It merges math support from libgcc of gcc4. This patch is copied from nios2-linux. It works with both gcc3 and gcc4. The old mult.c, divmod.c and math.h are removed. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
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>
-
Thomas Chou authored
This patch adds driver for a trivial gpio core, which is described in http://nioswiki.com/GPIO . It is used for gpio led and nand flash interface in u-boot. When CONFIG_SYS_GPIO_BASE is not defined, board may provide its own driver. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Tested-by:
Ian Abbott <abbotti@mev.co.uk> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
- Apr 24, 2010
-
-
Thomas Chou authored
This patch fixes error when CONFIG_SYS_NO_FLASH. And adds nand flash and mmc initialization, which should go before env initialization. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
Global interrupt should be disabled from the beginning. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
This function return cache-line aligned allocation which is mapped to uncached io region. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
This patch adds 64 bits swab support. Most 32 bits processors use this. We need 64 bits swab for UBI. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
Thomas Chou authored
This patch allow boards to override the default link script. Signed-off-by:
Thomas Chou <thomas@wytron.com.tw> Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
- Apr 16, 2010
-
-
Scott McNutt authored
Signed-off-by:
Scott McNutt <smcnutt@psyent.com>
-
- Apr 13, 2010
-
-
Peter Tyser authored
Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
Peter Tyser authored
This helps to clean up the include/ directory so that it only contains non-architecture-specific headers and also matches Linux's directory layout which many U-Boot developers are already familiar with. 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>
-