summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG1189
-rw-r--r--MAINTAINERS2
-rwxr-xr-xMAKEALL11
-rwxr-xr-xMakefile3
-rw-r--r--README56
-rw-r--r--board/atmel/at91sam9261ek/at91sam9261ek.c9
-rw-r--r--board/mucmc52/mucmc52.c2
-rw-r--r--board/pandora/pandora.h3
-rw-r--r--board/uc101/uc101.c2
-rwxr-xr-xcommon/Makefile1
-rw-r--r--common/cmd_bootm.c8
-rw-r--r--common/cmd_cache.c4
-rw-r--r--common/cmd_date.c6
-rw-r--r--common/cmd_i2c.c12
-rw-r--r--common/cmd_irq.c9
-rw-r--r--common/cmd_license.c4
-rw-r--r--common/cmd_mgdisk.c4
-rw-r--r--common/cmd_misc.c11
-rw-r--r--cpu/arm920t/s3c24x0/timer.c2
-rw-r--r--cpu/arm_cortexa8/omap3/board.c2
-rw-r--r--doc/uImage.FIT/kernel.its3
-rw-r--r--doc/uImage.FIT/kernel_fdt.its3
-rw-r--r--doc/uImage.FIT/multi.its3
-rw-r--r--doc/uImage.FIT/update3.its3
-rw-r--r--doc/uImage.FIT/update_uboot.its3
-rw-r--r--drivers/mtd/nand/nand_util.c2
-rw-r--r--drivers/net/smc911x.c4
-rw-r--r--drivers/rtc/m41t11.c14
-rw-r--r--drivers/rtc/mc13783-rtc.c2
-rw-r--r--drivers/spi/atmel_dataflash_spi.c18
-rw-r--r--examples/standalone/Makefile8
-rw-r--r--examples/standalone/nios.lds61
-rw-r--r--examples/standalone/nios2.lds133
-rw-r--r--examples/standalone/smc91111_eeprom.c12
-rw-r--r--include/configs/MPC8536DS.h7
-rw-r--r--include/configs/MPC8541CDS.h7
-rw-r--r--include/configs/MPC8544DS.h7
-rw-r--r--include/configs/MPC8548CDS.h7
-rw-r--r--include/configs/MPC8555CDS.h7
-rw-r--r--include/configs/MPC8568MDS.h7
-rw-r--r--include/configs/MPC8569MDS.h7
-rw-r--r--include/configs/MPC8572DS.h7
-rw-r--r--include/configs/P2020DS.h7
-rw-r--r--include/image.h2
-rw-r--r--include/spi_flash.h1
-rw-r--r--lib_generic/Makefile1
-rw-r--r--lib_generic/circbuf.c (renamed from common/circbuf.c)0
-rw-r--r--lib_generic/lzma/LzmaTools.c9
-rw-r--r--lib_generic/zlib.c2
-rw-r--r--lib_nios/config.mk2
-rw-r--r--lib_nios2/board.c2
-rw-r--r--lib_nios2/bootm.c5
-rw-r--r--lib_nios2/config.mk2
-rw-r--r--lib_ppc/Makefile2
-rw-r--r--lib_ppc/kgdb.c5
-rwxr-xr-xmkconfig5
-rw-r--r--net/net.c32
-rw-r--r--net/nfs.c13
-rw-r--r--tools/.gitignore1
-rw-r--r--tools/fit_image.c34
-rw-r--r--tools/img2srec.c164
-rw-r--r--tools/mingw_support.c157
-rw-r--r--tools/mingw_support.h2
-rw-r--r--tools/mkimage.c56
64 files changed, 1612 insertions, 557 deletions
diff --git a/CHANGELOG b/CHANGELOG
index bd16ed874..4bf806ef4 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,1183 @@
+commit f2352877cb2daac88115192fb09991a2397d0b27
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Sun Dec 6 23:58:28 2009 -0600
+
+ MAKEALL: Fix return value
+
+ Previously MAKEALL would always return a value of 0, even if 1 or more
+ boards did not compile. This change causes MAKEALL to return 0 if all
+ boards were able to build, otherwise 1.
+
+ This change also requires changing the script interpreter from sh to
+ bash to support bash's PIPESTATUS variable.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit fbc1c8f6f6c972524197829c56dd8f2f5da0200a
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Sun Dec 6 01:33:24 2009 -0600
+
+ tools/mkimage: Remove duplicate line of code
+
+ Recent commits 1a99de2cb4d08eb3bf9fb3f60a9d533150de8c0e and
+ 6a590c5f5fd12cdd27f3153522acfac3854590e7 both fixed the same bug in the
+ same manner. Unfortunately git was "smart" enough to merge both changes
+ which resulted in some duplicate code.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+ Reordered code and comment a bit.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit df002fa6b9cd475909ede35bf95b803c2289c6a4
+Author: Heiko Schocher <hs@denx.de>
+Date: Sat Dec 5 11:59:51 2009 +0100
+
+ i2c: fix dangling comment in do_i2c_mw()
+
+ commit bd3784df94bfeca43fbf34094df9cb1bd3ecca3b deleted some unused
+ code in do_i2c_mw(), but missed to also remove the respective
+ commment. This patch fixes this.
+
+ Signed-off-by: Heiko Schocher <hs@denx.de>
+
+commit f8450829f921cf10667af98a8d08edfa3d998f04
+Author: Heiko Schocher <hs@denx.de>
+Date: Tue Dec 1 19:30:47 2009 +0100
+
+ 52xx, manroland: add fdt_fixup_memory() in ft_board_setup()
+
+ To update the real memory size in the memory node on the
+ uc101 and mucmc52 boards call fdt_fixup_memory() in
+ ft_board_setup().
+
+ Signed-off-by: Heiko Schocher <hs@denx.de>
+
+commit 0ec81db20294efdad2454a753e79f1fe244a43ca
+Author: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
+Date: Tue Dec 1 14:05:55 2009 +0100
+
+ Fix computation in nand_util.c:get_len_incl_bad
+
+ Depending on offset, flash size and the number of bad blocks,
+ get_len_incl_bad may return a too small value which may lead to:
+
+ 1) If there are no bad blocks, nand_{read,write}_skip_bad chooses the
+ bad block aware read/write code. This may hurt performance, but does
+ not have any adverse effects.
+
+ 2) If there are bad blocks, the nand_{read,write}_skip_bad may choose
+ the bad block unaware read/write code (if len_incl_bad == *length)
+ which leads to corrupted data.
+
+ Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
+
+commit aabb8cb0818e285aeed0cfaf243635997e07554d
+Author: Evan Samanas <esamanas@xes-inc.com>
+Date: Mon Nov 9 20:08:36 2009 -0600
+
+ nfs: NfsTimeout() updates
+
+ - NfsTimeout() does not correctly update the NFS timeout value which
+ results in NfsTimeout() only being called once in certain situations.
+ This can result in the 'nfs' command hanging indefinetly. For
+ example, the command:
+
+ nfs 192.168.0.1:/home/user/file
+
+ will not exit until ctrl-c is pressed if 192.168.0.1 does not have an
+ NFS server running.
+
+ This issue is resolved by reinitializting the NFS timeout value inside
+ NfsTimeout() when a timeout occurs.
+
+ - Make the 'nfs' command print the 'T' character when a timeout occurs.
+ Previously there was no indication that timeouts were occuring.
+
+ - Mimic the 'tftpboot' command and when a download fails print "Retry
+ count exceeded; starting again", and restart the download taking the
+ 'netretry' environment variable into account.
+
+ Signed-off-by: Evan Samanas <esamanas@xes-inc.com>
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+ Tested on TQM8xxL.
+
+ Tested by: Wolfgang Denk <wd@denx.de>
+
+ Tested on MPC8527DS.
+
+ Tested by: Ed Swarthout <Ed.Swarthout@freescale.com>
+
+commit 224c90d1060bf1a83cbf33ca51d060b9d19e0294
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Wed Nov 18 19:08:59 2009 -0600
+
+ bootm: Fix help message's sub-command ordering
+
+ The help message for the 'bootm' command listed the 'cmdline' and 'bdt'
+ sub-commands in the wrong order which resulted in the error below when
+ following the 'help' command's instructions:
+
+ "Trying to execute a command out of order"
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit a93c92cddaedd5f0720e0da15c6664f7a688b582
+Author: Robert P. J. Day <rpjday@crashcourse.ca>
+Date: Tue Nov 17 07:30:23 2009 -0500
+
+ help: Correct syntax of nandecc help output.
+
+ "nandecc" help output should not reproduce the command name, nor have
+ a trailing newline.
+
+ Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
+
+commit c2fff331a32ceca837d76eb7827d6340da270d52
+Author: Mike Rapoport <mike@compulab.co.il>
+Date: Wed Nov 11 10:03:03 2009 +0200
+
+ smc911x: update SMC911X related configuration description
+
+ Since commit 736fead8fdbf8a8407048bebc373cd551d01ec98 "Convert SMC911X
+ Ethernet driver to CONFIG_NET_MULTI API" SMC911X configration options
+ are called CONFIG_SMC911X rather than CONFIG_DRIVER_SMC911X. Update
+ README to reflect that change.
+
+ Signed-off-by: Mike Rapoport <mike@compulab.co.il>
+
+commit 45b6b65c6bf06a589ef3123192af94b0381db27b
+Author: Mike Rapoport <mike@compulab.co.il>
+Date: Wed Nov 11 10:03:09 2009 +0200
+
+ smc911x: fix typo in smc911x_handle_mac_address name
+
+ Signed-off-by: Mike Rapoport <mike@compulab.co.il>
+
+commit f64ef9bb995687e24e0b61b52316f4eaa97c3bbc
+Author: Ed Swarthout <Ed.Swarthout@freescale.com>
+Date: Thu Nov 19 02:47:28 2009 -0600
+
+ fix nfs symlink name corruption
+
+ An off by one error may cause nfs readlink lookup fail if
+ nfs_path_buff has non-zero data from a previous use.
+
+ Loading: *** ERROR: File lookup fail
+
+ Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
+
+commit e8fac25e83426fdf461c66aa8a2530ec28ec536e
+Author: Wolfgang Denk <wd@denx.de>
+Date: Mon Dec 7 21:06:40 2009 +0100
+
+ at91sam9261ek.c: fix minor coding style issue.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 4713010adf5beda87410d637ebfc58db0db9a9db
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sun Dec 6 01:21:28 2009 +0100
+
+ trab: fix warning: implicit declaration of function 'disable_vfd'
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit a9f99ab44b473fb394169ba365f8b4380f981584
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sun Dec 6 00:53:18 2009 +0100
+
+ zlib.c: avoid build conflicts for cradle board
+
+ Commit dce3d79710 updated the zlib code to v0.95; this caused
+ conflicts when building for the "cradle" board, because the (pretty
+ generic) preprocessor variable "OFF" was used in multiple files.
+ Make sure to avoid further conflicts by #undef'ing it in zlib.c
+ before redefining it.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+ cc: Giuseppe Condorelli <giuseppe.condorelli@st.com>
+ cc: Angelo Castello <angelo.castello@st.com>
+ cc: Alessandro Rubini <rubini-list@gnudd.com>
+
+commit 8cbf4e4f17121d732e78764f0ba317c9a1838ea6
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sun Dec 6 00:26:19 2009 +0100
+
+ Fix out-of-tree building of "apollon" board.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit f68ab43de67f59925542efb6bcec30f4a84fe695
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Fri Dec 4 05:35:15 2009 -0500
+
+ lzma: ignore unset filesizes
+
+ The Linux kernel build system changed how it compresses things with LZMA
+ such that the header no longer contains the filesize (it is instead set to
+ all F's). So if we get a LZMA image that has -1 for the 64bit field,
+ let's just assume that the decompressed size is unknown and continue on.
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit cccfc2ab77877dbdd2abe26b28d4c1f467feb0c0
+Author: Detlev Zundel <dzu@denx.de>
+Date: Tue Dec 1 17:16:19 2009 +0100
+
+ README: Rearrange paragraphs to regain linear arrangement.
+
+ Two later additions to the Configuration Option section unfortunately
+ split the description of Show boot progress and the list of its call outs.
+
+ Signed-off-by: Detlev Zundel <dzu@denx.de>
+
+commit c81296c16fd9d12422c9968cc0f1d9bf440a7d88
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Tue Nov 24 16:42:10 2009 -0600
+
+ tools/mkimage: Print FIT image contents after creation
+
+ Previously, there was no indication to the user that a FIT image was
+ successfully created after executing mkimage. For example:
+
+ $ mkimage -f uImage.its uImage.itb
+ DTC: dts->dtb on file "uImage.its"
+
+ Adding some additional output after creating a FIT image lets the user
+ know exactly what is contained in their image, eg:
+
+ $ mkimage -f uImage.its uImage.itb
+ DTC: dts->dtb on file "uImage.its"
+ FIT description: Linux kernel 2.6.32-rc7-00201-g7550d6f-dirty
+ Created: Tue Nov 24 15:43:01 2009
+ Image 0 (kernel@1)
+ Description: Linux Kernel 2.6.32-rc7-00201-g7550d6f-dirty
+ Type: Kernel Image
+ Compression: gzip compressed
+ Data Size: 2707311 Bytes = 2643.86 kB = 2.58 MB
+ Architecture: PowerPC
+ OS: Linux
+ Load Address: 0x00000000
+ Entry Point: 0x00000000
+ Hash algo: crc32
+ Hash value: efe0798b
+ Hash algo: sha1
+ Hash value: ecafba8c95684f2c8fec67e33c41ec88df1534d7
+ Image 1 (fdt@1)
+ Description: Flattened Device Tree blob
+ Type: Flat Device Tree
+ Compression: uncompressed
+ Data Size: 12288 Bytes = 12.00 kB = 0.01 MB
+ Architecture: PowerPC
+ Hash algo: crc32
+ Hash value: a5cab676
+ Hash algo: sha1
+ Hash value: 168722b13e305283cfd6603dfe8248cc329adea6
+ Default Configuration: 'config@1'
+ Configuration 0 (config@1)
+ Description: Default Linux kernel
+ Kernel: kernel@1
+ FDT: fdt@1
+
+ This brings the behavior of creating a FIT image in line with creating a
+ standard uImage, which also prints out the uImage contents after
+ creation.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit 8e1c89663cc8796b85588910046e03b388a7597c
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Tue Nov 24 16:42:09 2009 -0600
+
+ tools/fit_image.c: Remove unused fit_set_header()
+
+ The FIT fit_set_header() function was copied from the standard uImage's
+ image_set_header() function during mkimage reorganization. However, the
+ fit_set_header() function is not used since FIT images use a standard
+ device tree blob header.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit 1a99de2cb4d08eb3bf9fb3f60a9d533150de8c0e
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Tue Nov 24 16:42:08 2009 -0600
+
+ tools/mkimage: Assume FDT image type for FIT images
+
+ When building a Flattened Image Tree (FIT) the image type needs to be
+ "flat_dt". Commit 89a4d6b12fd6394898b8a454cbabeaf1cd59bae5 introduced a
+ regression which caused the user to need to specify the "-T flat_dt"
+ parameter on the command line when building a FIT image. The "-T
+ flat_dt" parameter should not be needed and is at odds with the current
+ FIT image documentation.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit 270737acca21f3939f814de5dcf350a1c3d80d83
+Author: Michael Brandt <Michael.Brandt@emsyso.de>
+Date: Sun Nov 22 14:13:27 2009 +0100
+
+ EXT2FS: fix inode size for ext2fs rev#0
+
+ extfs.c assumes that there is always a valid inode_size field in the
+ superblock. But this is not true for ext2fs rev 0. Such ext2fs images
+ are for instance generated by genext2fs. Symptoms on ARM machines are
+ messages like: "raise: Signal # 8 caught"; on PowerPC "ext2ls" will
+ print nothing.
+ This fix checks for rev 0 and uses then 128 bytes as inode size.
+
+ Signed-off-by: Michael Brandt <Michael.Brandt@emsyso.de>
+ Tested on: TQM5200S
+ Tested-by: Wolfgang Denk <wd@denx.de>
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit bcb324d68f7955c1136dafc944eb55db8ebaa601
+Author: Robert P. J. Day <rpjday@crashcourse.ca>
+Date: Thu Nov 19 11:00:28 2009 -0500
+
+ Remove superfluous preprocessor tests from some cmd_*.c files.
+
+ A small number of common/cmd_*.c files contain preprocessor tests that
+ are apparently superfluous since those same tests are used in the
+ Makefile to control the compilation of those files. Those tests are
+ clearly redundant as long as they surround the entirety of the source
+ in those files.
+
+ Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
+
+commit ad53226156fa64b6d04c0d1d6e91e09979cbea15
+Author: Robert P. J. Day <rpjday@crashcourse.ca>
+Date: Tue Nov 17 01:59:29 2009 -0500
+
+ README: Update the list of directories.
+
+ Bring the directory listing more into line with current content.
+
+ Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
+
+commit bd3784df94bfeca43fbf34094df9cb1bd3ecca3b
+Author: Pratap Chandu <pratap.rrke@gmail.com>
+Date: Thu Nov 12 19:28:25 2009 +0530
+
+ Removes dead code in the file common/cmd_i2c.c
+
+ There is some dead code enclosed by #if 0 .... #endif in the file
+ common/cmd_i2c.c
+ This patch removes the dead code.
+
+ Signed-off-by: Pratap Chandu <pratap.rrke@gmail.com>
+
+commit 64a480601a5614b441de692ae15a62c51e0bb381
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Wed Nov 11 17:51:56 2009 -0500
+
+ smc91111_eeprom: drop CONFIG stub protection
+
+ 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>
+
+commit f3a7bddc06c927c36a1a99a97131299479ef207a
+Author: Magnus Lilja <lilja.magnus@gmail.com>
+Date: Wed Nov 11 19:56:58 2009 +0100
+
+ RTC: Fix return code in MC13783 RTC driver.
+
+ Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
+
+commit d52e3e0176a74c30549251e16c5c00a363c544d2
+Author: Magnus Lilja <lilja.magnus@gmail.com>
+Date: Wed Nov 11 19:56:36 2009 +0100
+
+ cmd_date: Fix spelling in error message.
+
+ Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
+
+commit c253122395753abb9e531d8906c5265dc8803fb1
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Wed Nov 11 10:36:28 2009 -0600
+
+ Move do_irqinfo() to common/cmd_irq.c
+
+ cmd_irq.c is a much better home and it is already conditionally
+ compiled based on CONFIG_CMD_IRQ.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit a5dd4dc64fe68e549c5ffcf6a048281b5ba94752
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Wed Nov 11 10:36:19 2009 -0600
+
+ cmd_license: Remove unneeded #ifdef CONFIG_CMD_LICENSE
+
+ cmd_license is already conditionally compiled at the Makefile-level.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit 06015146a15adc7455440c491d543f6a8091551d
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Mon Nov 9 15:18:52 2009 -0600
+
+ m41t11: Remove unused functions
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit 9ef78511cda39987e5fc10febf386fd19f58ecf7
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Mon Nov 9 15:17:50 2009 -0600
+
+ circbuf: Move to lib_generic and conditionally compile
+
+ circbuf could be used as a generic library and is only currently
+ needed when CONFIG_USB_TTY is defined.
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit 604f7ce55ad74694ef8743ad2e99933dc0265e46
+Author: Sanjeev Premi <premi@ti.com>
+Date: Mon Nov 9 22:43:00 2009 +0530
+
+ Fix build failure in examples/standalone
+
+ 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>
+
+commit af860962b544ddf323c4ff68454f00d31e44df0a
+Author: Becky Bruce <beckyb@kernel.crashing.org>
+Date: Wed Nov 4 18:30:08 2009 -0600
+
+ 85xx: Remove unused CONFIG_ASSUME_AMD_FLASH from config files
+
+ A bunch of the 85xx boards have this cruft in them - it's not used
+ anywhere. Delete it.
+
+ Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
+
+commit deec1fbd4f704dded2e668bb9e368631981ea139
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed Dec 2 22:26:30 2009 +0100
+
+ MAINTAINERS: update responsible for MPC85xx/86xx
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+ Cc: Kumar Gala <galak@kernel.crashing.org>
+ Cc: Becky Bruce <beckyb@kernel.crashing.org>
+
+commit 824d82997fbcf28e49081d36fdd5d3be1b92b03d
+Author: Ira W. Snyder <iws@ovro.caltech.edu>
+Date: Wed Nov 4 13:37:59 2009 -0800
+
+ Fix example FIT image source files
+
+ The example FIT image source files do not compile with the latest dtc and
+ mkimage. The following error message is produced:
+
+ DTC: dts->dtb on file "kernel.its"
+ Error: kernel.its 7:0 - 1:0 syntax error
+ FATAL ERROR: Unable to parse input tree
+ ./mkimage: Can't read kernel.itb.tmp: Invalid argument
+
+ The FIT image source files are missing the "/dts-v1/;" directive at the
+ beginning of the file. Add the directive to the examples.
+
+ Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
+
+commit fd66066ee3ce15c2966feb9b2be0f0d51a95db48
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Wed Nov 4 16:13:19 2009 -0500
+
+ img2srec: use standard types
+
+ The img2srec code creates a lot of typedefs with common names. These
+ easily clash with system headers that include these typedefs (like mingw).
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit 8204e068110e8abe5db9c3b7df9971b58cda8f26
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Wed Nov 4 16:03:25 2009 -0500
+
+ tools: gitignore *.exe binaries
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit 425d3b666eee5c58fdb82fb894a535dd71782a05
+Author: Peter Tyser <ptyser@xes-inc.com>
+Date: Tue Nov 3 23:31:07 2009 -0600
+
+ ppc: Move conditional compilation of kgdb.c to Makefile
+
+ Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
+
+commit e06ab6546b332acc55ac4e7c31338662328b0fb3
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Tue Nov 3 11:36:39 2009 -0500
+
+ spi_flash.h: pull in linux/types.h for u## types
+
+commit 0008555f4d57c15ad86ee735861ca0d783042f61
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Tue Nov 3 11:36:26 2009 -0500
+
+ bootm: mark local boot_os[] table static
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit a8fa379d47f06c7d3ed75c8fb26ae43ee38e1fd7
+Author: Nishanth Menon <nm@ti.com>
+Date: Mon Nov 2 09:40:18 2009 -0600
+
+ mkconfig: deny messed up ARCH definition
+
+ Refuse to setup a platform if the command line ARCH= is not the same
+ as the one required for the board. This prevents any user with
+ prehistoric aliases from messing up their builds.
+
+ Reported in thread:
+ http://old.nabble.com/-U-Boot--Build-breaks-on-some-OMAP3-configs-to26132721.html
+
+ Inputs from: Mike Frysinger and Wolfgang Denk:
+ http://lists.denx.de/pipermail/u-boot/2009-November/063642.html
+
+ Cc: Wolfgang Denk <wd@denx.de>
+ Cc: Mike Frysinger <vapier@gentoo.org>
+ Cc: Anand Gadiyar <gadiyar@ti.com>
+ Cc: Dirk Behme <dirk.behme@googlemail.com>
+ Signed-off-by: Nishanth Menon <nm@ti.com>
+
+commit 67b96e87da1b84660fa1e5b78cc760246d116814
+Author: Remy Bohmer <linux@bohmer.net>
+Date: Wed Oct 28 22:13:39 2009 +0100
+
+ Repair the 'netretry=once' option.
+
+ 'netretry = once' does the same as 'netretry = yes', because it is not stored
+ when it was tried once.
+
+ Signed-off-by: Remy Bohmer <linux@bohmer.net>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit b25e38fc36e13fa8037fa4d37fe909d1d6e6f372
+Author: Remy Bohmer <linux@bohmer.net>
+Date: Thu Oct 29 14:24:22 2009 +0100
+
+ Repair build fail in case CONFIG_PPC=n and CONFIG_FIT=y
+
+ Signed-off-by: Remy Bohmer <linux@bohmer.net>
+
+commit 01826abc02ce160501534788e63629ccbe31b05c
+Author: Grazvydas Ignotas <notasas@gmail.com>
+Date: Thu Nov 12 11:46:07 2009 +0200
+
+ OMAP3: pandora: fix booting without serial attached
+
+ When the board is booted without serial cable attached (which
+ is how most of them will be used) UART RX is left floating and
+ sometimes picks noise, which interrupts countdown and enters
+ U-Boot prompt instead of booting the kernel.
+
+ Fix this by setting up internal pullup on UART RX pin. This
+ does not prevent serial from working as the internal pullup
+ is weak.
+
+ Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
+
+commit 41dfd8a60324243dbe2dc313a607910824a68aa7
+Author: Remy Bohmer <linux@bohmer.net>
+Date: Wed Oct 28 22:13:37 2009 +0100
+
+ Add support for CS2 dataflash for Atmel-SPI.
+
+ The only missing chipselect line support is CS2, and I need it on
+ CS2...
+
+ Signed-off-by: Remy Bohmer <linux@bohmer.net>
+
+commit faf36c1437c95e4a86835633d9801c5f6396a3c7
+Author: Remy Bohmer <linux@bohmer.net>
+Date: Wed Oct 28 22:13:36 2009 +0100
+
+ Fix mingw tools build
+
+ mkimage does not build due to missing strtok_r() and getline() implementation
+
+ Signed-off-by: Remy Bohmer <linux@bohmer.net>
+
+commit 6a590c5f5fd12cdd27f3153522acfac3854590e7
+Author: Remy Bohmer <linux@bohmer.net>
+Date: Wed Oct 28 22:13:35 2009 +0100
+
+ Building of FIT images does not work.
+
+ The type is not set for generation of the FIT images, resulting
+ in no images being created without printing or returning an error
+
+ Signed-off-by: Remy Bohmer <linux@bohmer.net>
+
+commit 0a7691e820e33b23f61c6ea0ef6fa72099d1a6ae
+Author: Renato Andreola <renato.andreola@imagos.it>
+Date: Mon Nov 23 16:45:14 2009 -0500
+
+ Nios2: do_boom_linux(): kernel gunzip input data integrity problem due to
+ missing cache flush.
+
+ Added instruction and data caches flush.
+
+ Signed-off-by: Scott McNutt <smcnutt@psyent.com>
+
+commit de03825386eaedb5e17261dd87cde86e9a764ba9
+Author: Scott McNutt <smcnutt@psyent.com>
+Date: Mon Nov 23 16:29:40 2009 -0500
+
+ Nios2: Fix compiler warnings in lib_nios2/board.c (unused variables)
+
+ Signed-off-by: Scott McNutt <smcnutt@psyent.com>
+
+commit 57baa379cf2f67df89a5c6052767fd25daff20bd
+Author: Scott McNutt <smcnutt@psyent.com>
+Date: Mon Nov 23 15:54:25 2009 -0500
+
+ Nios2/Nios: Remove unnecessary (residual) linker Nios command scripts from
+ the standalone examples.
+
+ Signed-off-by: Scott McNutt <smcnutt@psyent.com>
+
+commit fcffb680e77fcb48598d4a9944dbe2d4503170e0
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Wed Oct 14 19:28:03 2009 -0400
+
+ sf: fix stmicro offset setup while erasing
+
+ Reported-by: Peter Gombos <gombos@protecta.hu>
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit d394a7795027d96ca55799df40bd5c4a13dbeebe
+Author: Jason McMullan <mcmullan@netapp.com>
+Date: Fri Oct 9 17:12:23 2009 -0400
+
+ sf: new driver for Winbond W25X16/32/64 devices
+
+ Signed-off-by: Jason McMullan <jason.mcmullan@gmail.com>
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit cada315100c88894b85972a91309a6f2413966b6
+Author: Marcel Ziswiler <marcel@ziswiler.com>
+Date: Thu Oct 1 23:55:17 2009 +0200
+
+ mpc8260: move FDT memory node fixup into common CPU code.
+
+ Signed-off-by: Marcel Ziswiler <marcel.ziswiler@noser.com>
+ Tested-by: Heiko Schocher <hs@denx.de>
+
+commit f2cea405f83da46b72098ea874fb3eefe185d312
+Author: Po-Yu Chuang <ratbert.chuang@gmail.com>
+Date: Wed Sep 23 15:52:35 2009 +0800
+
+ Add driver for FTRTC010 real time clock
+
+ Signed-off-by: Po-Yu Chuang <ratbert@faraday-tech.com>
+
+ Edited commit message.
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit c0356a88011330646e960dfac8a2c909bede3304
+Author: Mark Jackson <mpfj-list@mimc.co.uk>
+Date: Mon Aug 17 16:42:52 2009 +0100
+
+ MIMC200: set default fbmem value
+
+ This patch adds a default bootargs "fbmem" value to the
+ CONFIG_BOOTARGS string for the MIMC200 board.
+
+ Signed-off-by: Mark Jackson <mpfj@mimc.co.uk>
+
+commit 3ffc0d61bad7d986e344ce7062b37c5c8f04fb0e
+Author: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
+Date: Tue Oct 27 19:58:09 2009 +0100
+
+ ppc4xx: Initialize magnetic coupler on VOM405 boards
+
+ This patch fixes an ugly behavior of the IL712 magnetic coupler
+ as used on VOM405. These parts will remember their last state
+ over a power cycle which might cause unwanted behavior.
+
+ Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit be0db3e3141c6c6b4e232b51091f35a284cc54e5
+Author: Matthias Fuchs <matthias.fuchs@esd.eu>
+Date: Mon Oct 26 09:58:45 2009 +0100
+
+ ppc4xx: Initialize magnetic couplers in PLU405
+
+ This patch fixes an ugly behavior of the IL712 magnetic couplers
+ as used on PLU405. These parts will remember their last state
+ over a power cycle which might cause unwanted behavior.
+
+ Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 067f54c66acd469870ef6946e1591bfcc02de1b3
+Author: Matthias Fuchs <matthias.fuchs@esd.eu>
+Date: Mon Oct 26 09:55:40 2009 +0100
+
+ Add minimal SJA1000 header for basic CAN mode
+
+ This patch is in preparation for the upcoming PLU405 board fix.
+
+ Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit cdbdbe65f5f006cba208accee5a126c659d4b867
+Author: Kumar Gala <galak@kernel.crashing.org>
+Date: Fri Nov 13 08:52:21 2009 -0600
+
+ ppc/85xx: Fix how we determine the number of CAM entries
+
+ We were incorrectly use the max CAM size as the number of entries in
+ the array for setting up the addrmap. We should be using the NENTRY
+ field which is the low 12-bits of TLB1CFG.
+
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit fbd47b6753b08162436d9ccad1e63c8d43ede54c
+Author: Mike Rapoport <mike@compulab.co.il>
+Date: Thu Nov 12 15:35:08 2009 +0200
+
+ smc911x: make smc911x_initialize return correct value
+
+ Make smc911x_initialize return -1 on error and number of interfaces
+ detected otherwise.
+
+ Signed-off-by: Mike Rapoport <mike@compulab.co.il>
+ Acked-by: Mike Frysinger <vapier@gentoo.org>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit c44efcf97b335dcef7d014f65b7d3094e79adb13
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Thu Nov 12 22:26:02 2009 -0500
+
+ smc911x_eeprom: fix building after smc911x overhaul
+
+ 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>
+
+commit 3ad95deb30ac73bd57e966d321215a17d3236f9f
+Author: Dave Liu <daveliu@freescale.com>
+Date: Thu Nov 12 07:26:37 2009 +0800
+
+ fsl-ddr: Fix the chip-select interleaving issue
+
+ commit 1542fbdeec0d1e2a6df13189df8dcb1ce8802be3
+ introduced one new bug to chip-select interleaving.
+
+ Single DDR controller also can do the chip-select
+ interleaving if there is dual-rank or qual-rank DIMMs.
+
+ Signed-off-by: Dave Liu <daveliu@freescale.com>
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit 651ef90fa6ca824c8e581aeef9e04bbbe7f7e9ce
+Author: javier Martin <javier.martin@vista-silicon.com>
+Date: Thu Oct 29 08:22:43 2009 +0100
+
+ mxc_fec: avoid free() calls to already freed pointers.
+
+ Sometimes, inside NetLoop, eth_halt() is called before eth_init() has
+ been called. This is harmless except for free() calls to pointers
+ which have not been allocated yet.
+
+ This patch initializes those pointers to NULL and allocates them only
+ the first time. This way we can get rid of free calls in halt callback.
+
+ This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.
+
+ Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit e8f1546a88b4ade6a910c4a7958a774ee1b40023
+Author: javier Martin <javier.martin@vista-silicon.com>
+Date: Thu Oct 29 08:18:34 2009 +0100
+
+ mxc_fec: fix some erroneous PHY accesses.
+
+ This patch fixes erroneous access to the ethernet PHY which broke the driver.
+ 1. Selector field in the auto-negotiation register must be 0x00001 for
+ using 802.3, not 0x00000 which is reseved.
+ 2. Access to the PHY address specified by CONFIG_FEC_MXC_PHYADDR, not
+ 0x0 fixed address.
+
+ This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.
+
+ Now using proper defines for auto-negotiation register.
+
+ Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit f865fcbbb35851e75fee9c3a3fa8e0f71d9e6463
+Author: Ron Lee <ron@debian.org>
+Date: Wed Aug 5 20:14:01 2009 +0200
+
+ ARM Don't inline weak symbols
+
+ ------------------------------------------------------------------------
+
+ GCC 4.4 complains about this now.
+
+ Signed-off-by: Ron Lee <ron@debian.org>
+
+commit d14c7ec2b51fb92c4a5218b299b772c3d186510d
+Author: Ben Warren <biggerbadderben@gmail.com>
+Date: Mon Nov 9 13:09:57 2009 -0800
+
+ Fix SMC91111 regression: lpd7a40x build failures
+
+ Both lpd7a400 and lpd7a404 failed to compile because they had
+ CONFIG_SMC_USE_IOFUNCS defined:
+
+ examples/standalone/smc91111_eeprom.c:388: undefined reference to `SMC_outw'
+
+ Also removed an orphaned paren in lpd7a404.h
+
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit 1031ae960ce6ce8332190278a06e2d72c2b2793e
+Author: Ben Warren <biggerbadderben@gmail.com>
+Date: Mon Nov 9 14:01:08 2009 -0800
+
+ SMC91111: Clean up SMC_inx macros on xsengine and xaeniax
+
+ This patch fixes the following warnings:
+
+ Configuring for xaeniax board...
+ smc91111_eeprom.c: In function 'print_macaddr':
+ smc91111_eeprom.c:278: warning: suggest parentheses around + or - in operand of &
+ smc91111_eeprom.c:281: warning: suggest parentheses around + or - in operand of &
+ ...
+ Configuring for xsengine board...
+ smc91111_eeprom.c: In function 'print_macaddr':
+ smc91111_eeprom.c:278: warning: suggest parentheses around + or - inside shift
+ smc91111_eeprom.c:281: warning: suggest parentheses around + or - inside shift
+
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit 830c7b6722c6a9762411bf52a7bf2fae4dc71dab
+Author: Ben Warren <biggerbadderben@gmail.com>
+Date: Mon Nov 9 11:43:18 2009 -0800
+
+ Fix CS8900 regression on impa7 board
+
+ The following error was seen on impa7 board, due to its use of a 32-bit bus
+ on CS8900.
+ cs8900.c:137:37: error: macro "get_reg_init_bus" passed 2 arguments, but takes just 1
+
+ This patch gives the macro the correct number of arguments
+
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit e5c5d9e0834bacf1c4787fa76cc4e369f2597cf5
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Sun Nov 1 22:39:56 2009 -0500
+
+ clarify eth driver halt/recv steps
+
+ The dev->halt() func can be called at any time, and the dev->recv() func
+ does not need to use NetRxPackets[] when calling NetReceive().
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit 497ab0eec5e1e2dfccc141a4485cd6b940e1424a
+Author: Hui.Tang <zetalabs@gmail.com>
+Date: Thu Nov 5 09:58:44 2009 +0800
+
+ Fix cs8900 dev->priv not init issue
+
+ Ensure all CS8900 data structures are assigned before accessing device
+
+ Signed-off-by: Hui.Tang <zetalabs@gmail.com>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit 4fe5193d464ecdac26ddc71b1351be5b86bbff29
+Author: Stefan Roese <sr@denx.de>
+Date: Tue Nov 3 14:34:45 2009 +0100
+
+ ppc4xx: 44x_spd_ddr2.c: Fix register macro ECCCR -> ECCES (SDRAM_ECCES)
+
+ This error only appears when DEBUG is enabled in this driver. That's why
+ it went unnoticed till now.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 916ed9444d3ab7b5cd6312557005f2a764a8baf7
+Author: Stefan Roese <sr@denx.de>
+Date: Thu Oct 29 18:37:45 2009 +0100
+
+ ppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z)
+
+ This patch fixes a problem only seen very occasionally on Canyonlands.
+ The NOR flash interface (CFI driver) doesn't work reliably in all cases.
+ Erasing and/or programming sometimes doesn't work. Sometimes with
+ an error message, like "flash not erased" when trying to program an
+ area that should have just been erased. And sometimes without any error
+ messages. As mentioned above, this problem was only seen rarely and with
+ some PLL configuration (CPU speed, EBC speed).
+
+ Now I spotted this problem a few times, when running my Canyonlands with
+ the following setup (chip_config):
+
+ 1000-nor - NOR CPU:1000 PLB: 200 OPB: 100 EBC: 100
+
+ Changing the EBC configuration to not release the bus into high
+ impedance state inbetween the transfers (ATC, DTC and CTC bits set to 1
+ in EBC0_CFG) seems to fix this problem. I haven't seen any failure
+ anymore with this patch applied.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+ Cc: David Mitchell <dmitchell@amcc.com>
+ Cc: Jeff Mann <MannJ@embeddedplanet.com>
+
+commit 25793f76bf9a7be59c9415ef0f78d034e8d53dae
+Author: Remy Bohmer <linux@bohmer.net>
+Date: Thu Oct 29 12:29:37 2009 +0100
+
+ ARM: Use Linux version for unaligned access code
+
+ The asm-arm/unaligned.h includes linux/unaligned/access_ok.h
+ This file is unsafe to be used on ARM, since it does an unaligned memory
+ accesses which fails on ARM.
+
+ Lookin at Linux the basic difference seems to be the header
+ "include/asm-arm/unaligned.h". The Linux version of "unaligned.h"
+ does *not* include "access_ok.h" at all. It includes "le_byteshift.h"
+ and "be_byteshift.h" instead.
+
+ Signed-off-by: Remy Bohmer <linux@bohmer.net>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+ --
+ include/asm-arm/unaligned.h | 3 -
+ include/linux/unaligned/be_byteshift.h | 70 +++++++++++++++++++++++++++++++++
+ include/linux/unaligned/le_byteshift.h | 70 +++++++++++++++++++++++++++++++++
+ 3 files changed, 142 insertions(+), 1 deletion(-)
+ create mode 100644 include/linux/unaligned/be_byteshift.h
+ create mode 100644 include/linux/unaligned/le_byteshift.h
+
+commit 6d6e7c53d5c75e5e24841c5506f4ed9d82adee09
+Author: Kumar Gala <galak@kernel.crashing.org>
+Date: Wed Nov 4 18:02:10 2009 -0600
+
+ ppc/85xx: Fix inclusion of 83xx immap in 85xx builds
+
+ The nand_boot_fsl_elbc.c is shared between 83xx & 85xx however we should
+ not be including the immap_83xx.h when building 85xx. We can just get
+ this all from common.h
+
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit 107b579c75256212d4bf8b99ee8d68e0078f3646
+Author: Becky Bruce <beckyb@kernel.crashing.org>
+Date: Wed Nov 4 17:34:04 2009 -0600
+
+ 86xx: Remove redundant code in initdram
+
+ The same code exists both inside an #ifdef and outside of it.
+ Remove the extra code for all the 86xx boards.
+
+ Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit 715d8f7608f77c93f1807a032644893fd5b6d08b
+Author: Ed Swarthout <Ed.Swarthout@freescale.com>
+Date: Mon Nov 2 09:05:49 2009 -0600
+
+ fsl_pci_init_port end-point initialization is broken
+
+ commit 70ed869e broke fsl pcie end-point initialization.
+ Returning 0 is not correct. The function must return the first free
+ bus number for the next controller.
+
+ fsl_pci_init() must still be called and a bus allocated even if the
+ controller is an end-point.
+
+ Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
+ Acked-by: Vivek Mahajan <vivek.mahajan@freescale.com>
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit 01471d538fb163f472a769f21267d7676c91267c
+Author: Kumar Gala <galak@kernel.crashing.org>
+Date: Wed Nov 4 01:29:04 2009 -0600
+
+ Revert "ppc/85xx/pci: fsl_pci_init: pcie agent mode support"
+
+ This reverts commit 70ed869ea5f6b1d13d7b140c83ec0dcd8a127ddc.
+
+ There isn't any need to modify the API for fsl_pci_init_port to pass the
+ status of host/agent(end-point) status. We can determine that
+ internally to fsl_pci_init_port. Revert the patch that makes the API
+ change.
+
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit ff88229549e08fdd3f9127c1cc4db11a3576250f
+Author: Dave Liu <daveliu@freescale.com>
+Date: Sat Oct 31 07:59:55 2009 +0800
+
+ ppc/85xx: Fix misc L2 cache enabling bug
+
+ We need loop-check the flash clear lock and enable bit for L2 cache.
+
+ Signed-off-by: Dave Liu <daveliu@freescale.com>
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit 59434fe243962758742af5cb8e2ced976e17c302
+Author: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+Date: Fri Oct 30 10:16:27 2009 +0900
+
+ sh: Update lowlevel_init.S of espt-giga
+
+ There was the point that did not use write macro.
+ Change to write macro.
+
+ Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+
+commit f1cae1969d9e971fb72827a5731ce7e752464aa2
+Author: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+Date: Fri Oct 30 10:01:25 2009 +0900
+
+ sh: Move some defs to convince 'pcrel too far'
+
+ Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+ Signed-off-by: Takashi Yoshii <yoshii.takashi@gmail.com>
+
+commit 0f9eaf4b323ea0ca95944b84c7465b81ba575514
+Author: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+Date: Thu Oct 15 13:36:34 2009 +0900
+
+ sh: Remove malloc_bin_reloc from lib_sh, lib_nios2 and lib_nios.
+
+ By "arm/microblaze/nios/nios2/sh: Remove relocation fixups"
+ (commit: 0630535e2d062dd73c1ceca5c6125c86d1127a49", doesn't need
+ malloc_bin_reloc function. This commit remove this.
+
+ Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+
+commit 0775437293a6963cb21244dfae6978cbf67c6bfe
+Author: Ben Warren <biggerbadderben@gmail.com>
+Date: Wed Oct 21 21:53:39 2009 -0700
+
+ Fix DM9000 MAC address handling
+
+ Proper behavior is to pull MAC address from NVRAM in the initialization() an
+ stuff it in dev->address, then program the device from dev->address in
+ the init() function.
+
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit 98d92d8c9f4021629a45261ad5ec3f3595f3a27a
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed Oct 28 22:07:56 2009 +0100
+
+ sbc8349: fix incorrect comment
+
+ The comment for the BR0_PRELIM port size initialization incorrectly
+ stated 32 bit, while it's actually 16 bit. The code is correct.
+
+ Reported-by: Guenter Koellner <guenter.koellner@nsn.com>
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit a38f85e180a30b6225808828ded1017b1a5418c6
+Author: Sandeep Paulraj <s-paulraj@ti.com>
+Date: Wed Oct 28 11:05:03 2009 -0400
+
+ Fix Compliation warning for TNY-A9260 and TNY-A9G20
+
+ The patch fixes a compilation warning by defining
+ CONFIG_SYS_64BIT_VSPRINTF in the config file
+
+ Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
+
+commit 264e42ee54f1d322805d9068168fd362b413fd09
+Author: Sandeep Paulraj <s-paulraj@ti.com>
+Date: Wed Oct 28 11:04:53 2009 -0400
+
+ Fix Compliation warning for SBC35-A9G20 board
+
+ The patch fixes a compilation warning by defining
+ CONFIG_SYS_64BIT_VSPRINTF in the config file
+
+ Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
+
+commit 353462f6ff9769091fb644d44d8025f20a4192d9
+Author: Eric Millbrandt <emillbrandt@coldhaus.com>
+Date: Wed Oct 28 09:37:33 2009 -0500
+
+ galaxy5200: Add default environment variables
+
+ Extend bootdelay to 10 seconds. Set boot retry time to 120 seconds and use
+ reset to retry. Define default bootcommand and bootargs for production.
+
+ Signed-off-by: Eric Millbrandt <emillbrandt@dekaresearch.com>
+
+commit fa36ae790eb10ce70935f9a78f07703719dca422
+Author: Stefan Roese <sr@denx.de>
+Date: Tue Oct 27 15:15:55 2009 +0100
+
+ cfi: Add weak default function for flash_cmd_reset()
+
+ Currently the CFI driver issues both AMD and Intel reset commands.
+ This is because the driver doesn't know yet which chips are connected.
+ This dual reset seems to cause problems with the M29W128G chips as
+ reported by Richard Retanubun. This patch now introduces a weak default
+ function for the CFI reset command, still with both resets. This can
+ be overridden by a board specific version if necessary.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+ Cc: Richard Retanubun <RichardRetanubun@ruggedcom.com>
+
+commit 4946775c6db52dba28f72ba3525764b54f1d4593
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed Oct 28 00:49:47 2009 +0100
+
+ Coding Style cleanup; update CHANGELOG, prepare -rc1
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
commit 246c69225c7b962d5c93e92282b78ca9fc5fefee
Author: Peter Tyser <ptyser@xes-inc.com>
Date: Sun Oct 25 15:12:56 2009 -0500
@@ -260,6 +1440,15 @@ Date: Tue Oct 27 09:26:55 2009 +0530
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+commit 2c0c58b92dbb68007061bdc0edd23bdf142efebf
+Author: Sergey Mironov <ierton@gmail.com>
+Date: Wed Sep 23 16:47:38 2009 +0400
+
+ Fix bug in jumptable call stubs for SPARC.
+
+ Signed-off-by: Sergey Mironov <ierton@gmail.com>
+ Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
+
commit 3e303f748cf57fb23e8ec95ab7eac0074be50e2b
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date: Thu Oct 15 17:47:04 2009 +0400
diff --git a/MAINTAINERS b/MAINTAINERS
index d70a9d22d..59599b8bc 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -277,7 +277,7 @@ Nye Liu <nyet@zumanetworks.com>
ZUMA MPC7xx_74xx
-Jon Loeliger <jdl@freescale.com>
+Kumar Gala <kumar.gala@freescale.com>
MPC8540ADS MPC8540
MPC8560ADS MPC8560
diff --git a/MAKEALL b/MAKEALL
index d63c5c216..f9caabd8f 100755
--- a/MAKEALL
+++ b/MAKEALL
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Print statistics when we exit
trap exit 1 2 3 15
@@ -39,6 +39,7 @@ LIST=""
ERR_CNT=0
ERR_LIST=""
TOTAL_CNT=0
+RC=0
#########################################################################
## MPC5xx Systems
@@ -936,6 +937,12 @@ build_target() {
${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
| tee ${LOG_DIR}/$target.ERR
+
+ # Check for 'make' errors
+ if [ ${PIPESTATUS[0]} -ne 0 ] ; then
+ RC=1
+ fi
+
if [ -s ${LOG_DIR}/$target.ERR ] ; then
ERR_CNT=$((ERR_CNT + 1))
ERR_LIST="${ERR_LIST} $target"
@@ -959,6 +966,8 @@ print_stats() {
echo "Boards with warnings or errors: ${ERR_CNT} (${ERR_LIST} )"
fi
echo "----------------------------------------------------------"
+
+ exit $RC
}
#-----------------------------------------------------------------------
diff --git a/Makefile b/Makefile
index b105d745e..566665cc0 100755
--- a/Makefile
+++ b/Makefile
@@ -24,7 +24,7 @@
VERSION = 2009
PATCHLEVEL = 11
SUBLEVEL =
-EXTRAVERSION = -rc1
+EXTRAVERSION = -rc2
ifneq "$(SUBLEVEL)" ""
U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
else
@@ -3281,6 +3281,7 @@ zylonite_config :
#########################################################################
apollon_config : unconfig
+ @mkdir -p $(obj)include
@echo "#define CONFIG_ONENAND_U_BOOT" > $(obj)include/config.h
@$(MKCONFIG) $(@:_config=) arm arm1136 apollon NULL omap24xx
@echo "CONFIG_ONENAND_U_BOOT = y" >> $(obj)include/config.mk
diff --git a/README b/README
index 2c776876e..fe6ca98d8 100644
--- a/README
+++ b/README
@@ -1,5 +1,5 @@
#
-# (C) Copyright 2000 - 2008
+# (C) Copyright 2000 - 2009
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this
@@ -138,6 +138,7 @@ U-Boot will always have a patchlevel of "0".
Directory Hierarchy:
====================
+- api Machine/arch independent API for external apps
- board Board dependent files
- common Misc architecture independent functions
- cpu CPU specific files
@@ -178,8 +179,8 @@ Directory Hierarchy:
- disk Code for disk drive partition handling
- doc Documentation (don't expect too much)
- drivers Commonly used device drivers
-- dtt Digital Thermometer and Thermostat drivers
- examples Example code for standalone applications, etc.
+- fs Filesystem code (cramfs, ext2, jffs2, etc.)
- include Header Files
- lib_arm Files generic to ARM architecture
- lib_avr32 Files generic to AVR32 architecture
@@ -187,9 +188,12 @@ Directory Hierarchy:
- lib_generic Files generic to all architectures
- lib_i386 Files generic to i386 architecture
- lib_m68k Files generic to m68k architecture
+- lib_microblaze Files generic to microblaze architecture
- lib_mips Files generic to MIPS architecture
- lib_nios Files generic to NIOS architecture
+- lib_nios2 Files generic to NIOS2 architecture
- lib_ppc Files generic to PowerPC architecture
+- lib_sh Files generic to SH architecture
- lib_sparc Files generic to SPARC architecture
- libfdt Library files to support flattened device trees
- net Networking code
@@ -842,20 +846,20 @@ The following options need to be configured:
Define this to use i/o functions instead of macros
(some hardware wont work with macros)
- CONFIG_DRIVER_SMC911X
+ CONFIG_SMC911X
Support for SMSC's LAN911x and LAN921x chips
- CONFIG_DRIVER_SMC911X_BASE
+ CONFIG_SMC911X_BASE
Define this to hold the physical address
of the device (I/O space)
- CONFIG_DRIVER_SMC911X_32_BIT
+ CONFIG_SMC911X_32_BIT
Define this if data bus is 32 bits
- CONFIG_DRIVER_SMC911X_16_BIT
+ CONFIG_SMC911X_16_BIT
Define this if data bus is 16 bits. If your processor
automatically converts one 32 bit word to two 16 bit
- words you may also try CONFIG_DRIVER_SMC911X_32_BIT.
+ words you may also try CONFIG_SMC911X_32_BIT.
- USB Support:
At the moment only the UHCI host controller is
@@ -1889,25 +1893,6 @@ The following options need to be configured:
example, some LED's) on your board. At the moment,
the following checkpoints are implemented:
-- Automatic software updates via TFTP server
- CONFIG_UPDATE_TFTP
- CONFIG_UPDATE_TFTP_CNT_MAX
- CONFIG_UPDATE_TFTP_MSEC_MAX
-
- These options enable and control the auto-update feature;
- for a more detailed description refer to doc/README.update.
-
-- MTD Support (mtdparts command, UBI support)
- CONFIG_MTD_DEVICE
-
- Adds the MTD device infrastructure from the Linux kernel.
- Needed for mtdparts command support.
-
- CONFIG_MTD_PARTITIONS
-
- Adds the MTD partitioning infrastructure from the Linux
- kernel. Needed for UBI support.
-
Legacy uImage format:
Arg Where When
@@ -2061,6 +2046,25 @@ FIT uImage format:
-150 common/cmd_nand.c Incorrect FIT image format
151 common/cmd_nand.c FIT image format OK
+- Automatic software updates via TFTP server
+ CONFIG_UPDATE_TFTP
+ CONFIG_UPDATE_TFTP_CNT_MAX
+ CONFIG_UPDATE_TFTP_MSEC_MAX
+
+ These options enable and control the auto-update feature;
+ for a more detailed description refer to doc/README.update.
+
+- MTD Support (mtdparts command, UBI support)
+ CONFIG_MTD_DEVICE
+
+ Adds the MTD device infrastructure from the Linux kernel.
+ Needed for mtdparts command support.
+
+ CONFIG_MTD_PARTITIONS
+
+ Adds the MTD partitioning infrastructure from the Linux
+ kernel. Needed for UBI support.
+
Modem Support:
--------------
diff --git a/board/atmel/at91sam9261ek/at91sam9261ek.c b/board/atmel/at91sam9261ek/at91sam9261ek.c
index 2f6b599a6..7ead2b897 100644
--- a/board/atmel/at91sam9261ek/at91sam9261ek.c
+++ b/board/atmel/at91sam9261ek/at91sam9261ek.c
@@ -265,11 +265,12 @@ int board_init(void)
}
#ifdef CONFIG_DRIVER_DM9000
- int board_eth_init(bd_t *bis)
- {
+int board_eth_init(bd_t *bis)
+{
return dm9000_initialize(bis);
- }
- #endif
+}
+#endif
+
int dram_init(void)
{
gd->bd->bi_dram[0].start = PHYS_SDRAM;
diff --git a/board/mucmc52/mucmc52.c b/board/mucmc52/mucmc52.c
index bac49beff..b4ed7357e 100644
--- a/board/mucmc52/mucmc52.c
+++ b/board/mucmc52/mucmc52.c
@@ -31,6 +31,7 @@
*/
#include <common.h>
+#include <fdt_support.h>
#include <mpc5xxx.h>
#include <pci.h>
#include <malloc.h>
@@ -403,5 +404,6 @@ void pci_init_board (void)
void ft_board_setup(void *blob, bd_t *bd)
{
ft_cpu_setup(blob, bd);
+ fdt_fixup_memory(blob, (u64)bd->bi_memstart, (u64)bd->bi_memsize);
}
#endif /* defined(CONFIG_OF_LIBFDT) && defined(CONFIG_OF_BOARD_SETUP) */
diff --git a/board/pandora/pandora.h b/board/pandora/pandora.h
index 5bfa0f9e2..f0ad16b0a 100644
--- a/board/pandora/pandora.h
+++ b/board/pandora/pandora.h
@@ -219,7 +219,8 @@ const omap3_sysinfo sysinfo = {
MUX_VAL(CP(UART2_RX), (IEN | PTD | EN | M4)) /*GPIO_147,*/\
/*UART2_RX*/\
/*Serial Interface (Peripheral boot, Linux console, on AV connector)*/\
- MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTD | DIS | M0)) /*UART3_RX*/\
+ /*RX pulled up to avoid noise when nothing is connected to serial port*/\
+ MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTU | EN | M0)) /*UART3_RX*/\
MUX_VAL(CP(UART3_TX_IRTX), (IDIS | PTD | DIS | M0)) /*UART3_TX*/\
/*LEDs (Controlled by OMAP)*/\
MUX_VAL(CP(MMC1_DAT6), (IDIS | PTD | DIS | M4)) /*GPIO_128*/\
diff --git a/board/uc101/uc101.c b/board/uc101/uc101.c
index 4030b9d0d..1485c0249 100644
--- a/board/uc101/uc101.c
+++ b/board/uc101/uc101.c
@@ -31,6 +31,7 @@
*/
#include <common.h>
+#include <fdt_support.h>
#include <mpc5xxx.h>
#include <pci.h>
#include <malloc.h>
@@ -376,5 +377,6 @@ void hw_watchdog_reset(void)
void ft_board_setup(void *blob, bd_t *bd)
{
ft_cpu_setup(blob, bd);
+ fdt_fixup_memory(blob, (u64)bd->bi_memstart, (u64)bd->bi_memsize);
}
#endif /* defined(CONFIG_OF_LIBFDT) && defined(CONFIG_OF_BOARD_SETUP) */
diff --git a/common/Makefile b/common/Makefile
index 7ba449505..9914bc243 100755
--- a/common/Makefile
+++ b/common/Makefile
@@ -29,7 +29,6 @@ AOBJS =
# core
COBJS-y += main.o
-COBJS-y += circbuf.o
COBJS-y += console.o
COBJS-y += command.o
COBJS-y += dlmalloc.o
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 8f8359856..e16552ec3 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -129,7 +129,7 @@ int do_bootelf (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
static boot_os_fn do_bootm_integrity;
#endif
-boot_os_fn * boot_os[] = {
+static boot_os_fn *boot_os[] = {
#ifdef CONFIG_BOOTM_LINUX
[IH_OS_LINUX] = do_bootm_linux,
#endif
@@ -453,8 +453,8 @@ cmd_tbl_t cmd_bootm_sub[] = {
#ifdef CONFIG_OF_LIBFDT
U_BOOT_CMD_MKENT(fdt, 0, 1, (void *)BOOTM_STATE_FDT, "", ""),
#endif
- U_BOOT_CMD_MKENT(bdt, 0, 1, (void *)BOOTM_STATE_OS_BD_T, "", ""),
U_BOOT_CMD_MKENT(cmdline, 0, 1, (void *)BOOTM_STATE_OS_CMDLINE, "", ""),
+ U_BOOT_CMD_MKENT(bdt, 0, 1, (void *)BOOTM_STATE_OS_BD_T, "", ""),
U_BOOT_CMD_MKENT(prep, 0, 1, (void *)BOOTM_STATE_OS_PREP, "", ""),
U_BOOT_CMD_MKENT(go, 0, 1, (void *)BOOTM_STATE_OS_GO, "", ""),
};
@@ -524,7 +524,7 @@ int do_bootm_subcommand (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
}
break;
#endif
-#ifdef CONFIG_OF_LIBFDT
+#if defined(CONFIG_OF_LIBFDT) && defined(CONFIG_SYS_BOOTMAPSZ)
case BOOTM_STATE_FDT:
{
ulong bootmap_base = getenv_bootm_low();
@@ -1000,8 +1000,8 @@ U_BOOT_CMD(
#if defined(CONFIG_OF_LIBFDT)
"\tfdt - relocate flat device tree\n"
#endif
- "\tbdt - OS specific bd_t processing\n"
"\tcmdline - OS specific command line processing/setup\n"
+ "\tbdt - OS specific bd_t processing\n"
"\tprep - OS specific prep before relocation or go\n"
"\tgo - start OS"
);
diff --git a/common/cmd_cache.c b/common/cmd_cache.c
index 0dfa3363b..120225841 100644
--- a/common/cmd_cache.c
+++ b/common/cmd_cache.c
@@ -27,8 +27,6 @@
#include <common.h>
#include <command.h>
-#if defined(CONFIG_CMD_CACHE)
-
static int on_off (const char *);
int do_icache ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
@@ -108,5 +106,3 @@ U_BOOT_CMD(
"[on, off]\n"
" - enable or disable data (writethrough) cache"
);
-
-#endif
diff --git a/common/cmd_date.c b/common/cmd_date.c
index 9f50f8956..3141a3968 100644
--- a/common/cmd_date.c
+++ b/common/cmd_date.c
@@ -71,9 +71,9 @@ int do_date (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
/* and write to RTC */
rcode = rtc_set (&tm);
if(rcode)
- puts("## Set date failled\n");
+ puts("## Set date failed\n");
} else {
- puts("## Get date failled\n");
+ puts("## Get date failed\n");
}
}
/* FALL TROUGH */
@@ -81,7 +81,7 @@ int do_date (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
rcode = rtc_get (&tm);
if (rcode) {
- puts("## Get date failled\n");
+ puts("## Get date failed\n");
break;
}
diff --git a/common/cmd_i2c.c b/common/cmd_i2c.c
index 8f0fc9e1d..62cbd335e 100644
--- a/common/cmd_i2c.c
+++ b/common/cmd_i2c.c
@@ -315,10 +315,6 @@ int do_i2c_mw ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
/*
* Wait for the write to complete. The write can take
* up to 10mSec (we allow a little more time).
- *
- * On some chips, while the write is in progress, the
- * chip doesn't respond. This apparently isn't a
- * universal feature so we don't take advantage of it.
*/
/*
* No write delay with FRAM devices.
@@ -326,14 +322,6 @@ int do_i2c_mw ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
#if !defined(CONFIG_SYS_I2C_FRAM)
udelay(11000);
#endif
-
-#if 0
- for (timeout = 0; timeout < 10; timeout++) {
- udelay(2000);
- if (i2c_probe(chip) == 0)
- break;
- }
-#endif
}
return (0);
diff --git a/common/cmd_irq.c b/common/cmd_irq.c
index 4604a5a31..2c7e6bbf0 100644
--- a/common/cmd_irq.c
+++ b/common/cmd_irq.c
@@ -47,3 +47,12 @@ U_BOOT_CMD(
"enable or disable interrupts",
"[on, off]"
);
+
+/* Implemented in $(CPU)/interrupts.c */
+int do_irqinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+U_BOOT_CMD(
+ irqinfo, 1, 1, do_irqinfo,
+ "print information about IRQs",
+ ""
+);
diff --git a/common/cmd_license.c b/common/cmd_license.c
index 141215b3a..c6f272ad3 100644
--- a/common/cmd_license.c
+++ b/common/cmd_license.c
@@ -23,8 +23,6 @@
#include <common.h>
-#if defined(CONFIG_CMD_LICENSE)
-
/* COPYING is currently 15951 bytes in size */
#define LICENSE_MAX 20480
@@ -56,5 +54,3 @@ U_BOOT_CMD(license, 1, 1, do_license,
"print GPL license text",
""
);
-
-#endif /* CONFIG_CMD_LICENSE */
diff --git a/common/cmd_mgdisk.c b/common/cmd_mgdisk.c
index aadc33563..3ba62f618 100644
--- a/common/cmd_mgdisk.c
+++ b/common/cmd_mgdisk.c
@@ -24,8 +24,6 @@
#include <common.h>
#include <command.h>
-#if defined (CONFIG_CMD_MG_DISK)
-
#include <mg_disk.h>
int do_mg_disk_cmd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
@@ -72,5 +70,3 @@ U_BOOT_CMD(
" - sector read : mgd readsec [sector] [to] [counts]\n"
" - sector write : mgd writesec [from] [sector] [counts]"
);
-
-#endif
diff --git a/common/cmd_misc.c b/common/cmd_misc.c
index b97537ecd..b0ced2f3b 100644
--- a/common/cmd_misc.c
+++ b/common/cmd_misc.c
@@ -49,17 +49,6 @@ int do_sleep (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
return 0;
}
-/* Implemented in $(CPU)/interrupts.c */
-#if defined(CONFIG_CMD_IRQ)
-int do_irqinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
-
-U_BOOT_CMD(
- irqinfo, 1, 1, do_irqinfo,
- "print information about IRQs",
- ""
-);
-#endif
-
U_BOOT_CMD(
sleep , 2, 1, do_sleep,
"delay execution for some time",
diff --git a/cpu/arm920t/s3c24x0/timer.c b/cpu/arm920t/s3c24x0/timer.c
index 20cedd463..a27f0e273 100644
--- a/cpu/arm920t/s3c24x0/timer.c
+++ b/cpu/arm920t/s3c24x0/timer.c
@@ -205,6 +205,8 @@ void reset_cpu(ulong ignored)
struct s3c24x0_watchdog *watchdog;
#ifdef CONFIG_TRAB
+ extern void disable_vfd(void);
+
disable_vfd();
#endif
diff --git a/cpu/arm_cortexa8/omap3/board.c b/cpu/arm_cortexa8/omap3/board.c
index dd2c94073..2aa69b383 100644
--- a/cpu/arm_cortexa8/omap3/board.c
+++ b/cpu/arm_cortexa8/omap3/board.c
@@ -328,7 +328,7 @@ usage:
U_BOOT_CMD(
nandecc, 2, 1, do_switch_ecc,
- "nandecc - switch OMAP3 NAND ECC calculation algorithm\n",
+ "switch OMAP3 NAND ECC calculation algorithm",
"[hw/sw] - Switch between NAND hardware (hw) or software (sw) ecc algorithm"
);
diff --git a/doc/uImage.FIT/kernel.its b/doc/uImage.FIT/kernel.its
index d1a593911..ef3ab8f72 100644
--- a/doc/uImage.FIT/kernel.its
+++ b/doc/uImage.FIT/kernel.its
@@ -1,6 +1,9 @@
/*
* Simple U-boot uImage source file containing a single kernel
*/
+
+/dts-v1/;
+
/ {
description = "Simple image with single Linux kernel";
#address-cells = <1>;
diff --git a/doc/uImage.FIT/kernel_fdt.its b/doc/uImage.FIT/kernel_fdt.its
index fd6dee257..7e940d2af 100644
--- a/doc/uImage.FIT/kernel_fdt.its
+++ b/doc/uImage.FIT/kernel_fdt.its
@@ -1,6 +1,9 @@
/*
* Simple U-boot uImage source file containing a single kernel and FDT blob
*/
+
+/dts-v1/;
+
/ {
description = "Simple image with single Linux kernel and FDT blob";
#address-cells = <1>;
diff --git a/doc/uImage.FIT/multi.its b/doc/uImage.FIT/multi.its
index 1d8c2dbf9..a120da038 100644
--- a/doc/uImage.FIT/multi.its
+++ b/doc/uImage.FIT/multi.its
@@ -1,6 +1,9 @@
/*
* U-boot uImage source file with multiple kernels, ramdisks and FDT blobs
*/
+
+/dts-v1/;
+
/ {
description = "Various kernels, ramdisks and FDT blobs";
#address-cells = <1>;
diff --git a/doc/uImage.FIT/update3.its b/doc/uImage.FIT/update3.its
index 285cf73b4..a6eaef691 100644
--- a/doc/uImage.FIT/update3.its
+++ b/doc/uImage.FIT/update3.its
@@ -1,6 +1,9 @@
/*
* Example Automatic software update file.
*/
+
+/dts-v1/;
+
/ {
description = "Automatic software updates: kernel, ramdisk, FDT";
#address-cells = <1>;
diff --git a/doc/uImage.FIT/update_uboot.its b/doc/uImage.FIT/update_uboot.its
index e0d27eacc..846723e2d 100644
--- a/doc/uImage.FIT/update_uboot.its
+++ b/doc/uImage.FIT/update_uboot.its
@@ -2,6 +2,9 @@
* Automatic software update for U-Boot
* Make sure the flashing addresses ('load' prop) is correct for your board!
*/
+
+/dts-v1/;
+
/ {
description = "Automatic U-Boot update";
#address-cells = <1>;
diff --git a/drivers/mtd/nand/nand_util.c b/drivers/mtd/nand/nand_util.c
index bec927706..7085d42cc 100644
--- a/drivers/mtd/nand/nand_util.c
+++ b/drivers/mtd/nand/nand_util.c
@@ -452,7 +452,7 @@ static size_t get_len_incl_bad (nand_info_t *nand, loff_t offset,
len_incl_bad += block_len;
offset += block_len;
- if ((offset + len_incl_bad) >= nand->size)
+ if (offset >= nand->size)
break;
}
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index c027abe9f..5d51406f6 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -37,7 +37,7 @@ void pkt_data_push(struct eth_device *dev, u32 addr, u32 val) \
#define mdelay(n) udelay((n)*1000)
-static void smx911x_handle_mac_address(struct eth_device *dev)
+static void smc911x_handle_mac_address(struct eth_device *dev)
{
unsigned long addrh, addrl;
uchar *m = dev->enetaddr;
@@ -155,7 +155,7 @@ static int smc911x_init(struct eth_device *dev, bd_t * bd)
/* Configure the PHY, initialize the link state */
smc911x_phy_configure(dev);
- smx911x_handle_mac_address(dev);
+ smc911x_handle_mac_address(dev);
/* Turn on Tx + Rx */
smc911x_enable(dev);
diff --git a/drivers/rtc/m41t11.c b/drivers/rtc/m41t11.c
index e0c27e185..bb134875b 100644
--- a/drivers/rtc/m41t11.c
+++ b/drivers/rtc/m41t11.c
@@ -181,18 +181,4 @@ void rtc_reset (void)
val = val & 0x3F;/*turn off freq test keep calibration*/
i2c_write(CONFIG_SYS_I2C_RTC_ADDR, RTC_CONTROL_ADDR, 1, &val, 1);
}
-
-int rtc_store(int addr, unsigned char* data, int size)
-{
- /*don't let things wrap onto the time on a write*/
- if( (addr+size) >= M41T11_STORAGE_SZ )
- return 1;
- return i2c_write( CONFIG_SYS_I2C_RTC_ADDR, REG_CNT+addr, 1, data, size );
-}
-
-int rtc_recall(int addr, unsigned char* data, int size)
-{
- return i2c_read( CONFIG_SYS_I2C_RTC_ADDR, REG_CNT+addr, 1, data, size );
-}
-
#endif
diff --git a/drivers/rtc/mc13783-rtc.c b/drivers/rtc/mc13783-rtc.c
index 05db2f1d4..416f50d01 100644
--- a/drivers/rtc/mc13783-rtc.c
+++ b/drivers/rtc/mc13783-rtc.c
@@ -109,7 +109,7 @@ int rtc_set(struct rtc_time *rtc)
spi_release_bus(slave);
- return -1;
+ return 0;
}
void rtc_reset(void)
diff --git a/drivers/spi/atmel_dataflash_spi.c b/drivers/spi/atmel_dataflash_spi.c
index 614965c36..3a648e619 100644
--- a/drivers/spi/atmel_dataflash_spi.c
+++ b/drivers/spi/atmel_dataflash_spi.c
@@ -30,7 +30,8 @@
#include <dataflash.h>
#define AT91_SPI_PCS0_DATAFLASH_CARD 0xE /* Chip Select 0: NPCS0%1110 */
-#define AT91_SPI_PCS1_DATAFLASH_CARD 0xD /* Chip Select 0: NPCS0%1101 */
+#define AT91_SPI_PCS1_DATAFLASH_CARD 0xD /* Chip Select 1: NPCS1%1101 */
+#define AT91_SPI_PCS2_DATAFLASH_CARD 0xB /* Chip Select 2: NPCS2%1011 */
#define AT91_SPI_PCS3_DATAFLASH_CARD 0x7 /* Chip Select 3: NPCS3%0111 */
void AT91F_SpiInit(void)
@@ -57,7 +58,14 @@ void AT91F_SpiInit(void)
((get_mck_clk_rate() / AT91_SPI_CLK) << 8),
AT91_BASE_SPI + AT91_SPI_CSR(1));
#endif
-
+#ifdef CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS2
+ /* Configure CS2 */
+ writel(AT91_SPI_NCPHA |
+ (AT91_SPI_DLYBS & DATAFLASH_TCSS) |
+ (AT91_SPI_DLYBCT & DATAFLASH_TCHS) |
+ ((get_mck_clk_rate() / AT91_SPI_CLK) << 8),
+ AT91_BASE_SPI + AT91_SPI_CSR(2));
+#endif
#ifdef CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS3
/* Configure CS3 */
writel(AT91_SPI_NCPHA |
@@ -99,6 +107,12 @@ void AT91F_SpiEnable(int cs)
writel(mode | ((AT91_SPI_PCS1_DATAFLASH_CARD<<16) & AT91_SPI_PCS),
AT91_BASE_SPI + AT91_SPI_MR);
break;
+ case 2: /* Configure SPI CS2 for Serial DataFlash AT45DBxx */
+ mode = readl(AT91_BASE_SPI + AT91_SPI_MR);
+ mode &= 0xFFF0FFFF;
+ writel(mode | ((AT91_SPI_PCS2_DATAFLASH_CARD<<16) & AT91_SPI_PCS),
+ AT91_BASE_SPI + AT91_SPI_MR);
+ break;
case 3:
mode = readl(AT91_BASE_SPI + AT91_SPI_MR);
mode &= 0xFFF0FFFF;
diff --git a/examples/standalone/Makefile b/examples/standalone/Makefile
index 5e2f2bcae..6ea3b93db 100644
--- a/examples/standalone/Makefile
+++ b/examples/standalone/Makefile
@@ -38,7 +38,13 @@ ELF-mpc8260 += mem_to_mem_idma2intr
ELF-ppc += sched
ELF-oxc += eepro100_eeprom
-ELF := $(ELF-y) $(ELF-$(ARCH)) $(ELF-$(BOARD)) $(ELF-$(CPU))
+#
+# Some versions of make do not handle trailing white spaces properly;
+# leading to build failures. The problem was found with GNU Make 3.80.
+# Using 'strip' as a workaround for the problem.
+#
+ELF := $(strip $(ELF-y) $(ELF-$(ARCH)) $(ELF-$(BOARD)) $(ELF-$(CPU)))
+
SREC = $(addsuffix .srec,$(ELF))
BIN = $(addsuffix .bin,$(ELF))
diff --git a/examples/standalone/nios.lds b/examples/standalone/nios.lds
deleted file mode 100644
index 4c1080b86..000000000
--- a/examples/standalone/nios.lds
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * (C) Copyright 2003, Psyent Corporation <www.psyent.com>
- * Scott McNutt <smcnutt@psyent.com>
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-
-OUTPUT_FORMAT("elf32-nios")
-OUTPUT_ARCH(nios)
-ENTRY(_start)
-
-SECTIONS
-{
- .text :
- {
- *(.text)
- }
- __text_end = .;
-
- . = ALIGN(4);
- .rodata :
- {
- *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
- }
- __rodata_end = .;
-
- . = ALIGN(4);
- .data :
- {
- *(.data)
- }
- . = ALIGN(4);
- __data_end = .;
-
- __bss_start = .;
- . = ALIGN(4);
- .bss (NOLOAD) :
- {
- *(.bss)
- }
- . = ALIGN(4);
- __bss_end = .;
- _end = .;
-}
diff --git a/examples/standalone/nios2.lds b/examples/standalone/nios2.lds
deleted file mode 100644
index a3e5ea8e3..000000000
--- a/examples/standalone/nios2.lds
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * (C) Copyright 2004, Psyent Corporation <www.psyent.com>
- * Scott McNutt <smcnutt@psyent.com>
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-
-OUTPUT_FORMAT("elf32-littlenios2")
-OUTPUT_ARCH(nios2)
-ENTRY(_start)
-
-SECTIONS
-{
- .text :
- {
- *(.text)
- *(.text.*)
- *(.gnu.linkonce.t*)
- *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
- *(.gnu.linkonce.r*)
- }
- . = ALIGN (4);
- _etext = .;
- PROVIDE (etext = .);
-
- /* INIT DATA sections - "Small" data (see the gcc -G option)
- * is always gp-relative. Here we make all init data sections
- * adjacent to simplify the startup code -- and provide
- * the global pointer for gp-relative access.
- */
- _data = .;
- .data :
- {
- *(.data)
- *(.data.*)
- *(.gnu.linkonce.d*)
- }
-
- . = ALIGN(16);
- _gp = .; /* Global pointer addr */
- PROVIDE (gp = .);
-
- .sdata :
- {
- *(.sdata)
- *(.sdata.*)
- *(.gnu.linkonce.s.*)
- }
- . = ALIGN(4);
-
- _edata = .;
- PROVIDE (edata = .);
-
- /* UNINIT DATA - Small uninitialized data is first so it's
- * adjacent to sdata and can be referenced via gp. The normal
- * bss follows. We keep it adjacent to simplify init code.
- */
- __bss_start = .;
- .sbss (NOLOAD) :
- {
- *(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
- *(.scommon)
- }
- . = ALIGN(4);
- .bss (NOLOAD) :
- {
- *(.bss)
- *(.bss.*)
- *(.dynbss)
- *(COMMON)
- *(.scommon)
- }
- . = ALIGN(4);
- _end = .;
- PROVIDE (end = .);
-
- /* CMD TABLE - uboot command sections
- */
- . = .;
- __uboot_cmd_start = .;
- .u_boot_cmd :
- {
- *(.u_boot_cmd)
- }
- . = ALIGN(4);
- __u_boot_cmd_end = .;
-
- /* DEBUG -- symbol table, string table, etc. etc.
- */
- .stab 0 : { *(.stab) }
- .stabstr 0 : { *(.stabstr) }
- .stab.excl 0 : { *(.stab.excl) }
- .stab.exclstr 0 : { *(.stab.exclstr) }
- .stab.index 0 : { *(.stab.index) }
- .stab.indexstr 0 : { *(.stab.indexstr) }
- .comment 0 : { *(.comment) }
- .debug 0 : { *(.debug) }
- .line 0 : { *(.line) }
- .debug_srcinfo 0 : { *(.debug_srcinfo) }
- .debug_sfnames 0 : { *(.debug_sfnames) }
- .debug_aranges 0 : { *(.debug_aranges) }
- .debug_pubnames 0 : { *(.debug_pubnames) }
- .debug_info 0 : { *(.debug_info) }
- .debug_abbrev 0 : { *(.debug_abbrev) }
- .debug_line 0 : { *(.debug_line) }
- .debug_frame 0 : { *(.debug_frame) }
- .debug_str 0 : { *(.debug_str) }
- .debug_loc 0 : { *(.debug_loc) }
- .debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_weaknames 0 : { *(.debug_weaknames) }
- .debug_funcnames 0 : { *(.debug_funcnames) }
- .debug_typenames 0 : { *(.debug_typenames) }
- .debug_varnames 0 : { *(.debug_varnames) }
-}
diff --git a/examples/standalone/smc91111_eeprom.c b/examples/standalone/smc91111_eeprom.c
index 89afc871f..428ea7bd2 100644
--- a/examples/standalone/smc91111_eeprom.c
+++ b/examples/standalone/smc91111_eeprom.c
@@ -33,8 +33,6 @@
struct eth_device { unsigned long iobase; };
#include "../drivers/net/smc91111.h"
-#ifdef CONFIG_SMC91111
-
#ifndef SMC91111_EEPROM_INIT
# define SMC91111_EEPROM_INIT()
#endif
@@ -391,13 +389,3 @@ void dump_reg (struct eth_device *dev)
printf ("\n");
}
}
-
-#else
-
-int smc91111_eeprom (int argc, char *argv[])
-{
- printf("Not supported for this board\n");
- return 1;
-}
-
-#endif
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index a84727546..46d6e9d39 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -70,13 +70,6 @@
#define CONFIG_TSEC_ENET /* tsec ethernet support */
#define CONFIG_ENV_OVERWRITE
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_board_sys_clk(unsigned long dummy);
extern unsigned long get_board_ddr_clk(unsigned long dummy);
diff --git a/include/configs/MPC8541CDS.h b/include/configs/MPC8541CDS.h
index a8f206f53..f41fe300d 100644
--- a/include/configs/MPC8541CDS.h
+++ b/include/configs/MPC8541CDS.h
@@ -46,13 +46,6 @@
#define CONFIG_FSL_VIA
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_clock_freq(void);
#endif
diff --git a/include/configs/MPC8544DS.h b/include/configs/MPC8544DS.h
index 0caf45603..b7d355315 100644
--- a/include/configs/MPC8544DS.h
+++ b/include/configs/MPC8544DS.h
@@ -50,13 +50,6 @@
#define CONFIG_ENV_OVERWRITE
#define CONFIG_INTERRUPTS /* enable pci, srio, ddr interrupts */
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_board_sys_clk(unsigned long dummy);
#endif
diff --git a/include/configs/MPC8548CDS.h b/include/configs/MPC8548CDS.h
index e69ba901e..53de56dbc 100644
--- a/include/configs/MPC8548CDS.h
+++ b/include/configs/MPC8548CDS.h
@@ -52,13 +52,6 @@
#define CONFIG_FSL_VIA
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_clock_freq(void);
#endif
diff --git a/include/configs/MPC8555CDS.h b/include/configs/MPC8555CDS.h
index 94952dc99..abbfd4707 100644
--- a/include/configs/MPC8555CDS.h
+++ b/include/configs/MPC8555CDS.h
@@ -46,13 +46,6 @@
#define CONFIG_FSL_VIA
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_clock_freq(void);
#endif
diff --git a/include/configs/MPC8568MDS.h b/include/configs/MPC8568MDS.h
index 7b8c6c772..426b93378 100644
--- a/include/configs/MPC8568MDS.h
+++ b/include/configs/MPC8568MDS.h
@@ -44,13 +44,6 @@
#define CONFIG_ENV_OVERWRITE
#define CONFIG_FSL_LAW 1 /* Use common FSL init code */
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the MDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_clock_freq(void);
#endif /*Replace a call to get_clock_freq (after it is implemented)*/
diff --git a/include/configs/MPC8569MDS.h b/include/configs/MPC8569MDS.h
index 17ea3bb14..b87f37528 100644
--- a/include/configs/MPC8569MDS.h
+++ b/include/configs/MPC8569MDS.h
@@ -44,13 +44,6 @@
#define CONFIG_ENV_OVERWRITE
#define CONFIG_FSL_LAW 1 /* Use common FSL init code */
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the MDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_clock_freq(void);
#endif
diff --git a/include/configs/MPC8572DS.h b/include/configs/MPC8572DS.h
index 000f8f62d..0e7745c46 100644
--- a/include/configs/MPC8572DS.h
+++ b/include/configs/MPC8572DS.h
@@ -53,13 +53,6 @@
#define CONFIG_TSEC_ENET /* tsec ethernet support */
#define CONFIG_ENV_OVERWRITE
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long get_board_sys_clk(unsigned long dummy);
extern unsigned long get_board_ddr_clk(unsigned long dummy);
diff --git a/include/configs/P2020DS.h b/include/configs/P2020DS.h
index b48c1999f..9574fcaa1 100644
--- a/include/configs/P2020DS.h
+++ b/include/configs/P2020DS.h
@@ -54,13 +54,6 @@
#define CONFIG_TSEC_ENET /* tsec ethernet support */
#define CONFIG_ENV_OVERWRITE
-/*
- * When initializing flash, if we cannot find the manufacturer ID,
- * assume this is the AMD flash associated with the CDS board.
- * This allows booting from a promjet.
- */
-#define CONFIG_ASSUME_AMD_FLASH
-
#ifndef __ASSEMBLY__
extern unsigned long calculate_board_sys_clk(unsigned long dummy);
extern unsigned long calculate_board_ddr_clk(unsigned long dummy);
diff --git a/include/image.h b/include/image.h
index 5a424e6a9..04b62d154 100644
--- a/include/image.h
+++ b/include/image.h
@@ -219,12 +219,10 @@ typedef struct bootm_headers {
const char *fit_uname_rd; /* init ramdisk subimage node unit name */
int fit_noffset_rd; /* init ramdisk subimage node offset */
-#if defined(CONFIG_PPC)
void *fit_hdr_fdt; /* FDT blob FIT image header */
const char *fit_uname_fdt; /* FDT blob subimage node unit name */
int fit_noffset_fdt;/* FDT blob subimage node offset */
#endif
-#endif
#ifndef USE_HOSTCC
image_info_t os; /* os image info */
diff --git a/include/spi_flash.h b/include/spi_flash.h
index de4f174ad..1f8ba2987 100644
--- a/include/spi_flash.h
+++ b/include/spi_flash.h
@@ -24,6 +24,7 @@
#define _SPI_FLASH_H_
#include <spi.h>
+#include <linux/types.h>
struct spi_flash_region {
unsigned int count;
diff --git a/lib_generic/Makefile b/lib_generic/Makefile
index 686601cc1..2ec261af4 100644
--- a/lib_generic/Makefile
+++ b/lib_generic/Makefile
@@ -31,6 +31,7 @@ COBJS-$(CONFIG_BZIP2) += bzlib_crctable.o
COBJS-$(CONFIG_BZIP2) += bzlib_decompress.o
COBJS-$(CONFIG_BZIP2) += bzlib_randtable.o
COBJS-$(CONFIG_BZIP2) += bzlib_huffman.o
+COBJS-$(CONFIG_USB_TTY) += circbuf.o
COBJS-y += crc16.o
COBJS-y += crc32.o
COBJS-y += ctype.o
diff --git a/common/circbuf.c b/lib_generic/circbuf.c
index 2332c6371..2332c6371 100644
--- a/common/circbuf.c
+++ b/lib_generic/circbuf.c
diff --git a/lib_generic/lzma/LzmaTools.c b/lib_generic/lzma/LzmaTools.c
index 408b577f1..8860bfbf3 100644
--- a/lib_generic/lzma/LzmaTools.c
+++ b/lib_generic/lzma/LzmaTools.c
@@ -97,11 +97,14 @@ int lzmaBuffToBuffDecompress (unsigned char *outStream, SizeT *uncompressedSize,
} else if (outSizeHigh != 0 || (UInt32)(SizeT)outSize != outSize) {
/*
* SizeT is a 32 bit uint => We cannot manage files larger than
- * 4GB!
+ * 4GB! Assume however that all 0xf values is "unknown size" and
+ * not actually a file of 2^64 bits.
*
*/
- debug ("LZMA: 64bit support not enabled.\n");
- return SZ_ERROR_DATA;
+ if (outSizeHigh != (SizeT)-1 || outSize != (SizeT)-1) {
+ debug ("LZMA: 64bit support not enabled.\n");
+ return SZ_ERROR_DATA;
+ }
}
debug ("LZMA: Uncompresed size............ 0x%lx\n", outSizeFull);
diff --git a/lib_generic/zlib.c b/lib_generic/zlib.c
index 8fe3bd0dd..ef1fa2280 100644
--- a/lib_generic/zlib.c
+++ b/lib_generic/zlib.c
@@ -28,6 +28,8 @@
#include "u-boot/zlib.h"
#include <common.h>
+#undef OFF /* avoid conflicts */
+
/* To avoid a build time warning */
#ifdef STDC
#include <malloc.h>
diff --git a/lib_nios/config.mk b/lib_nios/config.mk
index d48aa6dfd..e1b9f07bb 100644
--- a/lib_nios/config.mk
+++ b/lib_nios/config.mk
@@ -24,6 +24,6 @@
CROSS_COMPILE ?= nios-elf-
-STANDALONE_LOAD_ADDR = 0x00800000 -L $(gcclibdir)/m32 -T nios.lds
+STANDALONE_LOAD_ADDR = 0x00800000 -L $(gcclibdir)/m32
PLATFORM_CPPFLAGS += -m32 -DCONFIG_NIOS -D__NIOS__ -ffixed-g7 -gstabs
diff --git a/lib_nios2/board.c b/lib_nios2/board.c
index 008f04f95..41d329719 100644
--- a/lib_nios2/board.c
+++ b/lib_nios2/board.c
@@ -83,8 +83,6 @@ void board_init (void)
{
bd_t *bd;
init_fnc_t **init_fnc_ptr;
- char *s, *e;
- int i;
/* Pointer is writable since we allocated a register for it.
* Nios treats CONFIG_SYS_GBL_DATA_OFFSET as an address.
diff --git a/lib_nios2/bootm.c b/lib_nios2/bootm.c
index 53fd5691a..675bfac63 100644
--- a/lib_nios2/bootm.c
+++ b/lib_nios2/bootm.c
@@ -24,6 +24,7 @@
#include <common.h>
#include <command.h>
#include <asm/byteorder.h>
+#include <asm/cache.h>
int do_bootm_linux(int flag, int argc, char *argv[], bootm_headers_t *images)
{
@@ -32,6 +33,10 @@ int do_bootm_linux(int flag, int argc, char *argv[], bootm_headers_t *images)
if ((flag != 0) && (flag != BOOTM_STATE_OS_GO))
return 1;
+ /* flushes data and instruction caches before calling the kernel */
+ flush_dcache (0,CONFIG_SYS_DCACHE_SIZE);
+ flush_icache (0,CONFIG_SYS_ICACHE_SIZE);
+
/* For now we assume the Microtronix linux ... which only
* needs to be called ;-)
*/
diff --git a/lib_nios2/config.mk b/lib_nios2/config.mk
index 34ee6977d..be4063928 100644
--- a/lib_nios2/config.mk
+++ b/lib_nios2/config.mk
@@ -24,7 +24,7 @@
CROSS_COMPILE ?= nios2-elf-
-STANDALONE_LOAD_ADDR = 0x02000000 -L $(gcclibdir) -T nios2.lds
+STANDALONE_LOAD_ADDR = 0x02000000 -L $(gcclibdir)
PLATFORM_CPPFLAGS += -DCONFIG_NIOS2 -D__NIOS2__
PLATFORM_CPPFLAGS += -ffixed-r15 -G0
diff --git a/lib_ppc/Makefile b/lib_ppc/Makefile
index 399b41e31..60a76253b 100644
--- a/lib_ppc/Makefile
+++ b/lib_ppc/Makefile
@@ -35,7 +35,7 @@ COBJS-y += bootm.o
COBJS-y += cache.o
COBJS-y += extable.o
COBJS-y += interrupts.o
-COBJS-y += kgdb.o
+COBJS-$(CONFIG_CMD_KGDB) += kgdb.o
COBJS-y += time.o
SRCS := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c)
diff --git a/lib_ppc/kgdb.c b/lib_ppc/kgdb.c
index 78c2f0c47..d3eb1f35a 100644
--- a/lib_ppc/kgdb.c
+++ b/lib_ppc/kgdb.c
@@ -1,8 +1,5 @@
#include <common.h>
#include <command.h>
-
-#if defined(CONFIG_CMD_KGDB)
-
#include <kgdb.h>
#include <asm/signal.h>
#include <asm/processor.h>
@@ -322,5 +319,3 @@ kgdb_breakpoint(int argc, char *argv[])
breakinst: .long 0x7d821008\n\
");
}
-
-#endif
diff --git a/mkconfig b/mkconfig
index 4c5675bd3..107551079 100755
--- a/mkconfig
+++ b/mkconfig
@@ -27,6 +27,11 @@ done
[ $# -lt 4 ] && exit 1
[ $# -gt 6 ] && exit 1
+if [ "${ARCH}" -a "${ARCH}" != "$2" ]; then
+ echo "Failed: \$ARCH=${ARCH}, should be '$2' for ${BOARD_NAME}" 1>&2
+ exit 1
+fi
+
echo "Configuring for ${BOARD_NAME} board..."
#
diff --git a/net/net.c b/net/net.c
index cab4b2dd8..fd13cd93f 100644
--- a/net/net.c
+++ b/net/net.c
@@ -197,6 +197,8 @@ volatile uchar *NetTxPacket = 0; /* THE transmit packet */
static int net_check_prereq (proto_t protocol);
+static int NetTryCount;
+
/**********************************************************************/
IPaddr_t NetArpWaitPacketIP;
@@ -320,6 +322,7 @@ NetLoop(proto_t protocol)
NetArpWaitReplyIP = 0;
NetArpWaitTxPacket = NULL;
NetTxPacket = NULL;
+ NetTryCount = 1;
if (!NetTxPacket) {
int i;
@@ -558,17 +561,30 @@ startAgainHandler(uchar * pkt, unsigned dest, unsigned src, unsigned len)
void NetStartAgain (void)
{
char *nretry;
- int noretry = 0, once = 0;
+ int retry_forever = 0;
+ unsigned long retrycnt = 0;
+
+ nretry = getenv("netretry");
+ if (nretry) {
+ if (!strcmp(nretry, "yes"))
+ retry_forever = 1;
+ else if (!strcmp(nretry, "no"))
+ retrycnt = 0;
+ else if (!strcmp(nretry, "once"))
+ retrycnt = 1;
+ else
+ retrycnt = simple_strtoul(nretry, NULL, 0);
+ } else
+ retry_forever = 1;
- if ((nretry = getenv ("netretry")) != NULL) {
- noretry = (strcmp (nretry, "no") == 0);
- once = (strcmp (nretry, "once") == 0);
- }
- if (noretry) {
- eth_halt ();
+ if ((!retry_forever) && (NetTryCount >= retrycnt)) {
+ eth_halt();
NetState = NETLOOP_FAIL;
return;
}
+
+ NetTryCount++;
+
#ifndef CONFIG_NET_MULTI
NetSetTimeout (10000UL, startAgainTimeout);
NetSetHandler (startAgainHandler);
@@ -580,7 +596,7 @@ void NetStartAgain (void)
eth_init (gd->bd);
if (NetRestartWrap) {
NetRestartWrap = 0;
- if (NetDevExists && !once) {
+ if (NetDevExists) {
NetSetTimeout (10000UL, startAgainTimeout);
NetSetHandler (startAgainHandler);
} else {
diff --git a/net/nfs.c b/net/nfs.c
index 27395fbf2..4017c3e35 100644
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -516,7 +516,7 @@ nfs_readlink_reply (uchar *pkt, unsigned len)
strcat (nfs_path, "/");
pathlen = strlen(nfs_path);
memcpy (nfs_path+pathlen, (uchar *)&(rpc_pkt.u.reply.data[2]), rlen);
- nfs_path[pathlen+rlen+1] = 0;
+ nfs_path[pathlen + rlen] = 0;
} else {
memcpy (nfs_path, (uchar *)&(rpc_pkt.u.reply.data[2]), rlen);
nfs_path[rlen] = 0;
@@ -571,13 +571,14 @@ Interfaces of U-BOOT
static void
NfsTimeout (void)
{
- if ( NfsTimeoutCount++ < NFS_RETRY_COUNT ) {
+ if ( ++NfsTimeoutCount > NFS_RETRY_COUNT ) {
+ puts ("\nRetry count exceeded; starting again\n");
+ NetStartAgain ();
+ } else {
+ puts("T ");
+ NetSetTimeout (NFS_TIMEOUT, NfsTimeout);
NfsSend ();
- return;
}
- puts ("Timeout\n");
- NetState = NETLOOP_FAIL;
- return;
}
static void
diff --git a/tools/.gitignore b/tools/.gitignore
index 03f54ef12..cb067a407 100644
--- a/tools/.gitignore
+++ b/tools/.gitignore
@@ -8,3 +8,4 @@
/ncp
/ubsha1
/inca-swap-bytes
+/*.exe
diff --git a/tools/fit_image.c b/tools/fit_image.c
index d1e612fec..ef9ffeeec 100644
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
@@ -155,38 +155,6 @@ static int fit_handle_file (struct mkimage_params *params)
return (EXIT_SUCCESS);
}
-static void fit_set_header (void *ptr, struct stat *sbuf, int ifd,
- struct mkimage_params *params)
-{
- uint32_t checksum;
-
- image_header_t * hdr = (image_header_t *)ptr;
-
- checksum = crc32 (0,
- (const unsigned char *)(ptr +
- sizeof(image_header_t)),
- sbuf->st_size - sizeof(image_header_t));
-
- /* Build new header */
- image_set_magic (hdr, IH_MAGIC);
- image_set_time (hdr, sbuf->st_mtime);
- image_set_size (hdr, sbuf->st_size - sizeof(image_header_t));
- image_set_load (hdr, params->addr);
- image_set_ep (hdr, params->ep);
- image_set_dcrc (hdr, checksum);
- image_set_os (hdr, params->os);
- image_set_arch (hdr, params->arch);
- image_set_type (hdr, params->type);
- image_set_comp (hdr, params->comp);
-
- image_set_name (hdr, params->imagename);
-
- checksum = crc32 (0, (const unsigned char *)hdr,
- sizeof(image_header_t));
-
- image_set_hcrc (hdr, checksum);
-}
-
static int fit_check_params (struct mkimage_params *params)
{
return ((params->dflag && (params->fflag || params->lflag)) ||
@@ -202,7 +170,7 @@ static struct image_type_params fitimage_params = {
.print_header = fit_print_contents,
.check_image_type = fit_check_image_types,
.fflag_handle = fit_handle_file,
- .set_header = fit_set_header,
+ .set_header = NULL, /* FIT images use DTB header */
.check_params = fit_check_params,
};
diff --git a/tools/img2srec.c b/tools/img2srec.c
index f10379fe4..ec7696402 100644
--- a/tools/img2srec.c
+++ b/tools/img2srec.c
@@ -53,6 +53,7 @@
|*************************************************************************/
#include "os_support.h"
+#include <stdbool.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
@@ -63,63 +64,22 @@
#include <errno.h>
/*************************************************************************
-| DEFINES
-|*************************************************************************/
-
-#define FALSE 0
-#define TRUE 1
-
-/*************************************************************************
-| MACROS
-|*************************************************************************/
-
-/*************************************************************************
-| TYPEDEFS
-|*************************************************************************/
-
-typedef uint8_t CHAR;
-typedef uint8_t BYTE;
-typedef uint16_t WORD;
-typedef uint32_t DWORD;
-typedef int BOOL;
-
-/*************************************************************************
-| LOCALS
-|*************************************************************************/
-
-/*************************************************************************
-| PROTOTYPES
-|*************************************************************************/
-
-static char *ExtractHex(DWORD *value, char *getPtr);
-static char *ExtractDecimal(DWORD *value, char *getPtr);
-static void ExtractNumber(DWORD *value, char *getPtr);
-static BYTE *ExtractWord(WORD *value, BYTE *buffer);
-static BYTE *ExtractLong(DWORD *value, BYTE *buffer);
-static BYTE *ExtractBlock(WORD count, BYTE *data, BYTE *buffer);
-static char *WriteHex(char *pa, BYTE value, WORD *pCheckSum);
-static char *BuildSRecord(char *pa, WORD sType, DWORD addr,
- const BYTE *data, int nCount);
-static void ConvertELF(char *fileName, DWORD loadOffset);
-int main(int argc, char *argv[]);
-
-/*************************************************************************
| FUNCTIONS
|*************************************************************************/
-static char* ExtractHex (DWORD* value, char* getPtr)
+static char* ExtractHex (uint32_t* value, char* getPtr)
{
- DWORD num;
- DWORD digit;
- BYTE c;
+ uint32_t num;
+ uint32_t digit;
+ uint8_t c;
while (*getPtr == ' ') getPtr++;
num = 0;
for (;;) {
c = *getPtr;
- if ((c >= '0') && (c <= '9')) digit = (DWORD)(c - '0');
- else if ((c >= 'A') && (c <= 'F')) digit = (DWORD)(c - 'A' + 10);
- else if ((c >= 'a') && (c <= 'f')) digit = (DWORD)(c - 'a' + 10);
+ if ((c >= '0') && (c <= '9')) digit = (uint32_t)(c - '0');
+ else if ((c >= 'A') && (c <= 'F')) digit = (uint32_t)(c - 'A' + 10);
+ else if ((c >= 'a') && (c <= 'f')) digit = (uint32_t)(c - 'a' + 10);
else break;
num <<= 4;
num += digit;
@@ -129,17 +89,17 @@ static char* ExtractHex (DWORD* value, char* getPtr)
return getPtr;
} /* ExtractHex */
-static char* ExtractDecimal (DWORD* value, char* getPtr)
+static char* ExtractDecimal (uint32_t* value, char* getPtr)
{
- DWORD num;
- DWORD digit;
- BYTE c;
+ uint32_t num;
+ uint32_t digit;
+ uint8_t c;
while (*getPtr == ' ') getPtr++;
num = 0;
for (;;) {
c = *getPtr;
- if ((c >= '0') && (c <= '9')) digit = (DWORD)(c - '0');
+ if ((c >= '0') && (c <= '9')) digit = (uint32_t)(c - '0');
else break;
num *= 10;
num += digit;
@@ -150,13 +110,13 @@ static char* ExtractDecimal (DWORD* value, char* getPtr)
} /* ExtractDecimal */
-static void ExtractNumber (DWORD* value, char* getPtr)
+static void ExtractNumber (uint32_t* value, char* getPtr)
{
- BOOL neg = FALSE;;
+ bool neg = false;;
while (*getPtr == ' ') getPtr++;
if (*getPtr == '-') {
- neg = TRUE;
+ neg = true;
getPtr++;
} /* if */
if ((*getPtr == '0') && ((*(getPtr+1) == 'x') || (*(getPtr+1) == 'X'))) {
@@ -170,38 +130,38 @@ static void ExtractNumber (DWORD* value, char* getPtr)
} /* ExtractNumber */
-static BYTE* ExtractWord(WORD* value, BYTE* buffer)
+static uint8_t* ExtractWord(uint16_t* value, uint8_t* buffer)
{
- WORD x;
- x = (WORD)*buffer++;
- x = (x<<8) + (WORD)*buffer++;
+ uint16_t x;
+ x = (uint16_t)*buffer++;
+ x = (x<<8) + (uint16_t)*buffer++;
*value = x;
return buffer;
} /* ExtractWord */
-static BYTE* ExtractLong(DWORD* value, BYTE* buffer)
+static uint8_t* ExtractLong(uint32_t* value, uint8_t* buffer)
{
- DWORD x;
- x = (DWORD)*buffer++;
- x = (x<<8) + (DWORD)*buffer++;
- x = (x<<8) + (DWORD)*buffer++;
- x = (x<<8) + (DWORD)*buffer++;
+ uint32_t x;
+ x = (uint32_t)*buffer++;
+ x = (x<<8) + (uint32_t)*buffer++;
+ x = (x<<8) + (uint32_t)*buffer++;
+ x = (x<<8) + (uint32_t)*buffer++;
*value = x;
return buffer;
} /* ExtractLong */
-static BYTE* ExtractBlock(WORD count, BYTE* data, BYTE* buffer)
+static uint8_t* ExtractBlock(uint16_t count, uint8_t* data, uint8_t* buffer)
{
while (count--) *data++ = *buffer++;
return buffer;
} /* ExtractBlock */
-static char* WriteHex(char* pa, BYTE value, WORD* pCheckSum)
+static char* WriteHex(char* pa, uint8_t value, uint16_t* pCheckSum)
{
- WORD temp;
+ uint16_t temp;
static char ByteToHex[] = "0123456789ABCDEF";
@@ -214,13 +174,13 @@ static char* WriteHex(char* pa, BYTE value, WORD* pCheckSum)
}
-static char* BuildSRecord(char* pa, WORD sType, DWORD addr,
- const BYTE* data, int nCount)
+static char* BuildSRecord(char* pa, uint16_t sType, uint32_t addr,
+ const uint8_t* data, int nCount)
{
- WORD addrLen;
- WORD sRLen;
- WORD checkSum;
- WORD i;
+ uint16_t addrLen;
+ uint16_t sRLen;
+ uint16_t checkSum;
+ uint16_t i;
switch (sType) {
case 0:
@@ -244,11 +204,11 @@ static char* BuildSRecord(char* pa, WORD sType, DWORD addr,
*pa++ = (char)(sType + '0');
sRLen = addrLen + nCount + 1;
checkSum = 0;
- pa = WriteHex(pa, (BYTE)sRLen, &checkSum);
+ pa = WriteHex(pa, (uint8_t)sRLen, &checkSum);
/* Write address field */
for (i = 1; i <= addrLen; i++) {
- pa = WriteHex(pa, (BYTE)(addr >> (8 * (addrLen - i))), &checkSum);
+ pa = WriteHex(pa, (uint8_t)(addr >> (8 * (addrLen - i))), &checkSum);
} /* for */
/* Write code/data fields */
@@ -258,25 +218,25 @@ static char* BuildSRecord(char* pa, WORD sType, DWORD addr,
/* Write checksum field */
checkSum = ~checkSum;
- pa = WriteHex(pa, (BYTE)checkSum, &checkSum);
+ pa = WriteHex(pa, (uint8_t)checkSum, &checkSum);
*pa++ = '\0';
return pa;
}
-static void ConvertELF(char* fileName, DWORD loadOffset)
+static void ConvertELF(char* fileName, uint32_t loadOffset)
{
FILE* file;
int i;
int rxCount;
- BYTE rxBlock[1024];
- DWORD loadSize;
- DWORD firstAddr;
- DWORD loadAddr;
- DWORD loadDiff = 0;
+ uint8_t rxBlock[1024];
+ uint32_t loadSize;
+ uint32_t firstAddr;
+ uint32_t loadAddr;
+ uint32_t loadDiff = 0;
Elf32_Ehdr elfHeader;
Elf32_Shdr sectHeader[32];
- BYTE* getPtr;
+ uint8_t* getPtr;
char srecLine[128];
char *hdr_name;
@@ -292,11 +252,11 @@ static void ConvertELF(char* fileName, DWORD loadOffset)
getPtr = ExtractBlock(sizeof elfHeader.e_ident, elfHeader.e_ident, rxBlock);
getPtr = ExtractWord(&elfHeader.e_type, getPtr);
getPtr = ExtractWord(&elfHeader.e_machine, getPtr);
- getPtr = ExtractLong((DWORD *)&elfHeader.e_version, getPtr);
- getPtr = ExtractLong((DWORD *)&elfHeader.e_entry, getPtr);
- getPtr = ExtractLong((DWORD *)&elfHeader.e_phoff, getPtr);
- getPtr = ExtractLong((DWORD *)&elfHeader.e_shoff, getPtr);
- getPtr = ExtractLong((DWORD *)&elfHeader.e_flags, getPtr);
+ getPtr = ExtractLong((uint32_t *)&elfHeader.e_version, getPtr);
+ getPtr = ExtractLong((uint32_t *)&elfHeader.e_entry, getPtr);
+ getPtr = ExtractLong((uint32_t *)&elfHeader.e_phoff, getPtr);
+ getPtr = ExtractLong((uint32_t *)&elfHeader.e_shoff, getPtr);
+ getPtr = ExtractLong((uint32_t *)&elfHeader.e_flags, getPtr);
getPtr = ExtractWord(&elfHeader.e_ehsize, getPtr);
getPtr = ExtractWord(&elfHeader.e_phentsize, getPtr);
getPtr = ExtractWord(&elfHeader.e_phnum, getPtr);
@@ -319,16 +279,16 @@ static void ConvertELF(char* fileName, DWORD loadOffset)
fseek(file, elfHeader.e_shoff, SEEK_SET);
for (i = 0; i < elfHeader.e_shnum; i++) {
rxCount = fread(rxBlock, 1, sizeof sectHeader[0], file);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_name, rxBlock);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_type, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_flags, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_addr, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_offset, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_size, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_link, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_info, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_addralign, getPtr);
- getPtr = ExtractLong((DWORD *)&sectHeader[i].sh_entsize, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_name, rxBlock);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_type, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_flags, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_addr, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_offset, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_size, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_link, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_info, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_addralign, getPtr);
+ getPtr = ExtractLong((uint32_t *)&sectHeader[i].sh_entsize, getPtr);
if (rxCount != sizeof sectHeader[0]) {
fclose(file);
fprintf (stderr, "*** illegal file format\n");
@@ -342,7 +302,7 @@ static void ConvertELF(char* fileName, DWORD loadOffset)
++hdr_name;
}
/* write start record */
- (void)BuildSRecord(srecLine, 0, 0, (BYTE *)hdr_name, strlen(hdr_name));
+ (void)BuildSRecord(srecLine, 0, 0, (uint8_t *)hdr_name, strlen(hdr_name));
printf("%s\r\n",srecLine);
/* write data records */
@@ -395,7 +355,7 @@ static void ConvertELF(char* fileName, DWORD loadOffset)
int main( int argc, char *argv[ ])
{
- DWORD offset;
+ uint32_t offset;
if (argc == 2) {
ConvertELF(argv[1], 0);
diff --git a/tools/mingw_support.c b/tools/mingw_support.c
index 67cd6e115..63797108b 100644
--- a/tools/mingw_support.c
+++ b/tools/mingw_support.c
@@ -24,7 +24,9 @@
#include "mingw_support.h"
#include <stdio.h>
#include <stdint.h>
+#include <string.h>
#include <errno.h>
+#include <assert.h>
#include <io.h>
int fsync(int fd)
@@ -77,3 +79,158 @@ int munmap(void *addr, size_t len)
return 0;
}
+
+/* Reentrant string tokenizer. Generic version.
+ Copyright (C) 1991,1996-1999,2001,2004,2007 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation,
+ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
+
+/* Parse S into tokens separated by characters in DELIM.
+ If S is NULL, the saved pointer in SAVE_PTR is used as
+ the next starting point. For example:
+ char s[] = "-abc-=-def";
+ char *sp;
+ x = strtok_r(s, "-", &sp); // x = "abc", sp = "=-def"
+ x = strtok_r(NULL, "-=", &sp); // x = "def", sp = NULL
+ x = strtok_r(NULL, "=", &sp); // x = NULL
+ // s = "abc\0-def\0"
+*/
+char *strtok_r(char *s, const char *delim, char **save_ptr)
+{
+ char *token;
+
+ if (s == NULL)
+ s = *save_ptr;
+
+ /* Scan leading delimiters. */
+ s += strspn(s, delim);
+ if (*s == '\0') {
+ *save_ptr = s;
+ return NULL;
+ }
+
+ /* Find the end of the token. */
+ token = s;
+ s = strpbrk (token, delim);
+ if (s == NULL) {
+ /* This token finishes the string. */
+ *save_ptr = memchr(token, '\0', strlen(token));
+ } else {
+ /* Terminate the token and make *SAVE_PTR point past it. */
+ *s = '\0';
+ *save_ptr = s + 1;
+ }
+ return token;
+}
+
+/* getline.c -- Replacement for GNU C library function getline
+
+Copyright (C) 1993, 1996, 2001, 2002 Free Software Foundation, Inc.
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License as
+published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* Written by Jan Brittenson, bson@gnu.ai.mit.edu. */
+
+/* Always add at least this many bytes when extending the buffer. */
+#define MIN_CHUNK 64
+
+/* Read up to (and including) a TERMINATOR from STREAM into *LINEPTR
+ + OFFSET (and null-terminate it). *LINEPTR is a pointer returned from
+ malloc (or NULL), pointing to *N characters of space. It is realloc'd
+ as necessary. Return the number of characters read (not including the
+ null terminator), or -1 on error or EOF.
+ NOTE: There is another getstr() function declared in <curses.h>. */
+static int getstr(char **lineptr, size_t *n, FILE *stream,
+ char terminator, size_t offset)
+{
+ int nchars_avail; /* Allocated but unused chars in *LINEPTR. */
+ char *read_pos; /* Where we're reading into *LINEPTR. */
+ int ret;
+
+ if (!lineptr || !n || !stream)
+ return -1;
+
+ if (!*lineptr) {
+ *n = MIN_CHUNK;
+ *lineptr = malloc(*n);
+ if (!*lineptr)
+ return -1;
+ }
+
+ nchars_avail = *n - offset;
+ read_pos = *lineptr + offset;
+
+ for (;;) {
+ register int c = getc(stream);
+
+ /* We always want at least one char left in the buffer, since we
+ always (unless we get an error while reading the first char)
+ NUL-terminate the line buffer. */
+
+ assert(*n - nchars_avail == read_pos - *lineptr);
+ if (nchars_avail < 2) {
+ if (*n > MIN_CHUNK)
+ *n *= 2;
+ else
+ *n += MIN_CHUNK;
+
+ nchars_avail = *n + *lineptr - read_pos;
+ *lineptr = realloc(*lineptr, *n);
+ if (!*lineptr)
+ return -1;
+ read_pos = *n - nchars_avail + *lineptr;
+ assert(*n - nchars_avail == read_pos - *lineptr);
+ }
+
+ if (c == EOF || ferror (stream)) {
+ /* Return partial line, if any. */
+ if (read_pos == *lineptr)
+ return -1;
+ else
+ break;
+ }
+
+ *read_pos++ = c;
+ nchars_avail--;
+
+ if (c == terminator)
+ /* Return the line. */
+ break;
+ }
+
+ /* Done - NUL terminate and return the number of chars read. */
+ *read_pos = '\0';
+
+ ret = read_pos - (*lineptr + offset);
+ return ret;
+}
+
+int getline (char **lineptr, size_t *n, FILE *stream)
+{
+ return getstr(lineptr, n, stream, '\n', 0);
+}
diff --git a/tools/mingw_support.h b/tools/mingw_support.h
index 9e45e6491..27936746b 100644
--- a/tools/mingw_support.h
+++ b/tools/mingw_support.h
@@ -44,5 +44,7 @@ typedef ULONG ulong;
int fsync(int fd);
void *mmap(void *, size_t, int, int, int, int);
int munmap(void *, size_t);
+char *strtok_r(char *s, const char *delim, char **save_ptr);
+int getline(char **lineptr, size_t *n, FILE *stream);
#endif /* __MINGW_SUPPORT_H_ */
diff --git a/tools/mkimage.c b/tools/mkimage.c
index ab6ea32ad..1bed93360 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -229,6 +229,11 @@ main (int argc, char **argv)
case 'f':
if (--argc <= 0)
usage ();
+ /*
+ * The flattened image tree (FIT) format
+ * requires a flattened device tree image type
+ */
+ params.type = IH_TYPE_FLATDT;
params.datafile = *++argv;
params.fflag = 1;
goto NXTARG;
@@ -292,23 +297,35 @@ NXTARG: ;
params.imagefile = *argv;
- if (!params.fflag){
- if (params.lflag) {
- ifd = open (params.imagefile, O_RDONLY|O_BINARY);
- } else {
- ifd = open (params.imagefile,
- O_RDWR|O_CREAT|O_TRUNC|O_BINARY, 0666);
- }
+ if (params.fflag){
+ if (tparams->fflag_handle)
+ /*
+ * in some cases, some additional processing needs
+ * to be done if fflag is defined
+ *
+ * For ex. fit_handle_file for Fit file support
+ */
+ retval = tparams->fflag_handle(&params);
- if (ifd < 0) {
- fprintf (stderr, "%s: Can't open %s: %s\n",
- params.cmdname, params.imagefile,
- strerror(errno));
- exit (EXIT_FAILURE);
- }
+ if (retval != EXIT_SUCCESS)
+ exit (retval);
+ }
+
+ if (params.lflag || params.fflag) {
+ ifd = open (params.imagefile, O_RDONLY|O_BINARY);
+ } else {
+ ifd = open (params.imagefile,
+ O_RDWR|O_CREAT|O_TRUNC|O_BINARY, 0666);
+ }
+
+ if (ifd < 0) {
+ fprintf (stderr, "%s: Can't open %s: %s\n",
+ params.cmdname, params.imagefile,
+ strerror(errno));
+ exit (EXIT_FAILURE);
}
- if (params.lflag) {
+ if (params.lflag || params.fflag) {
/*
* list header information of existing image
*/
@@ -346,17 +363,6 @@ NXTARG: ;
(void) close (ifd);
exit (retval);
- } else if (params.fflag) {
- if (tparams->fflag_handle)
- /*
- * in some cases, some additional processing needs
- * to be done if fflag is defined
- *
- * For ex. fit_handle_file for Fit file support
- */
- retval = tparams->fflag_handle(&params);
-
- exit (retval);
}
/*