summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG744
-rw-r--r--MAINTAINERS2
-rwxr-xr-xMAKEALL1
-rw-r--r--Makefile16
-rw-r--r--README1
-rw-r--r--api/api.c4
-rw-r--r--board/BuS/EB+MCF-EV123/config.mk2
-rw-r--r--board/amcc/canyonlands/canyonlands.c31
-rw-r--r--board/amcc/canyonlands/config.mk10
-rw-r--r--board/amcc/kilauea/kilauea.c19
-rw-r--r--board/atmel/at91cap9adk/Makefile2
-rw-r--r--board/atmel/at91cap9adk/at91cap9adk.c4
-rw-r--r--board/atmel/at91cap9adk/led.c2
-rw-r--r--board/atmel/at91cap9adk/nand.c2
-rw-r--r--board/atmel/at91cap9adk/partition.c2
-rw-r--r--board/atmel/at91cap9adk/u-boot.lds2
-rw-r--r--board/atmel/at91rm9200dk/partition.c2
-rw-r--r--board/atmel/at91sam9260ek/Makefile2
-rw-r--r--board/atmel/at91sam9260ek/at91sam9260ek.c4
-rw-r--r--board/atmel/at91sam9260ek/led.c2
-rw-r--r--board/atmel/at91sam9260ek/nand.c2
-rw-r--r--board/atmel/at91sam9260ek/partition.c2
-rw-r--r--board/atmel/at91sam9260ek/u-boot.lds2
-rw-r--r--board/esd/mecp5200/config.mk2
-rw-r--r--board/freescale/mpc8548cds/mpc8548cds.c7
-rw-r--r--board/linkstation/Makefile15
-rw-r--r--board/linkstation/config.mk2
-rw-r--r--board/munices/config.mk2
-rw-r--r--board/mx31ads/lowlevel_init.S2
-rw-r--r--board/qemu-mips/README6
-rw-r--r--board/qemu-mips/qemu-mips.c2
-rw-r--r--board/sc520_cdp/sc520_cdp_asm.S4
-rw-r--r--board/sc520_spunk/Makefile2
-rw-r--r--board/sc520_spunk/flash.c30
-rw-r--r--board/sc520_spunk/sc520_spunk_asm.S4
-rw-r--r--board/tqm8272/Makefile23
-rw-r--r--board/v38b/config.mk2
-rw-r--r--common/cmd_bootm.c11
-rw-r--r--common/cmd_ide.c4
-rw-r--r--common/cmd_nvedit.c10
-rw-r--r--common/env_common.c19
-rw-r--r--common/env_eeprom.c3
-rw-r--r--common/env_nvram.c2
-rw-r--r--common/ft_build.c1
-rw-r--r--common/image.c18
-rw-r--r--common/main.c33
-rw-r--r--common/usb.c2
-rw-r--r--cpu/74xx_7xx/cache.S21
-rw-r--r--cpu/arm1136/mx31/generic.c4
-rw-r--r--cpu/arm920t/s3c24x0/usb.c2
-rw-r--r--cpu/arm926ejs/at91sam9/Makefile2
-rw-r--r--cpu/arm926ejs/at91sam9/ether.c2
-rw-r--r--cpu/arm926ejs/at91sam9/lowlevel_init.S2
-rw-r--r--cpu/arm926ejs/at91sam9/timer.c2
-rw-r--r--cpu/arm926ejs/at91sam9/usb.c2
-rw-r--r--cpu/i386/start.S20
-rw-r--r--cpu/mips/cache.S6
-rw-r--r--cpu/mpc86xx/cache.S2
-rw-r--r--cpu/ppc4xx/cpu.c20
-rw-r--r--disk/part.c92
-rw-r--r--doc/README.nand-boot-ppc4402
-rw-r--r--drivers/net/smc911x.c2
-rw-r--r--drivers/pci/pci.c21
-rw-r--r--drivers/pcmcia/Makefile1
-rw-r--r--drivers/pcmcia/i82365.c4
-rw-r--r--examples/.gitignore4
-rw-r--r--include/.gitignore4
-rw-r--r--include/asm-arm/arch-at91sam9/at91_pio.h2
-rw-r--r--include/asm-arm/arch-at91sam9/at91_pit.h5
-rw-r--r--include/asm-arm/arch-at91sam9/at91_pmc.h2
-rw-r--r--include/asm-arm/arch-at91sam9/at91_rstc.h5
-rw-r--r--include/asm-arm/arch-at91sam9/at91_spi.h2
-rw-r--r--include/asm-arm/arch-at91sam9/at91cap9.h2
-rw-r--r--include/asm-arm/arch-at91sam9/at91cap9_matrix.h2
-rw-r--r--include/asm-arm/arch-at91sam9/at91sam9260.h2
-rw-r--r--include/asm-arm/arch-at91sam9/at91sam9260_matrix.h4
-rw-r--r--include/asm-arm/arch-at91sam9/at91sam926x_mc.h140
-rw-r--r--include/asm-arm/arch-at91sam9/at91sam9_smc.h76
-rw-r--r--include/asm-arm/arch-at91sam9/clk.h2
-rw-r--r--include/asm-arm/arch-at91sam9/gpio.h2
-rw-r--r--include/asm-arm/arch-at91sam9/hardware.h2
-rw-r--r--include/asm-arm/arch-at91sam9/io.h2
-rw-r--r--include/asm-arm/arch-at91sam9/memory-map.h2
-rw-r--r--include/asm-arm/arch-mx31/mx31.h6
-rw-r--r--include/asm-arm/dma-mapping.h2
-rw-r--r--include/asm-ppc/io.h2
-rw-r--r--include/asm-ppc/processor.h12
-rw-r--r--include/common.h1
-rw-r--r--include/configs/MPC8313ERDB.h14
-rw-r--r--include/configs/MPC8349EMDS.h10
-rw-r--r--include/configs/at91cap9adk.h2
-rw-r--r--include/configs/at91sam9260ek.h2
-rw-r--r--include/configs/kilauea.h1
-rw-r--r--include/configs/makalu.h29
-rw-r--r--include/configs/ml401.h21
-rw-r--r--include/configs/mx31ads.h4
-rw-r--r--include/configs/xupv2p.h21
-rw-r--r--include/environment.h10
-rw-r--r--include/pci.h10
-rw-r--r--include/version.h2
-rw-r--r--lib_generic/crc32.c2
-rw-r--r--lib_i386/bootm.c1
-rw-r--r--lib_ppc/board.c11
-rw-r--r--lib_ppc/bootm.c5
-rw-r--r--nand_spl/board/amcc/canyonlands/Makefile8
-rw-r--r--post/cpu/ppc4xx/Makefile8
-rw-r--r--tools/env/Makefile2
-rw-r--r--tools/env/fw_env.c21
-rw-r--r--tools/env/fw_env.h4
-rw-r--r--tools/env/fw_env_main.c25
110 files changed, 1289 insertions, 480 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 5d21db1b2d..ce36c37c12 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,747 @@
+commit 16bedc661de0dae767b1377d8413373a3fbcfa79
+Author: Stefan Roese <sr@denx.de>
+Date: Mon May 19 07:14:38 2008 +0200
+
+ ppc4xx: Canyonlands: Disable PCIe0/SATA in dev-tree depending on selection
+
+ When SATA is selected (via jumper J6) we need to disable the first PCIe
+ node in the device tree, so that Linux doesn't initialize it. Otherwise
+ the Linux SATA driver will fail to detect the devices.
+
+ The same goes the other way around too. So if PCIe is selected we need
+ to disable the SATA node in the device tree.
+
+ This is because PCIe port 0 and SATA on 460EX share the same pins
+ (multiplexed) and we have to configure in U-Boot which peripheral is
+ enabled.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 3cc27b426aeefe2930f911692e9df3143fb2565f
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 18 19:09:58 2008 +0200
+
+ i386: Fix multiple definitions of __show_boot_progress
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit 311f3446930c1e64c12026c1cfd00500b05be52d
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 18 19:09:57 2008 +0200
+
+ sc530_spunk: add missing SOBJS entry
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit a559317143b4f95927b08cd388707e6f077e95fa
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 18 19:09:56 2008 +0200
+
+ sc520_spunk: Fix flash
+
+ flash.c:593: warning: dereferencing type-punned pointer will break strict-aliasing rules
+ flash.c:398: error: label at end of compound statement
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit 91f221317af64191ee8caf303ea9305943158691
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 18 19:09:49 2008 +0200
+
+ drivers/pcmcia: add missing i82365
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit dd223944132f97ffa52977ea95e5a52428f5cc2f
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 18 19:09:47 2008 +0200
+
+ i386/bootm: remove unused var
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit a9da341df19b32ad2ecb58ce529f7e4fada7814e
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 18 19:09:45 2008 +0200
+
+ example/gitignore: update with all generated examples
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit a38dc3ea8614f8b0c41e432b445a9959b9711295
+Author: Wolfgang Denk <wd@denx.de>
+Date: Thu May 15 00:42:45 2008 +0200
+
+ TQM8272: fix out-of-tree building
+
+ ...and add to MAKEALL script
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 4f805c1e3a60b9263da8ec3bcd1f45edcefa7dcf
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed May 14 23:34:53 2008 +0200
+
+ environment: fix bug introduced by commit a8409f4f1ac8
+
+ env_get_char is not a function, but a pointer to one.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit cda2a4a9961fd4341b7db305cb22fc05957e8b77
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed May 14 13:55:30 2008 +0200
+
+ Fix config files for out-of-tree building
+
+ Several board/<...>/config.mk files include dynamically built (by
+ the Makefile) config files but used the wrong file name of
+ $(TOPDIR)/board/$(BOARDDIR)/config.tmp
+ instead if the correct
+ $(OBJTREE)/board/$(BOARDDIR)/config.tmp
+
+ The bug is nasty because the build result is correct for the (normal)
+ in-tree builds, and because 'sinclude' is used no errors get raised
+ even for out-of-tree build tests. But out-of-tree builds use an
+ incomplete and thus usually incorrect configuration...
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 2dd7082e06d580404010b06fe4e0e8b7038a00c8
+Author: Stefan Roese <sr@denx.de>
+Date: Wed May 14 13:40:03 2008 +0200
+
+ ppc4xx: Fix bogus Canyonlands config.mk
+
+ This patch fixes the canyonlands config.mk file to enable correct
+ out-of-tree builds. Thanks to Wolfgang Denk for spotting this.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit fdd1247a66d788a3446244f6fde9955a93c26322
+Author: Stefan Roese <sr@denx.de>
+Date: Wed May 14 10:32:32 2008 +0200
+
+ ppc4xx: Individual handling of ddr2_fixed.c for canyonlands_nand build
+
+ Canyonlands has a file ddr2_fixed.c which needs special treatment when
+ building in separate directory. It has to be linked to build directory
+ otherwise it is not seen.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit a8409f4f1ac84c36273c1a1e341189662521bcfb
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed May 14 12:22:49 2008 +0200
+
+ environment: cleanup prototype declarations of env functions.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit cf39b07948015c480b72a6e732cf7d839aa93a9e
+Author: Wolfgang Denk <wd@denx.de>
+Date: Wed May 14 12:21:48 2008 +0200
+
+ linkstation_HGLAN: Fix out of tree building.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 085551c05ca09e6c491ea11a1c6727a36776a545
+Author: Stefan Roese <sr@denx.de>
+Date: Wed May 14 10:32:32 2008 +0200
+
+ ppc4xx: Individual handling of ddr2_fixed.c for canyonlands_nand build
+
+ Canyonlands has a file ddr2_fixed.c which needs special treatment when
+ building in separate directory. It has to be linked to build directory
+ otherwise it is not seen.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 1510b82d50615f344e89d42533e8224cce067dc0
+Author: Wolfgang Denk <wd@denx.de>
+Date: Tue May 13 23:15:52 2008 +0200
+
+ Makefile: fix "error: version_autogenerated.h: No such file or directory"
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 70fab1908fc1734a403711eaabbef546bc4b77dc
+Author: Stefan Roese <sr@denx.de>
+Date: Tue May 13 20:22:01 2008 +0200
+
+ ppc4xx: Add 405EX(r) revision C PVR definitions and detection code
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 65dcfa79204f4750b905a173a5365e0b2eb6c2f6
+Author: Wolfgang Denk <wd@denx.de>
+Date: Mon May 12 01:11:21 2008 +0200
+
+ Revert "pci: Add CONFIG_PCI_SKIP_HOST_BRIDGE config option"
+
+ This reverts commit 55774b512fdf63c0516d441cc5da7c54bbffb7f2
+ which broke many PowerPC boards.
+
+commit ee0cfa70803a3e629ea581a9b216f8ecef402bfc
+Author: Wolfgang Denk <wd@denx.de>
+Date: Mon May 12 00:56:28 2008 +0200
+
+ Revert "Avoid initrd and logbuffer area overlaps"
+
+ This reverts commit 1b5605ca57fbb364f4d78eeee28b974ed875e888
+ which breaks building on all PPC boards that don't use a log buffer.
+
+commit 02b9b22446e3d7ad6a6382be17a1ce79a7de589b
+Author: Nick Spence <nick.spence@freescale.com>
+Date: Sat May 10 14:02:04 2008 -0700
+
+ Fix offset calculation for multi-type legacy images.
+
+ Calculation of tail was incorrect when size % 4 == 0.
+
+ New code removes the conditional and does the same thing but with arithmetic
+
+ Signed-off-by: Nick Spence <nick.spence@freescale.com>
+
+commit c9dca3c3f37d2647aec4509b24b16d15882ae3e4
+Author: Wolfgang Denk <wd@denx.de>
+Date: Mon May 12 00:40:58 2008 +0200
+
+ Revert "Change env_get_char from a global function ptr to a function."
+
+ This reverts commit c0559be371b2a64b1a817088c3308688e2182f93
+ which is known to break booting from dataflash and NAND.
+
+commit 20e5ed137483823aaea5178169f3b144c7a4d9e0
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 11 23:13:57 2008 +0200
+
+ API: remove duplicate syscall check
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit 79dd1712689d6a5031d7cbff54957049680751c7
+Author: Markus Klotzbücher <mk@denx.de>
+Date: Thu May 8 16:00:55 2008 +0200
+
+ ppc4xx: Kilauea: Add CONFIG_BOOTP_SUBNETMASK to Kilauea board config
+
+ When using dhcp/bootp the "netmask" environment variable is not set
+ because CONFIG_BOOTP_SUBNETMASK is not defined. But usually this is
+ desireable, so the following patch adds this this option to the board
+ config.
+
+ Signed-off-by: Markus Klotzbuecher <mk@denx.de>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 869d14b4cc2e47de2ddcb117bad0407a44436684
+Author: Stefan Roese <sr@denx.de>
+Date: Sat May 10 10:30:36 2008 +0200
+
+ ppc4xx: Update Makalu defconfig to use device-tree booting as default
+
+ This patch reworks the default environment on Makalu. Now "net_nfs" for
+ example uses the device-tree style booting formerly know as "net_nfs_fdt".
+ Also the addresses in RAM were changed because of the new image booting
+ support, which check for image overwriting. So the addresses needed to
+ get adjusted.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit f3612a7b199cab3942f60d9c1392eb39d58cc699
+Author: Becky Bruce <bgill@freescale.com>
+Date: Wed May 7 13:28:16 2008 -0500
+
+ PPC: fix map_physmem build warning
+
+ map_physmem currently generates a warning when CONFIG_PHYS_64BIT is
+ enabled. This quiets the warning.
+
+ Signed-off-by: Becky Bruce <Becky.Bruce@freescale.com>
+
+commit 36f32675f40292002ee1fed252c180a43022d2d4
+Author: Becky Bruce <bgill@freescale.com>
+Date: Wed May 7 13:24:57 2008 -0500
+
+ Update pci code to use phys_addr_t
+
+ Physical addrs need to be represented by phys_addr_t, not
+ unsigned long. Otherwise, systems that use CONFIG_PHYS_64BIT
+ are going to fail mightily.
+
+ Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
+
+commit 91a616741fc128cdb88f39bddcd4d72fe17466d0
+Author: Nick Spence <nick.spence@freescale.com>
+Date: Thu May 8 22:32:22 2008 -0700
+
+ Support legacy multi-type images without FDT section.
+
+ This patch enables legacy multi-type images containing only a Linux kernel
+ and root file system to be loaded, maintaining compatibility with previous
+ versions of u-boot.
+
+ This is required when using old image files such as a Linux 2.4 kernel /
+ filesystem.
+
+ Signed-off-by: Nick Spence <nick.spence@freescale.com>
+ Acked-by: Bartlomiej Sieka <tur@semihalf.com>
+
+commit 881031d9732783b7aeae2198fc7eb480ae8974a6
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sat May 10 00:38:02 2008 +0200
+
+ Update CHANGELOG.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit e5e9d6c9c08160be7e5a36e04d125ccce99b8774
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sat May 10 00:36:09 2008 +0200
+
+ post/cpu/ppc4xx/Makefile: line length cleanup
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit cce9cfdabcf416ecd2aacc3681c91e5378c75a3d
+Author: Stelian Pop <stelian@popies.net>
+Date: Thu May 8 22:52:09 2008 +0200
+
+ Fix @ -> <at> substitution
+
+ When applying the AT91CAP9 patches upstream, something transformed
+ the '@' character into the ' <at> ' sequence.
+
+ The patch below restores the original form in all the places where
+ it has been modified (the AT91CAP9 files, the AT91SAM9260 files which
+ were copied from AT91CAP9, and a couple of other files where the
+ ' <at> ' sequence was present).
+
+ Signed-off-by: Stelian Pop <stelian@popies.net>
+
+commit 9606b3c81b3c47a1d58514e9a232c6f461a17597
+Author: Stelian Pop <stelian@popies.net>
+Date: Thu May 8 22:52:10 2008 +0200
+
+ Update origin and copyright information in arch-at91sam9 header files
+
+ When doing the AT91CAP9/AT91SAM9 port, a number of header files were
+ copied from the Linux kernel sources. This patch explicitly specifies
+ this origin for all the copied headers, and for those missing copyright
+ information, adds it.
+
+ Additionaly, the header file 'at91sam926x_mc.h' has been superceeded
+ in the latest kernel sources by 'at91sam9_smc.h'.
+
+ The copyright information has been confirmed by the AT91 Linux kernel
+ maintainer, Andrew Victor <avictor.za@gmail.com>.
+
+ Signed-off-by: Stelian Pop <stelian@popies.net>
+
+commit ceb6b4fbe1dcc40bb672ef8133ddf4813e97cbb1
+Author: Stelian Pop <stelian@popies.net>
+Date: Thu May 8 22:52:11 2008 +0200
+
+ Add copyright information in Atmel boards partition.c
+
+ When Ulf did the dataflash.c cleanup, he didn't add his copyright on
+ the new created files. This patch fixes the problem.
+
+ Signed-off-by: Stelian Pop <stelian@popies.net>
+
+commit 2ab02fd456d8ef92ae9f5439618d1fa7ca16e5f3
+Author: Guennadi Liakhovetski <lg@denx.de>
+Date: Thu May 8 10:09:27 2008 +0200
+
+ mx31ads: fix 32kHz clock handling
+
+ According to schematics and to RedBoot sources, the MX31ADS uses a 32768Hz
+ oscillator as a SKIL source. Fix previously wrongly assumed 32000Hz value.
+ Also fix a typo when verifying a jumper configuration. While at it, make
+ two needlessly global functions static.
+
+ Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
+
+commit 1b5605ca57fbb364f4d78eeee28b974ed875e888
+Author: Marian Balakowicz <m8@semihalf.com>
+Date: Wed May 7 13:10:04 2008 +0200
+
+ Avoid initrd and logbuffer area overlaps
+
+ Add logbuffer to reserved LMB areas to prevent initrd allocation
+ from overlaping with it.
+
+ Make sure to use correct logbuffer base address.
+
+ Signed-off-by: Marian Balakowicz <m8@semihalf.com>
+
+commit c59518e15949b3403df5c5b0c2c48ea0e5bea24b
+Author: Marian Balakowicz <m8@semihalf.com>
+Date: Wed May 7 13:08:54 2008 +0200
+
+ ppc: Cleanup get_effective_memsize() use
+
+ Removed duplicated effective memory size calculation code.
+
+ Signed-off-by: Marian Balakowicz <m8@semihalf.com>
+
+commit 273c37d843d5b581090378016cd12dd9c586907b
+Author: Marian Balakowicz <m8@semihalf.com>
+Date: Wed May 7 09:03:53 2008 +0200
+
+ Fix build errors when CONFIG_LOGBUFFER and CONFIG_FIT are enabled
+
+ Recent modifcations to LOGBUFFER handling code were incorrecly
+ introduced to fit_check_kernel() routine during
+ "Merge branch 'new-image' of git://www.denx.de/git/u-boot-testing",
+ commit 27f33e9f45ef7f9685cbdc65066a1828e85dde4f.
+
+ This patch cleans up this merge issue.
+
+ Signed-off-by: Marian Balakowicz <m8@semihalf.com>
+
+commit bc11756daff89a3de09ca80adac962b88cf06e6e
+Author: Grant Erickson <gerickson@nuovations.com>
+Date: Tue May 6 20:16:15 2008 -0700
+
+ Propagate Error Status to the Shell on fw_printenv Errors
+
+ Changed implementation such that fw_printenv returns failure status
+ when one or more specified variables do not exist or when incorrect
+ command syntax is used.
+
+ This aids scripting fw_printenv such that the script can key of the
+ return status rather than relying on standard error "scraping".
+
+ Signed-off-by: Grant Erickson <gerickson@nuovations.com>
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit f3b6d528e4dd719640a4bfcd954f4e4c7f5db0d6
+Author: Grant Erickson <gerickson@nuovations.com>
+Date: Tue May 6 16:18:00 2008 -0700
+
+ Fix Compilation Errors with 'tools/env/fw_printenv'
+
+ In the current top-of-tree, 1.3.3.-rc2, the optional tool
+ 'tools/env/fw_printenv' fails to compile for two reasons:
+
+ 1) The header watchdog.h cannot be found.
+ 2) The header zlib.h is picked up from the tool chain rather than the
+ project causing a prototype conflict for crc32.
+
+ This patch addresses both of these issues.
+
+ Platforms Tested On:
+ - AMCC "Kilauea"
+
+ Signed-off-by: Grant Erickson <gerickson@nuovations.com>
+
+commit 597f6c26a18b389903a64692bacbf9a1ca69355b
+Author: James Yang <James.Yang@freescale.com>
+Date: Mon May 5 10:22:53 2008 -0500
+
+ Fix readline_into_buffer() with CONFIG_CMDLINE_EDITING before relocating
+
+ When CONFIG_CMDLINE_EDITING is enabled, readline_into_buffer() doesn't
+ work before relocating to RAM because command history is written into
+ a global array that is not writable before relocation. This patch
+ defers to the no-editing and no-history code in readline_into_buffer()
+ if it is called before relocation.
+
+ Signed-off-by: James Yang <James.Yang@freescale.com>
+ Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
+
+commit 726c0f1e5f108dccea052965123b95837d2bd402
+Author: Detlev Zundel <dzu@denx.de>
+Date: Mon May 5 16:11:22 2008 +0200
+
+ cosmetic: Adjust coding style for switch statements to be consistent
+
+ Signed-off-by: Detlev Zundel <dzu@denx.de>
+
+commit 574b319512b13e10800f0045e39b993f4ca25e42
+Author: Detlev Zundel <dzu@denx.de>
+Date: Mon May 5 16:11:21 2008 +0200
+
+ Fix disk type output in disk/part.c
+
+ Signed-off-by: Detlev Zundel <dzu@denx.de>
+
+commit 045b4d2d7168ef09c7349dcf6ecebe7432b74171
+Author: Vlad Lungu <vlad.lungu@windriver.com>
+Date: Mon May 5 14:20:03 2008 +0300
+
+ Mail address change, documentation modified
+
+ Signed-off-by: Vlad Lungu <vlad.lungu@windrvier.com>
+
+commit 4d49b28038e2819088e8356a77212fc95a89ce5a
+Author: Michal Simek <monstr@monstr.eu>
+Date: Sun May 4 15:42:41 2008 +0200
+
+ microblaze: Repare intc handling
+
+ Signed-off-by: Michal Simek <monstr@monstr.eu>
+
+commit 878b3b1e193e570caf3e96ad8e31e561f68d0287
+Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+Date: Sun May 4 15:17:52 2008 +0200
+
+ include/gitignore: update to all architectures
+
+ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+
+commit 1df368aed3b8bc240fe1595d290b0e91b22961da
+Author: Marcel Ziswiler <marcel@ziswiler.com>
+Date: Mon May 5 02:12:06 2008 +0200
+
+ ide: Remove spurious second include of io.h
+
+ Removed the second include, with all the #ifdef around as suggested by Wolfgang.
+
+ Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com>
+
+commit 8fbc985bdad09b23b7eb4df1d2ea589619d8db4c
+Author: Adrian Filipi <adrian.filipi@eurotech.com>
+Date: Tue May 6 16:46:37 2008 -0400
+
+ Fix some typos
+
+ This patch fixes three typos.
+ The first is a repetition of CONFIG_CMD_BSP.
+ The second makes the #endif comment match its #if.
+ The third is a spelling error.
+
+ Signed-off-by: Adrian Filipi <adrian.filipi@eurotech.com>
+
+commit e419e12d04ae3b280c99a87a2ea4ad7a40628bcb
+Author: Grant Erickson <gerickson@nuovations.com>
+Date: Sun May 4 16:45:01 2008 -0700
+
+ Recognize 'powerpc' As an Alias for IH_ARCH_PPC
+
+ Add support for the recognition of 'powerpc' as an alias for the PowerPC
+ architecture type since Linux is already trending in that direction,
+ preferring 'powerpc' to 'ppc'.
+
+ Signed-off-by: Grant Erickson <gerickson@nuovations.com>
+
+commit f5a24259190c388c2527bdc49fee34577d862cc7
+Author: Wheatley Travis <Travis.Wheatley@freescale.com>
+Date: Fri May 2 13:35:15 2008 -0700
+
+ 7450 and 86xx L2 cache invalidate bug corrections
+
+ The 7610 and related parts have an L2IP bit in the L2CR that is
+ monitored to signal when the L2 cache invalidate is complete whereas the
+ 7450 and related parts utilize L2I for this purpose. However, the
+ current code does not account for this difference. Additionally the 86xx
+ L2 cache invalidate code used an "andi" instruction where an "andis"
+ instruction should have been used.
+
+ This patch addresses both of these bugs.
+
+ Signed-off-by: Travis Wheatley <travis.wheatley@freescale.com>
+ Acked-By: Jon Loeliger <jdl@freescale.com>
+
+commit 4d31cdc45d3592a5545a649fb5a24b458a4e4b72
+Author: Wolfgang Denk <wd@denx.de>
+Date: Fri May 9 10:16:13 2008 +0200
+
+ Avoid infinite loop "Generating include/autoconf.mk"
+
+ Fix a bogus circular dependency that caused an infinite loop of
+ "Generating include/autoconf.mk" again and again.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit ef2642625cbfb1c3695e3478d08ae515052a4950
+Author: Stefan Roese <sr@denx.de>
+Date: Thu May 8 11:10:46 2008 +0200
+
+ ppc4xx: Kilauea: Fix incorrect FPGA FIFO address
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit a00eccfebc954ad9485161efeca7d9aaf626d530
+Author: Stefan Roese <sr@denx.de>
+Date: Thu May 8 11:05:15 2008 +0200
+
+ ppc4xx: Add fdt support to all remaining AMCC PPC4xx eval boards
+
+ This patch adds fdt (flattened device tree) support to all remaining AMCC
+ eval boards. Most newer boards already support device tree. With this patch,
+ all AMCC boards now enable device tree passing from U-Boot to Linux
+ arch/powerpc kernels.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit cb5d88b9611e0c35c53543ad3b4ab99fa82203e3
+Author: Stefan Roese <sr@denx.de>
+Date: Thu May 8 11:01:09 2008 +0200
+
+ ppc4xx: Add weak default ft_board_setup() routine
+
+ This patch adds a default ft_board_setup() routine to the 4xx fdt code.
+ This routine is defined as weak and can be overwritten by a board specific
+ one if needed.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit d1c1ba85c7915053adf6a8d14a08ac6fcb750d01
+Author: Stefan Roese <sr@denx.de>
+Date: Thu May 8 10:48:58 2008 +0200
+
+ ppc4xx: acadia: Add fdt support and fix section overlap problem
+
+ This patch adds fdt (flattened device tree) support to the AMCC
+ Acadia eval board. This increases the image size and it doesn't
+ fit anymore into 256kByte. Since we didn't want to remove features
+ from the configuration, we decided to increase the U-Boot image size
+ (add one flash sector).
+
+ Also changed the default environment definition to make it
+ independent of such changes.
+
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 4adb3023de75bc150f088c8935db340930ad38c8
+Author: Ira Snyder <iws@ovro.caltech.edu>
+Date: Tue Apr 29 11:18:54 2008 -0700
+
+ ppc4xx: Add device tree support to AMCC Yosemite
+
+ Add support for booting with a device tree blob. This is needed to boot
+ ARCH=powerpc kernels. Also add support for setting the eth0 mac address
+ via the ethaddr variable.
+
+ Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit b9bbefce1a653ea35f74a66ec117cdda2e043a4b
+Author: Dave Mitchell <dmitchell@amcc.com>
+Date: Wed May 7 09:00:23 2008 -0700
+
+ ppc4xx: Fix typos in 460GT/EX FBDV array
+
+ Corrected two typos in the 460GT/EX FBDV array.
+
+ Signed-off-by: Dave Mitchell <dmitchell@amcc.com>
+ Signed-off-by: Stefan Roese <sr@denx.de>
+
+commit 66f5fa9263629271edc86178b1f224e3c9aab2b3
+Author: Andy Fleming <afleming@freescale.com>
+Date: Wed May 7 16:54:31 2008 -0500
+
+ 85xx: Limit CPU2 workaround to parts that have the errata
+
+ Signed-off-by: Ebony Zhu <ebony.zhu@freescale.com>
+ Signed-off-by: Andy Fleming <afleming@freescale.com>
+
+commit a5fe514e8ace564300d2c1d73846ddff49654243
+Author: Lee Nipper <lee.nipper@freescale.com>
+Date: Fri Apr 25 15:44:45 2008 -0500
+
+ mpc83xx: system performance settings for MPC8349EMDS.
+
+ These same settings are used on MPC8349ITX, and
+ improve performance on MPC8349EMDS.
+
+ Signed-off-by: Lee Nipper <lee.nipper@freescale.com>
+ Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
+
+commit 49387dba910e485640b575e920ee463b7e611dc3
+Author: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
+Date: Tue May 6 13:22:52 2008 +0900
+
+ [MIPS] cpu/mips/cache.S: Fix build warning
+
+ Some old GNU assemblers, such as v2.14 (ELDK 3.1.1), v2.16 (ELDK 4.1.0),
+ warns illegal global symbol references by bal (and jal also) instruction.
+ This does not happen with the latest binutils v2.18.
+
+ Here's an example on gth2_config:
+
+ mips_4KC-gcc -D__ASSEMBLY__ -g -Os -D__KERNEL__ -DTEXT_BASE=0x90000000 -I/home/skuribay/devel/u-boot.git/include -fno-builtin -ffreestanding -nostdinc -isy
+ stem /opt/eldk311/usr/bin/../lib/gcc-lib/mips-linux/3.3.3/include -pipe -DCONFIG_MIPS -D__MIPS__ -G 0 -mabicalls -fpic -pipe -msoft-float -march=4kc -mtune=4k
+ c -EB -c -o cache.o cache.S
+ cache.S: Assembler messages:
+ cache.S:243: Warning: Pretending global symbol used as branch target is local.
+ cache.S:250: Warning: Pretending global symbol used as branch target is local.
+
+ In principle, gas might be sensitive to global symbol references in PIC
+ code because they should be processed through GOT (global offset table).
+ But if `bal' instruction is used, it results in PC-based offset jump.
+ This is the cause of this warning.
+
+ In practice, we know it doesn't matter whether PC-based reference or GOT-
+ based. As for this case, both will work before/after relocation. But let's
+ fix the code.
+
+ This patch explicitly sets up a target address, then jump there.
+ Here's an example of disassembled code with/without this patch.
+
+ 90000668: 1485ffef bne a0,a1,90000628 <mips_cache_reset+0x20>
+ 9000066c: ac80fffc sw zero,-4(a0)
+ 90000670: 01402821 move a1,t2
+ -90000674: 0411ffba bal 90000560 <mips_init_icache>
+ -90000678: 01803021 move a2,t4
+ -9000067c: 01602821 move a1,t3
+ -90000680: 0411ffcc bal 900005b4 <mips_init_dcache>
+ -90000684: 01a03021 move a2,t5
+ -90000688: 03000008 jr t8
+ -9000068c: 00000000 nop
+ +90000674: 01803021 move a2,t4
+ +90000678: 8f8f83ec lw t7,-31764(gp)
+ +9000067c: 01e0f809 jalr t7
+ +90000680: 00000000 nop
+ +90000684: 01602821 move a1,t3
+ +90000688: 01a03021 move a2,t5
+ +9000068c: 8f8f81e0 lw t7,-32288(gp)
+ +90000690: 01e0f809 jalr t7
+ +90000694: 00000000 nop
+ +90000698: 03000008 jr t8
+ +9000069c: 00000000 nop
+
+ Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
+
+commit 0f8c62a14b523c56874ebcb67c1a16c99aad48b3
+Author: Vlad Lungu <vlad.lungu@windriver.com>
+Date: Mon May 5 14:04:00 2008 +0300
+
+ Allow building mips versions with ELDK 3.1.1
+
+ .gpword works only with local symbols on certain binutils versions
+
+ Signed-off-by: Vlad Lungu <vlad.lungu@windrvier.com>
+
+commit 12a67a9e51f6b3ec26cb0f077fb5685a447c359d
+Author: Wolfgang Denk <wd@denx.de>
+Date: Mon May 5 12:52:36 2008 +0200
+
+ MAKEALL: add inka4x0 board
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit b83dcc13ae7b2dab394bfef6f699750d11490ee2
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sun May 4 21:34:23 2008 +0200
+
+ kb9202 board: fix build problem.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 6adf61dc4cb5c53a2df990cbc8df2bceacbfd869
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sun May 4 12:10:33 2008 +0200
+
+ Prepare for v1.3.3-rc3
+
+ Update ChNAGELOG, minor white space cleanup.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
commit 7c0773fde6100b61be2558cb5d8c442a3194aecb
Author: Wolfgang Denk <wd@denx.de>
Date: Sun May 4 00:35:15 2008 +0200
diff --git a/MAINTAINERS b/MAINTAINERS
index 98056795d2..cc88762743 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -611,7 +611,7 @@ Thomas Lange <thomas@corelatus.se>
dbau1x00 MIPS32 Au1000
gth2 MIPS32 Au1000
-Vlad Lungu <vlad@comsys.ro>
+Vlad Lungu <vlad.lungu@windriver.com>
qemu_mips MIPS32
#########################################################################
diff --git a/MAKEALL b/MAKEALL
index 47e53c6695..cdc0011b9b 100755
--- a/MAKEALL
+++ b/MAKEALL
@@ -307,6 +307,7 @@ LIST_8260=" \
TQM8260_AC \
TQM8260_AD \
TQM8260_AE \
+ TQM8272 \
ZPC1900 \
"
diff --git a/Makefile b/Makefile
index 13eee305fd..c2f3361e72 100644
--- a/Makefile
+++ b/Makefile
@@ -24,7 +24,7 @@
VERSION = 1
PATCHLEVEL = 3
SUBLEVEL = 3
-EXTRAVERSION = -rc3
+EXTRAVERSION =
U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
VERSION_FILE = $(obj)include/version_autogenerated.h
@@ -424,13 +424,19 @@ $(obj)System.map: $(obj)u-boot
# This target actually generates 2 files; autoconf.mk and autoconf.mk.dep.
# the dep file is only include in this top level makefile to determine when
# to regenerate the autoconf.mk file.
-$(obj)include/autoconf.mk: $(obj)include/config.h $(VERSION_FILE)
- @$(XECHO) Generating include/autoconf.mk ; \
+$(obj)include/autoconf.mk.dep: $(obj)include/config.h include/common.h
+ @$(XECHO) Generating $@ ; \
set -e ; \
: Generate the dependancies ; \
- $(CC) -x c -M $(HOST_CFLAGS) $(CPPFLAGS) -MQ $@ include/common.h > $@.dep ; \
+ $(CC) -x c -DDO_DEPS_ONLY -M $(HOST_CFLAGS) $(CPPFLAGS) \
+ -MQ $(obj)include/autoconf.mk include/common.h > $@
+
+$(obj)include/autoconf.mk: $(obj)include/config.h
+ @$(XECHO) Generating $@ ; \
+ set -e ; \
: Extract the config macros ; \
- $(CPP) $(CFLAGS) -dM include/common.h | sed -n -f tools/scripts/define2mk.sed > $@
+ $(CPP) $(CFLAGS) -DDO_DEPS_ONLY -dM include/common.h | \
+ sed -n -f tools/scripts/define2mk.sed > $@
sinclude $(obj)include/autoconf.mk.dep
diff --git a/README b/README
index 5e2bca41c1..f14fb7bad2 100644
--- a/README
+++ b/README
@@ -623,7 +623,6 @@ The following options need to be configured:
CONFIG_CMD_SPI * SPI serial bus support
CONFIG_CMD_USB * USB support
CONFIG_CMD_VFD * VFD support (TRAB)
- CONFIG_CMD_BSP * Board SPecific functions
CONFIG_CMD_CDP * Cisco Discover Protocol support
CONFIG_CMD_FSL * Microblaze FSL support
diff --git a/api/api.c b/api/api.c
index c1b2b60aeb..19c71540c0 100644
--- a/api/api.c
+++ b/api/api.c
@@ -30,6 +30,7 @@
#include <command.h>
#include <common.h>
#include <malloc.h>
+#include <environment.h>
#include <linux/types.h>
#include <api_public.h>
@@ -40,7 +41,6 @@
/* U-Boot routines needed */
extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
-extern uchar *env_get_addr(int);
/*****************************************************************************
*
@@ -582,7 +582,7 @@ int syscall(int call, int *retval, ...)
va_list ap;
int rv;
- if (call < 0 || call >= calls_no || calls_table[call] == NULL) {
+ if (call < 0 || call >= calls_no) {
debugf("invalid call #%d\n", call);
return 0;
}
diff --git a/board/BuS/EB+MCF-EV123/config.mk b/board/BuS/EB+MCF-EV123/config.mk
index 9fe2fc5dae..f03e3962d0 100644
--- a/board/BuS/EB+MCF-EV123/config.mk
+++ b/board/BuS/EB+MCF-EV123/config.mk
@@ -22,7 +22,7 @@
# MA 02111-1307 USA
#
-sinclude $(TOPDIR)/board/$(BOARDDIR)/textbase.mk
+sinclude $(OBJTREE)/board/$(BOARDDIR)/textbase.mk
ifndef TEXT_BASE
TEXT_BASE = 0xFE000000
endif
diff --git a/board/amcc/canyonlands/canyonlands.c b/board/amcc/canyonlands/canyonlands.c
index 9986e9a9c6..0f66061278 100644
--- a/board/amcc/canyonlands/canyonlands.c
+++ b/board/amcc/canyonlands/canyonlands.c
@@ -476,8 +476,37 @@ void ft_board_setup(void *blob, bd_t *bd)
val[3] = gd->bd->bi_flashsize;
rc = fdt_find_and_setprop(blob, "/plb/opb/ebc", "ranges",
val, sizeof(val), 1);
- if (rc)
+ if (rc) {
printf("Unable to update property NOR mapping, err=%s\n",
fdt_strerror(rc));
+ }
+
+ if (gd->board_type == BOARD_CANYONLANDS_SATA) {
+ /*
+ * When SATA is selected we need to disable the first PCIe
+ * node in the device tree, so that Linux doesn't initialize
+ * it.
+ */
+ rc = fdt_find_and_setprop(blob, "/plb/pciex@d00000000", "status",
+ "disabled", sizeof("disabled"), 1);
+ if (rc) {
+ printf("Unable to update property status in PCIe node, err=%s\n",
+ fdt_strerror(rc));
+ }
+ }
+
+ if (gd->board_type == BOARD_CANYONLANDS_PCIE) {
+ /*
+ * When PCIe is selected we need to disable the SATA
+ * node in the device tree, so that Linux doesn't initialize
+ * it.
+ */
+ rc = fdt_find_and_setprop(blob, "/plb/sata@bffd1000", "status",
+ "disabled", sizeof("disabled"), 1);
+ if (rc) {
+ printf("Unable to update property status in PCIe node, err=%s\n",
+ fdt_strerror(rc));
+ }
+ }
}
#endif /* defined(CONFIG_OF_LIBFDT) && defined(CONFIG_OF_BOARD_SETUP) */
diff --git a/board/amcc/canyonlands/config.mk b/board/amcc/canyonlands/config.mk
index 1e4bbc47e6..2330cae925 100644
--- a/board/amcc/canyonlands/config.mk
+++ b/board/amcc/canyonlands/config.mk
@@ -24,20 +24,12 @@
# AMCC 460EX/460GT Evaluation Board (Canyonlands) board
#
-sinclude $(TOPDIR)/board/$(BOARDDIR)/config.tmp
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
ifndef TEXT_BASE
TEXT_BASE = 0xFFFA0000
endif
-ifeq ($(CONFIG_NAND_U_BOOT),y)
-LDSCRIPT = $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds
-endif
-
-ifeq ($(CONFIG_PCIBOOT_U_BOOT),y)
-LDSCRIPT = $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds
-endif
-
PLATFORM_CPPFLAGS += -DCONFIG_440=1
ifeq ($(debug),1)
diff --git a/board/amcc/kilauea/kilauea.c b/board/amcc/kilauea/kilauea.c
index 37ef06ef2a..d806a412eb 100644
--- a/board/amcc/kilauea/kilauea.c
+++ b/board/amcc/kilauea/kilauea.c
@@ -230,14 +230,22 @@ int misc_init_r(void)
return 0;
}
-int board_emac_count(void)
+static int is_405exr(void)
{
u32 pvr = get_pvr();
+ if (pvr & 0x00000004)
+ return 0; /* bit 2 set -> 405EX */
+
+ return 1; /* bit 2 cleared -> 405EXr */
+}
+
+int board_emac_count(void)
+{
/*
* 405EXr only has one EMAC interface, 405EX has two
*/
- if ((pvr == PVR_405EXR1_RA) || (pvr == PVR_405EXR2_RA))
+ if (is_405exr())
return 1;
else
return 2;
@@ -245,12 +253,10 @@ int board_emac_count(void)
static int board_pcie_count(void)
{
- u32 pvr = get_pvr();
-
/*
* 405EXr only has one EMAC interface, 405EX has two
*/
- if ((pvr == PVR_405EXR1_RA) || (pvr == PVR_405EXR2_RA))
+ if (is_405exr())
return 1;
else
return 2;
@@ -259,9 +265,8 @@ static int board_pcie_count(void)
int checkboard (void)
{
char *s = getenv("serial#");
- u32 pvr = get_pvr();
- if ((pvr == PVR_405EXR1_RA) || (pvr == PVR_405EXR2_RA))
+ if (is_405exr())
printf("Board: Haleakala - AMCC PPC405EXr Evaluation Board");
else
printf("Board: Kilauea - AMCC PPC405EX Evaluation Board");
diff --git a/board/atmel/at91cap9adk/Makefile b/board/atmel/at91cap9adk/Makefile
index 6b4b4b035e..e33af76c02 100644
--- a/board/atmel/at91cap9adk/Makefile
+++ b/board/atmel/at91cap9adk/Makefile
@@ -1,6 +1,6 @@
#
# (C) Copyright 2003-2008
-# Wolfgang Denk, DENX Software Engineering, wd <at> denx.de.
+# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this
# project.
diff --git a/board/atmel/at91cap9adk/at91cap9adk.c b/board/atmel/at91cap9adk/at91cap9adk.c
index 24861ba49d..5de52b9197 100644
--- a/board/atmel/at91cap9adk/at91cap9adk.c
+++ b/board/atmel/at91cap9adk/at91cap9adk.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
@@ -25,7 +25,7 @@
#include <common.h>
#include <asm/arch/at91cap9.h>
#include <asm/arch/at91cap9_matrix.h>
-#include <asm/arch/at91sam926x_mc.h>
+#include <asm/arch/at91sam9_smc.h>
#include <asm/arch/at91_pmc.h>
#include <asm/arch/at91_rstc.h>
#include <asm/arch/gpio.h>
diff --git a/board/atmel/at91cap9adk/led.c b/board/atmel/at91cap9adk/led.c
index 04de139204..a137c2a952 100644
--- a/board/atmel/at91cap9adk/led.c
+++ b/board/atmel/at91cap9adk/led.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/board/atmel/at91cap9adk/nand.c b/board/atmel/at91cap9adk/nand.c
index c72b0244bd..28091a4226 100644
--- a/board/atmel/at91cap9adk/nand.c
+++ b/board/atmel/at91cap9adk/nand.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* (C) Copyright 2006 ATMEL Rousset, Lacressonniere Nicolas
diff --git a/board/atmel/at91cap9adk/partition.c b/board/atmel/at91cap9adk/partition.c
index 3bffd71a78..eb1a724ab1 100644
--- a/board/atmel/at91cap9adk/partition.c
+++ b/board/atmel/at91cap9adk/partition.c
@@ -1,4 +1,6 @@
/*
+ * (C) Copyright 2008
+ * Ulf Samuelsson <ulf@atmel.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
diff --git a/board/atmel/at91cap9adk/u-boot.lds b/board/atmel/at91cap9adk/u-boot.lds
index 05a6d83d56..996f401f0b 100644
--- a/board/atmel/at91cap9adk/u-boot.lds
+++ b/board/atmel/at91cap9adk/u-boot.lds
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2002
- * Gary Jennejohn, DENX Software Engineering, <gj <at> denx.de>
+ * Gary Jennejohn, DENX Software Engineering, <gj@denx.de>
*
* See file CREDITS for list of people who contributed to this
* project.
diff --git a/board/atmel/at91rm9200dk/partition.c b/board/atmel/at91rm9200dk/partition.c
index a8a5fe6aa6..975be17464 100644
--- a/board/atmel/at91rm9200dk/partition.c
+++ b/board/atmel/at91rm9200dk/partition.c
@@ -1,4 +1,6 @@
/*
+ * (C) Copyright 2008
+ * Ulf Samuelsson <ulf@atmel.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
diff --git a/board/atmel/at91sam9260ek/Makefile b/board/atmel/at91sam9260ek/Makefile
index defc085193..e6e4082c73 100644
--- a/board/atmel/at91sam9260ek/Makefile
+++ b/board/atmel/at91sam9260ek/Makefile
@@ -1,6 +1,6 @@
#
# (C) Copyright 2003-2008
-# Wolfgang Denk, DENX Software Engineering, wd <at> denx.de.
+# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this
# project.
diff --git a/board/atmel/at91sam9260ek/at91sam9260ek.c b/board/atmel/at91sam9260ek/at91sam9260ek.c
index a55468e30d..21479acab4 100644
--- a/board/atmel/at91sam9260ek/at91sam9260ek.c
+++ b/board/atmel/at91sam9260ek/at91sam9260ek.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
@@ -25,7 +25,7 @@
#include <common.h>
#include <asm/arch/at91sam9260.h>
#include <asm/arch/at91sam9260_matrix.h>
-#include <asm/arch/at91sam926x_mc.h>
+#include <asm/arch/at91sam9_smc.h>
#include <asm/arch/at91_pmc.h>
#include <asm/arch/at91_rstc.h>
#include <asm/arch/gpio.h>
diff --git a/board/atmel/at91sam9260ek/led.c b/board/atmel/at91sam9260ek/led.c
index 4c53742e50..ddc375f267 100644
--- a/board/atmel/at91sam9260ek/led.c
+++ b/board/atmel/at91sam9260ek/led.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/board/atmel/at91sam9260ek/nand.c b/board/atmel/at91sam9260ek/nand.c
index abb788afe7..7c1e6abd9a 100644
--- a/board/atmel/at91sam9260ek/nand.c
+++ b/board/atmel/at91sam9260ek/nand.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* (C) Copyright 2006 ATMEL Rousset, Lacressonniere Nicolas
diff --git a/board/atmel/at91sam9260ek/partition.c b/board/atmel/at91sam9260ek/partition.c
index 389fb2c5c9..557d6954f4 100644
--- a/board/atmel/at91sam9260ek/partition.c
+++ b/board/atmel/at91sam9260ek/partition.c
@@ -1,4 +1,6 @@
/*
+ * (C) Copyright 2008
+ * Ulf Samuelsson <ulf@atmel.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
diff --git a/board/atmel/at91sam9260ek/u-boot.lds b/board/atmel/at91sam9260ek/u-boot.lds
index 05a6d83d56..996f401f0b 100644
--- a/board/atmel/at91sam9260ek/u-boot.lds
+++ b/board/atmel/at91sam9260ek/u-boot.lds
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2002
- * Gary Jennejohn, DENX Software Engineering, <gj <at> denx.de>
+ * Gary Jennejohn, DENX Software Engineering, <gj@denx.de>
*
* See file CREDITS for list of people who contributed to this
* project.
diff --git a/board/esd/mecp5200/config.mk b/board/esd/mecp5200/config.mk
index 07b5de1881..170779d6c1 100644
--- a/board/esd/mecp5200/config.mk
+++ b/board/esd/mecp5200/config.mk
@@ -32,7 +32,7 @@
# 0x00100000 boot from RAM (for testing only)
#
-sinclude $(TOPDIR)/board/$(BOARDDIR)/config.tmp
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
ifndef TEXT_BASE
## Standard: boot high
diff --git a/board/freescale/mpc8548cds/mpc8548cds.c b/board/freescale/mpc8548cds/mpc8548cds.c
index dc39fbe8dc..efe2a3a3de 100644
--- a/board/freescale/mpc8548cds/mpc8548cds.c
+++ b/board/freescale/mpc8548cds/mpc8548cds.c
@@ -59,6 +59,7 @@ int checkboard (void)
uint pci_slot = get_pci_slot ();
uint cpu_board_rev = get_cpu_board_revision ();
+ uint svr;
printf ("Board: CDS Version 0x%02x, PCI Slot %d\n",
get_board_version (), pci_slot);
@@ -71,12 +72,16 @@ int checkboard (void)
*/
local_bus_init ();
+ svr = get_svr();
+
/*
* Fix CPU2 errata: A core hang possible while executing a
* msync instruction and a snoopable transaction from an I/O
* master tagged to make quick forward progress is present.
+ * Fixed in Silicon Rev.2.1
*/
- ecm->eebpcr |= (1 << 16);
+ if (!(SVR_MAJ(svr) >= 2 && SVR_MIN(svr) >= 1))
+ ecm->eebpcr |= (1 << 16);
/*
* Hack TSEC 3 and 4 IO voltages.
diff --git a/board/linkstation/Makefile b/board/linkstation/Makefile
index 57c84de60e..8d92d8a6c7 100644
--- a/board/linkstation/Makefile
+++ b/board/linkstation/Makefile
@@ -23,18 +23,21 @@
include $(TOPDIR)/config.mk
-LIB = lib$(BOARD).a
+LIB = $(obj)lib$(BOARD).a
OBJS = $(BOARD).o ide.o hwctl.o avr.o
-$(LIB): .depend $(OBJS) $(SOBJS)
- $(AR) crv $@ $(OBJS) $(SOBJS)
+SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
+OBJS := $(addprefix $(obj),$(OBJS))
+
+$(LIB): $(obj).depend $(OBJS)
+ $(AR) crv $@ $(OBJS)
#########################################################################
-.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
- $(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
-sinclude .depend
+sinclude $(obj).depend
#########################################################################
diff --git a/board/linkstation/config.mk b/board/linkstation/config.mk
index bdf611dc2b..d04829014e 100644
--- a/board/linkstation/config.mk
+++ b/board/linkstation/config.mk
@@ -35,7 +35,7 @@
# 0x07F00000 boot from RAM
#
-sinclude $(TOPDIR)/board/$(BOARDDIR)/config.tmp
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
ifndef TEXT_BASE
# For flash image - all models
diff --git a/board/munices/config.mk b/board/munices/config.mk
index d226244a1c..1b573bc882 100644
--- a/board/munices/config.mk
+++ b/board/munices/config.mk
@@ -29,7 +29,7 @@
# 0xFFF00000 boot high (standard configuration)
#
-sinclude $(TOPDIR)/board/$(BOARDDIR)/config.tmp
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
ifndef TEXT_BASE
TEXT_BASE = 0xFFF00000
diff --git a/board/mx31ads/lowlevel_init.S b/board/mx31ads/lowlevel_init.S
index 099a7ca81b..e16605836b 100644
--- a/board/mx31ads/lowlevel_init.S
+++ b/board/mx31ads/lowlevel_init.S
@@ -220,7 +220,7 @@ lowlevel_init:
mov r1, #CS4_BASE
ldrh r1, [r1, #0x2]
/* Is 27MHz switch set? */
- ands r1, r1, #0x16
+ ands r1, r1, #0x10
/* 532-133-66.5 */
ldr r0, =CCM_BASE
diff --git a/board/qemu-mips/README b/board/qemu-mips/README
index 39570b13db..4c1f8edc9b 100644
--- a/board/qemu-mips/README
+++ b/board/qemu-mips/README
@@ -1,4 +1,4 @@
-By Vlad Lungu vlad@comsys.ro 2007-Oct-01
+By Vlad Lungu vlad.lungu@windriver.com 2007-Oct-01
----------------------------------------
Qemu is a full system emulator. See
@@ -9,3 +9,7 @@ Limitations & comments
Supports the "-m mips" configuration of qemu: serial,NE2000,IDE.
Support is big endian only for now (or at least this is what I tested).
Derived from au1x00 with a lot of things cut out.
+
+Supports emulated flash (patch Jean-Christophe PLAGNIOL-VILLARD) with
+recent qemu versions. When using emulated flash, launch with
+-pflash <filename> and erase mips_bios.bin.
diff --git a/board/qemu-mips/qemu-mips.c b/board/qemu-mips/qemu-mips.c
index a6ad7b9ab3..68690743d6 100644
--- a/board/qemu-mips/qemu-mips.c
+++ b/board/qemu-mips/qemu-mips.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007
- * Vlad Lungu vlad@comsys.ro
+ * Vlad Lungu vlad.lungu@windriver.com
*
* See file CREDITS for list of people who contributed to this
* project.
diff --git a/board/sc520_cdp/sc520_cdp_asm.S b/board/sc520_cdp/sc520_cdp_asm.S
index be7b2bb482..7f70d65d5f 100644
--- a/board/sc520_cdp/sc520_cdp_asm.S
+++ b/board/sc520_cdp/sc520_cdp_asm.S
@@ -76,8 +76,8 @@ done: movb $0x88, %al
jmp *%ebp /* return to caller */
-.globl __show_boot_progress
-__show_boot_progress:
+.globl show_boot_progress
+show_boot_progress:
out %al, $0x80
xchg %al, %ah
movw $0x680, %dx
diff --git a/board/sc520_spunk/Makefile b/board/sc520_spunk/Makefile
index bfb77e8f8b..226c756bf4 100644
--- a/board/sc520_spunk/Makefile
+++ b/board/sc520_spunk/Makefile
@@ -36,7 +36,7 @@ OBJS := $(addprefix $(obj),$(COBJS))
SOBJS := $(addprefix $(obj),$(SOBJS))
$(LIB): $(obj).depend $(OBJS) $(SOBJS)
- $(AR) $(ARFLAGS) $@ $(OBJS)
+ $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
clean:
rm -f $(SOBJS) $(OBJS)
diff --git a/board/sc520_spunk/flash.c b/board/sc520_spunk/flash.c
index 4942e598d3..0b4bf68894 100644
--- a/board/sc520_spunk/flash.c
+++ b/board/sc520_spunk/flash.c
@@ -33,7 +33,6 @@
#define PROBE_BUFFER_SIZE 1024
static unsigned char buffer[PROBE_BUFFER_SIZE];
-
#define SC520_MAX_FLASH_BANKS 1
#define SC520_FLASH_BANK0_BASE 0x38000000 /* BOOTCS */
#define SC520_FLASH_BANKSIZE 0x8000000
@@ -62,7 +61,6 @@ flash_info_t flash_info[SC520_MAX_FLASH_BANKS];
/*-----------------------------------------------------------------------
*/
-
static u32 _probe_flash(u32 addr, u32 bw, int il)
{
u32 result=0;
@@ -180,7 +178,6 @@ static u32 _probe_flash(u32 addr, u32 bw, int il)
break;
}
-
return result;
}
@@ -215,11 +212,9 @@ static int identify_flash(unsigned address, int width)
enable_interrupts();
}
-
vendor = res >> 16;
device = res & 0xffff;
-
return res;
}
@@ -385,7 +380,6 @@ void flash_print_info(flash_info_t *info)
break;
}
-
printf(" Size: %ld MB in %d Sectors\n",
info->size >> 20, info->sector_count);
@@ -399,13 +393,13 @@ void flash_print_info(flash_info_t *info)
}
printf ("\n");
- done:
+done:
+ return;
}
/*-----------------------------------------------------------------------
*/
-
static u32 _amd_erase_flash(u32 addr, u32 sector)
{
unsigned elapsed;
@@ -467,7 +461,6 @@ static u32 _intel_erase_flash(u32 addr, u32 sector)
*(volatile u16*)(addr + sector) = 0x0020; /* erase setup */
*(volatile u16*)(addr + sector) = 0x00D0; /* erase confirm */
-
/* Wait at least 80us - let's wait 1 ms */
__udelay(1000);
@@ -486,7 +479,6 @@ static u32 _intel_erase_flash(u32 addr, u32 sector)
return 0;
}
-
extern int _intel_erase_flash_end;
asm ("_intel_erase_flash_end:\n"
".long 0\n");
@@ -548,7 +540,6 @@ int flash_erase(flash_info_t *info, int s_first, int s_last)
printf ("\n");
}
-
/* Start erase on unprotected sectors */
for (sect = s_first; sect<=s_last; sect++) {
@@ -566,7 +557,6 @@ int flash_erase(flash_info_t *info, int s_first, int s_last)
enable_interrupts();
}
-
if (res) {
printf("Erase timed out, sector %d\n", sect);
return res;
@@ -576,7 +566,6 @@ int flash_erase(flash_info_t *info, int s_first, int s_last)
}
}
-
return 0;
}
@@ -586,11 +575,11 @@ int flash_erase(flash_info_t *info, int s_first, int s_last)
* 1 - write timeout
* 2 - Flash not erased
*/
-static int _amd_write_word(unsigned start, unsigned dest, unsigned data)
+static int _amd_write_word(unsigned start, unsigned dest, u16 data)
{
- volatile u16 *addr2 = (u16*)start;
- volatile u16 *dest2 = (u16*)dest;
- volatile u16 *data2 = (u16*)&data;
+ volatile u16 *addr2 = (volatile u16*)start;
+ volatile u16 *dest2 = (volatile u16*)dest;
+ volatile u16 *data2 = (volatile u16*)&data;
int i;
unsigned elapsed;
@@ -601,7 +590,6 @@ static int _amd_write_word(unsigned start, unsigned dest, unsigned data)
for (i = 0; i < 2; i++) {
-
addr2[0x5555] = 0x00AA;
addr2[0x2aaa] = 0x0055;
addr2[0x5555] = 0x00A0;
@@ -630,7 +618,6 @@ extern int _amd_write_word_end;
asm ("_amd_write_word_end:\n"
".long 0\n");
-
static int _intel_write_word(unsigned start, unsigned dest, unsigned data)
{
int i;
@@ -663,14 +650,12 @@ static int _intel_write_word(unsigned start, unsigned dest, unsigned data)
return 0;
-
}
extern int _intel_write_word_end;
asm ("_intel_write_word_end:\n"
".long 0\n");
-
/*-----------------------------------------------------------------------
* Copy memory to flash, returns:
* 0 - OK
@@ -715,10 +700,8 @@ int write_buff(flash_info_t *info, uchar *src, ulong addr, ulong cnt)
return 3;
}
-
wp = (addr & ~3); /* get lower word aligned address */
-
/*
* handle unaligned start bytes
*/
@@ -805,5 +788,4 @@ int write_buff(flash_info_t *info, uchar *src, ulong addr, ulong cnt)
}
return rc;
-
}
diff --git a/board/sc520_spunk/sc520_spunk_asm.S b/board/sc520_spunk/sc520_spunk_asm.S
index 8b3410399b..0127076db1 100644
--- a/board/sc520_spunk/sc520_spunk_asm.S
+++ b/board/sc520_spunk/sc520_spunk_asm.S
@@ -73,8 +73,8 @@ done: movl $0xfffefc32,%edx
jmp *%ebp /* return to caller */
-.globl __show_boot_progress
-__show_boot_progress:
+.globl show_boot_progress
+show_boot_progress:
movl $0xfffefc32,%edx
xorw $0xffff, %ax
movw %ax,(%edx)
diff --git a/board/tqm8272/Makefile b/board/tqm8272/Makefile
index 3dbf913d2e..6730263512 100644
--- a/board/tqm8272/Makefile
+++ b/board/tqm8272/Makefile
@@ -1,5 +1,5 @@
#
-# (C) Copyright 2001
+# (C) Copyright 2001-2008
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this
@@ -22,19 +22,26 @@
#
include $(TOPDIR)/config.mk
+ifneq ($(OBJTREE),$(SRCTREE))
+$(shell mkdir -p $(obj)../tqm8xx/)
+endif
-LIB = lib$(BOARD).a
+LIB = $(obj)lib$(BOARD).a
-OBJS = $(BOARD).o ../tqm8xx/load_sernum_ethaddr.o
+COBJS = $(BOARD).o ../tqm8xx/load_sernum_ethaddr.o
-$(LIB): .depend $(OBJS)
- $(AR) crv $@ $(OBJS)
+SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
+OBJS := $(addprefix $(obj),$(COBJS))
+SOBJS := $(addprefix $(obj),$(SOBJS))
+
+$(LIB): $(obj).depend $(OBJS)
+ $(AR) $(ARFLAGS) $@ $(OBJS)
#########################################################################
-.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
- $(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
-sinclude .depend
+sinclude $(obj).depend
#########################################################################
diff --git a/board/v38b/config.mk b/board/v38b/config.mk
index 75577fcbec..bc55fc7b29 100644
--- a/board/v38b/config.mk
+++ b/board/v38b/config.mk
@@ -25,7 +25,7 @@
# MarelV38B board
#
-sinclude $(TOPDIR)/board/$(BOARDDIR)/config.tmp
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
TEXT_BASE = 0xFF000000
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 44f6b9f6ea..0d67132363 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -433,17 +433,6 @@ static int fit_check_kernel (const void *fit, int os_noffset, int verify)
}
show_boot_progress (105);
-#ifdef CONFIG_LOGBUFFER
-#ifndef CONFIG_ALT_LB_ADDR
- kbd=gd->bd;
- /* Prevent initrd from overwriting logbuffer */
- if (initrd_high < (kbd->bi_memsize-LOGBUFF_LEN-LOGBUFF_OVERHEAD))
- initrd_high = kbd->bi_memsize-LOGBUFF_LEN-LOGBUFF_OVERHEAD;
- debug ("## Logbuffer at 0x%08lX ", kbd->bi_memsize-LOGBUFF_LEN);
-#else
- debug ("## Logbuffer at 0x%08lX ", CONFIG_ALT_LB_ADDR);
-#endif
-#endif
if (!fit_image_check_target_arch (fit, os_noffset)) {
puts ("Unsupported Architecture\n");
show_boot_progress (-105);
diff --git a/common/cmd_ide.c b/common/cmd_ide.c
index ead7e10d66..cac99d5fe7 100644
--- a/common/cmd_ide.c
+++ b/common/cmd_ide.c
@@ -52,10 +52,6 @@
# include <status_led.h>
#endif
-#ifndef __PPC__
-#include <asm/io.h>
-#endif
-
#ifdef CONFIG_IDE_8xx_DIRECT
DECLARE_GLOBAL_DATA_PTR;
#endif
diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c
index dc05f68bfe..9c5d1fcb90 100644
--- a/common/cmd_nvedit.c
+++ b/common/cmd_nvedit.c
@@ -68,16 +68,6 @@ DECLARE_GLOBAL_DATA_PTR;
/************************************************************************
************************************************************************/
-/* Function that returns a pointer to a value from the environment */
-/* (Only memory version supported / needed). */
-extern uchar *env_get_addr(int);
-
-/* Function that updates CRC of the enironment */
-extern void env_crc_update (void);
-
-/************************************************************************
-************************************************************************/
-
/*
* Table with supported baudrates (defined in config_xyz.h)
*/
diff --git a/common/env_common.c b/common/env_common.c
index f366fdbeb2..a49481244e 100644
--- a/common/env_common.c
+++ b/common/env_common.c
@@ -50,6 +50,7 @@ extern void env_relocate_spec (void);
extern uchar env_get_char_spec(int);
static uchar env_get_char_init (int index);
+uchar (*env_get_char)(int) = env_get_char_init;
/************************************************************************
* Default settings to be used when no valid environment is found
@@ -181,19 +182,6 @@ uchar env_get_char_memory (int index)
}
#endif
-uchar env_get_char (int index)
-{
- uchar c;
-
- /* if relocated to RAM */
- if (gd->flags & GD_FLG_RELOC)
- c = env_get_char_memory(index);
- else
- c = env_get_char_init(index);
-
- return (c);
-}
-
uchar *env_get_addr (int index)
{
if (gd->env_valid) {
@@ -227,6 +215,11 @@ void env_relocate (void)
DEBUGF ("%s[%d] malloced ENV at %p\n", __FUNCTION__,__LINE__,env_ptr);
#endif
+ /*
+ * After relocation to RAM, we can always use the "memory" functions
+ */
+ env_get_char = env_get_char_memory;
+
if (gd->env_valid == 0) {
#if defined(CONFIG_GTH) || defined(CFG_ENV_IS_NOWHERE) /* Environment not changable */
puts ("Using default environment\n\n");
diff --git a/common/env_eeprom.c b/common/env_eeprom.c
index fae87ca33f..9e1a20194d 100644
--- a/common/env_eeprom.c
+++ b/common/env_eeprom.c
@@ -38,9 +38,6 @@ env_t *env_ptr = NULL;
char * env_name_spec = "EEPROM";
-extern uchar env_get_char_memory (int index);
-
-
uchar env_get_char_spec (int index)
{
uchar c;
diff --git a/common/env_nvram.c b/common/env_nvram.c
index bfc8d02f85..fa77719123 100644
--- a/common/env_nvram.c
+++ b/common/env_nvram.c
@@ -63,8 +63,6 @@ char * env_name_spec = "NVRAM";
extern uchar default_environment[];
extern int default_environment_size;
-extern uchar env_get_char_memory (int index);
-
#ifdef CONFIG_AMIGAONEG3SE
uchar env_get_char_spec (int index)
{
diff --git a/common/ft_build.c b/common/ft_build.c
index 0b6c2b7334..b951178a1d 100644
--- a/common/ft_build.c
+++ b/common/ft_build.c
@@ -396,7 +396,6 @@ void *ft_get_prop(void *bphp, const char *propname, int *szp)
/********************************************************************/
-
void ft_setup(void *blob, bd_t * bd, ulong initrd_start, ulong initrd_end)
{
u32 *p;
diff --git a/common/image.c b/common/image.c
index 4a024d4dfb..67e594df69 100644
--- a/common/image.c
+++ b/common/image.c
@@ -23,7 +23,6 @@
* MA 02111-1307 USA
*/
-
#ifndef USE_HOSTCC
#include <common.h>
#include <watchdog.h>
@@ -36,10 +35,6 @@
#include <dataflash.h>
#endif
-#ifdef CONFIG_LOGBUFFER
-#include <logbuff.h>
-#endif
-
#if defined(CONFIG_TIMESTAMP) || defined(CONFIG_CMD_DATE)
#include <rtc.h>
#endif
@@ -93,6 +88,7 @@ static table_entry_t uimage_arch[] = {
{ IH_ARCH_MIPS64, "mips64", "MIPS 64 Bit", },
{ IH_ARCH_NIOS, "nios", "NIOS", },
{ IH_ARCH_NIOS2, "nios2", "NIOS II", },
+ { IH_ARCH_PPC, "powerpc", "PowerPC", },
{ IH_ARCH_PPC, "ppc", "PowerPC", },
{ IH_ARCH_S390, "s390", "IBM S390", },
{ IH_ARCH_SH, "sh", "SuperH", },
@@ -241,7 +237,7 @@ void image_multi_getimg (image_header_t *hdr, ulong idx,
{
int i;
uint32_t *size;
- ulong offset, tail, count, img_data;
+ ulong offset, count, img_data;
/* get number of component */
count = image_multi_count (hdr);
@@ -257,19 +253,15 @@ void image_multi_getimg (image_header_t *hdr, ulong idx,
if (idx < count) {
*len = uimage_to_cpu (size[idx]);
offset = 0;
- tail = 0;
/* go over all indices preceding requested component idx */
for (i = 0; i < idx; i++) {
- /* add up i-th component size */
- offset += uimage_to_cpu (size[i]);
-
- /* add up alignment for i-th component */
- tail += (4 - uimage_to_cpu (size[i]) % 4);
+ /* add up i-th component size, rounding up to 4 bytes */
+ offset += (uimage_to_cpu (size[i]) + 3) & ~3 ;
}
/* calculate idx-th component data address */
- *data = img_data + offset + tail;
+ *data = img_data + offset;
} else {
*len = 0;
*data = 0;
diff --git a/common/main.c b/common/main.c
index 21e7afab61..a17b60b3aa 100644
--- a/common/main.c
+++ b/common/main.c
@@ -40,7 +40,7 @@
#include <post.h>
-#if defined(CONFIG_SILENT_CONSOLE) || defined(CONFIG_POST)
+#if defined(CONFIG_SILENT_CONSOLE) || defined(CONFIG_POST) || defined(CONFIG_CMDLINE_EDITING)
DECLARE_GLOBAL_DATA_PTR;
#endif
@@ -67,11 +67,9 @@ static int abortboot(int);
char console_buffer[CFG_CBSIZE]; /* console I/O buffer */
-#ifndef CONFIG_CMDLINE_EDITING
static char * delete_char (char *buffer, char *p, int *colp, int *np, int plen);
static char erase_seq[] = "\b \b"; /* erase sequence */
static char tab_seq[] = " "; /* used to expand TABs */
-#endif /* CONFIG_CMDLINE_EDITING */
#ifdef CONFIG_BOOT_RETRY_TIME
static uint64_t endtime = 0; /* must be set, default is instant timeout */
@@ -947,11 +945,26 @@ int readline_into_buffer (const char *const prompt, char * buffer)
initted = 1;
}
- puts (prompt);
- rc = cread_line(prompt, p, &len);
- return rc < 0 ? rc : len;
-#else
+ /*
+ * History uses a global array which is not
+ * writable until after relocation to RAM.
+ * Revert to non-history version if still
+ * running from flash.
+ */
+ if (gd->flags & GD_FLG_RELOC) {
+ if (!initted) {
+ hist_init();
+ initted = 1;
+ }
+
+ puts (prompt);
+
+ rc = cread_line(prompt, p, &len);
+ return rc < 0 ? rc : len;
+
+ } else {
+#endif /* CONFIG_CMDLINE_EDITING */
char * p_buf = p;
int n = 0; /* buffer index */
int plen = 0; /* prompt length */
@@ -1047,12 +1060,13 @@ int readline_into_buffer (const char *const prompt, char * buffer)
}
}
}
-#endif /* CONFIG_CMDLINE_EDITING */
+#ifdef CONFIG_CMDLINE_EDITING
+ }
+#endif
}
/****************************************************************************/
-#ifndef CONFIG_CMDLINE_EDITING
static char * delete_char (char *buffer, char *p, int *colp, int *np, int plen)
{
char *s;
@@ -1082,7 +1096,6 @@ static char * delete_char (char *buffer, char *p, int *colp, int *np, int plen)
(*np)--;
return (p);
}
-#endif /* CONFIG_CMDLINE_EDITING */
/****************************************************************************/
diff --git a/common/usb.c b/common/usb.c
index 4df01eabe5..2fa5254eb4 100644
--- a/common/usb.c
+++ b/common/usb.c
@@ -1088,7 +1088,7 @@ int usb_hub_configure(struct usb_device *dev)
/* silence compiler warning if USB_BUFSIZ is > 256 [= sizeof(char)] */
i = descriptor->bLength;
if (i > USB_BUFSIZ) {
- USB_HUB_PRINTF("usb_hub_configure: failed to get hub descriptor - too long: %d\N",
+ USB_HUB_PRINTF("usb_hub_configure: failed to get hub descriptor - too long: %d\n",
descriptor->bLength);
return -1;
}
diff --git a/cpu/74xx_7xx/cache.S b/cpu/74xx_7xx/cache.S
index a793d799d1..3a745cbe03 100644
--- a/cpu/74xx_7xx/cache.S
+++ b/cpu/74xx_7xx/cache.S
@@ -329,14 +329,28 @@ _GLOBAL(dcache_status)
blr
/*
- * Invalidate L2 cache using L2I and polling L2IP
+ * Invalidate L2 cache using L2I and polling L2IP or L2I
*/
_GLOBAL(l2cache_invalidate)
sync
+ mfspr r3, l2cr
oris r3, r3, L2CR_L2I@h
sync
mtspr l2cr, r3
sync
+ mfspr r3, PVR
+ sync
+ rlwinm r3, r3, 16,16,31
+ cmpli 0,r3,0x8000 /* 7451, 7441 */
+ beq 0,inv_7450
+ cmpli 0,r3,0x8001 /* 7455, 7445 */
+ beq 0,inv_7450
+ cmpli 0,r3,0x8002 /* 7457, 7447 */
+ beq 0,inv_7450
+ cmpli 0,r3,0x8003 /* 7447A */
+ beq 0,inv_7450
+ cmpli 0,r3,0x8004 /* 7448 */
+ beq 0,inv_7450
invl2:
mfspr r3, l2cr
andi. r3, r3, L2CR_L2IP
@@ -348,6 +362,11 @@ invl2:
mtspr l2cr, r3
sync
blr
+inv_7450:
+ mfspr r3, l2cr
+ andis. r3, r3, L2CR_L2I@h
+ bne inv_7450
+ blr
/*
* Enable L2 cache
diff --git a/cpu/arm1136/mx31/generic.c b/cpu/arm1136/mx31/generic.c
index 16b2cf1364..29c08c105f 100644
--- a/cpu/arm1136/mx31/generic.c
+++ b/cpu/arm1136/mx31/generic.c
@@ -39,7 +39,7 @@ static u32 mx31_decode_pll(u32 reg, u32 infreq)
(mfd * pd)) << 10;
}
-u32 mx31_get_mpl_dpdgck_clk(void)
+static u32 mx31_get_mpl_dpdgck_clk(void)
{
u32 infreq;
@@ -51,7 +51,7 @@ u32 mx31_get_mpl_dpdgck_clk(void)
return mx31_decode_pll(__REG(CCM_MPCTL), infreq);
}
-u32 mx31_get_mcu_main_clk(void)
+static u32 mx31_get_mcu_main_clk(void)
{
/* For now we assume mpl_dpdgck_clk == mcu_main_clk
* which should be correct for most boards
diff --git a/cpu/arm920t/s3c24x0/usb.c b/cpu/arm920t/s3c24x0/usb.c
index ef5d5bf71b..421ebb4373 100644
--- a/cpu/arm920t/s3c24x0/usb.c
+++ b/cpu/arm920t/s3c24x0/usb.c
@@ -69,4 +69,4 @@ int usb_cpu_init_fail (void)
}
# endif /* defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410) */
-#endif /* defined(CONFIG_USB_OHCI) && defined(CFG_USB_OHCI_CPU_INIT) */
+#endif /* defined(CONFIG_USB_OHCI_NEW) && defined(CFG_USB_OHCI_CPU_INIT) */
diff --git a/cpu/arm926ejs/at91sam9/Makefile b/cpu/arm926ejs/at91sam9/Makefile
index 203abc28e1..44cde1a9c3 100644
--- a/cpu/arm926ejs/at91sam9/Makefile
+++ b/cpu/arm926ejs/at91sam9/Makefile
@@ -1,6 +1,6 @@
#
# (C) Copyright 2000-2008
-# Wolfgang Denk, DENX Software Engineering, wd <at> denx.de.
+# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this
# project.
diff --git a/cpu/arm926ejs/at91sam9/ether.c b/cpu/arm926ejs/at91sam9/ether.c
index e4f56012aa..7e11fe4d8e 100644
--- a/cpu/arm926ejs/at91sam9/ether.c
+++ b/cpu/arm926ejs/at91sam9/ether.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/cpu/arm926ejs/at91sam9/lowlevel_init.S b/cpu/arm926ejs/at91sam9/lowlevel_init.S
index 40a3f6aaef..ec6ad5da18 100644
--- a/cpu/arm926ejs/at91sam9/lowlevel_init.S
+++ b/cpu/arm926ejs/at91sam9/lowlevel_init.S
@@ -2,7 +2,7 @@
* AT91CAP9/SAM9 setup stuff
*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/cpu/arm926ejs/at91sam9/timer.c b/cpu/arm926ejs/at91sam9/timer.c
index 4e79466286..c79ec7e7ae 100644
--- a/cpu/arm926ejs/at91sam9/timer.c
+++ b/cpu/arm926ejs/at91sam9/timer.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/cpu/arm926ejs/at91sam9/usb.c b/cpu/arm926ejs/at91sam9/usb.c
index d678897dc7..441349df3a 100644
--- a/cpu/arm926ejs/at91sam9/usb.c
+++ b/cpu/arm926ejs/at91sam9/usb.c
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2006
- * DENX Software Engineering <mk <at> denx.de>
+ * DENX Software Engineering <mk@denx.de>
*
* See file CREDITS for list of people who contributed to this
* project.
diff --git a/cpu/i386/start.S b/cpu/i386/start.S
index 1a54dd10e3..51a27aa21d 100644
--- a/cpu/i386/start.S
+++ b/cpu/i386/start.S
@@ -55,7 +55,7 @@ early_board_init_ret:
/* so we try to indicate progress */
movw $0x01, %ax
movl $.progress0, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress0:
/* size memory */
@@ -74,7 +74,7 @@ mem_init_ret:
/* indicate (lack of) progress */
movw $0x81, %ax
movl $.progress0a, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress0a:
jmp die
mem_ok:
@@ -82,7 +82,7 @@ mem_ok:
/* indicate progress */
movw $0x02, %ax
movl $.progress1, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress1:
/* create a stack after the bss */
@@ -104,7 +104,7 @@ no_stack:
/* indicate (lack of) progress */
movw $0x82, %ax
movl $.progress1a, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress1a:
jmp die
@@ -113,7 +113,7 @@ stack_ok:
/* indicate progress */
movw $0x03, %ax
movl $.progress2, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress2:
/* copy data section to ram, size must be 4-byte aligned */
@@ -136,7 +136,7 @@ data_fail:
/* indicate (lack of) progress */
movw $0x83, %ax
movl $.progress2a, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress2a:
jmp die
@@ -145,7 +145,7 @@ data_ok:
/* indicate progress */
movw $0x04, %ax
movl $.progress3, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress3:
/* clear bss section in ram, size must be 4-byte aligned */
@@ -168,7 +168,7 @@ bss_fail:
/* indicate (lack of) progress */
movw $0x84, %ax
movl $.progress3a, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress3a:
jmp die
@@ -180,7 +180,7 @@ bss_ok:
/* indicate progress */
movw $0x05, %ax
movl $.progress4, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress4:
call start_i386boot /* Enter, U-boot! */
@@ -188,7 +188,7 @@ bss_ok:
/* indicate (lack of) progress */
movw $0x85, %ax
movl $.progress4a, %ebp
- jmp __show_boot_progress
+ jmp show_boot_progress
.progress4a:
die: hlt
diff --git a/cpu/mips/cache.S b/cpu/mips/cache.S
index 428d251bf1..1b0efc34a7 100644
--- a/cpu/mips/cache.S
+++ b/cpu/mips/cache.S
@@ -240,14 +240,16 @@ NESTED(mips_cache_reset, 0, ra)
*/
move a1, t2
move a2, t4
- bal mips_init_icache
+ PTR_LA t7, mips_init_icache
+ jalr t7
/*
* then initialize D-cache.
*/
move a1, t3
move a2, t5
- bal mips_init_dcache
+ PTR_LA t7, mips_init_dcache
+ jalr t7
jr RA
END(mips_cache_reset)
diff --git a/cpu/mpc86xx/cache.S b/cpu/mpc86xx/cache.S
index f316b3ec13..2e4ea0239f 100644
--- a/cpu/mpc86xx/cache.S
+++ b/cpu/mpc86xx/cache.S
@@ -338,7 +338,7 @@ _GLOBAL(l2cache_invalidate)
invl2:
mfspr r3, l2cr
- andi. r3, r3, L2CR_L2I@h
+ andis. r3, r3, L2CR_L2I@h
bne invl2
blr
diff --git a/cpu/ppc4xx/cpu.c b/cpu/ppc4xx/cpu.c
index 54cc256797..39f439df98 100644
--- a/cpu/ppc4xx/cpu.c
+++ b/cpu/ppc4xx/cpu.c
@@ -346,6 +346,26 @@ int checkcpu (void)
strcpy(addstr, "No Security support");
break;
+ case PVR_405EX1_RC:
+ puts("EX Rev. C");
+ strcpy(addstr, "Security support");
+ break;
+
+ case PVR_405EX2_RC:
+ puts("EX Rev. C");
+ strcpy(addstr, "No Security support");
+ break;
+
+ case PVR_405EXR1_RC:
+ puts("EXr Rev. C");
+ strcpy(addstr, "Security support");
+ break;
+
+ case PVR_405EXR2_RC:
+ puts("EXr Rev. C");
+ strcpy(addstr, "No Security support");
+ break;
+
#if defined(CONFIG_440)
case PVR_440GP_RB:
puts("GP Rev. B");
diff --git a/disk/part.c b/disk/part.c
index 3c71208a12..316e254739 100644
--- a/disk/part.c
+++ b/disk/part.c
@@ -109,44 +109,45 @@ void dev_print (block_dev_desc_t *dev_desc)
lbaint_t lba512;
#endif
- if (dev_desc->type==DEV_TYPE_UNKNOWN) {
- puts ("not available\n");
- return;
- }
- if (dev_desc->if_type==IF_TYPE_SCSI) {
- printf ("(%d:%d) ", dev_desc->target,dev_desc->lun);
- }
- if (dev_desc->if_type==IF_TYPE_IDE) {
- printf ("Model: %s Firm: %s Ser#: %s\n",
+ switch (dev_desc->type) {
+ case IF_TYPE_SCSI:
+ printf ("(%d:%d) Vendor: %s Prod.: %s Rev: %s\n",
+ dev_desc->target,dev_desc->lun,
dev_desc->vendor,
- dev_desc->revision,
- dev_desc->product);
- }
- if (dev_desc->if_type==IF_TYPE_SATA) {
+ dev_desc->product,
+ dev_desc->revision);
+ break;
+ case IF_TYPE_IDE:
+ case IF_TYPE_SATA:
printf ("Model: %s Firm: %s Ser#: %s\n",
dev_desc->vendor,
dev_desc->revision,
dev_desc->product);
- } else {
- printf ("Vendor: %s Prod.: %s Rev: %s\n",
- dev_desc->vendor,
- dev_desc->product,
- dev_desc->revision);
+ break;
+ case DEV_TYPE_UNKNOWN:
+ default:
+ puts ("not available\n");
+ return;
}
puts (" Type: ");
if (dev_desc->removable)
puts ("Removable ");
switch (dev_desc->type & 0x1F) {
- case DEV_TYPE_HARDDISK: puts ("Hard Disk");
- break;
- case DEV_TYPE_CDROM: puts ("CD ROM");
- break;
- case DEV_TYPE_OPDISK: puts ("Optical Device");
- break;
- case DEV_TYPE_TAPE: puts ("Tape");
- break;
- default: printf ("# %02X #", dev_desc->type & 0x1F);
- break;
+ case DEV_TYPE_HARDDISK:
+ puts ("Hard Disk");
+ break;
+ case DEV_TYPE_CDROM:
+ puts ("CD ROM");
+ break;
+ case DEV_TYPE_OPDISK:
+ puts ("Optical Device");
+ break;
+ case DEV_TYPE_TAPE:
+ puts ("Tape");
+ break;
+ default:
+ printf ("# %02X #", dev_desc->type & 0x1F);
+ break;
}
puts ("\n");
if ((dev_desc->lba * dev_desc->blksz)>0L) {
@@ -281,20 +282,27 @@ static void print_part_header (const char *type, block_dev_desc_t * dev_desc)
{
puts ("\nPartition Map for ");
switch (dev_desc->if_type) {
- case IF_TYPE_IDE: puts ("IDE");
- break;
- case IF_TYPE_SATA: puts ("SATA");
- break;
- case IF_TYPE_SCSI: puts ("SCSI");
- break;
- case IF_TYPE_ATAPI: puts ("ATAPI");
- break;
- case IF_TYPE_USB: puts ("USB");
- break;
- case IF_TYPE_DOC: puts ("DOC");
- break;
- default: puts ("UNKNOWN");
- break;
+ case IF_TYPE_IDE:
+ puts ("IDE");
+ break;
+ case IF_TYPE_SATA:
+ puts ("SATA");
+ break;
+ case IF_TYPE_SCSI:
+ puts ("SCSI");
+ break;
+ case IF_TYPE_ATAPI:
+ puts ("ATAPI");
+ break;
+ case IF_TYPE_USB:
+ puts ("USB");
+ break;
+ case IF_TYPE_DOC:
+ puts ("DOC");
+ break;
+ default:
+ puts ("UNKNOWN");
+ break;
}
printf (" device %d -- Partition Type: %s\n\n",
dev_desc->dev, type);
diff --git a/doc/README.nand-boot-ppc440 b/doc/README.nand-boot-ppc440
index a1c1d8c444..1e9c102644 100644
--- a/doc/README.nand-boot-ppc440
+++ b/doc/README.nand-boot-ppc440
@@ -9,7 +9,7 @@ The PPC440EP(x)/GR(x) cpu's can boot directly from NAND FLASH,
completely without NOR FLASH. This can be done by using the NAND
boot feature of the 440 NAND flash controller (NDFC).
-Here a short desciption of the different boot stages:
+Here a short description of the different boot stages:
a) IPL (Initial Program Loader, integrated inside CPU)
------------------------------------------------------
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index d22c8895da..c17dcf4371 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -1,7 +1,7 @@
/*
* SMSC LAN9[12]1[567] Network driver
*
- * (c) 2007 Pengutronix, Sascha Hauer <s.hauer <at> pengutronix.de>
+ * (c) 2007 Pengutronix, Sascha Hauer <s.hauer@pengutronix.de>
*
* See file CREDITS for list of people who contributed to this
* project.
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 7944b6684a..b820d5e853 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -221,7 +221,7 @@ pci_dev_t pci_find_device(unsigned int vendor, unsigned int device, int index)
*/
unsigned long pci_hose_phys_to_bus (struct pci_controller *hose,
- unsigned long phys_addr,
+ phys_addr_t phys_addr,
unsigned long flags)
{
struct pci_region *res;
@@ -253,9 +253,9 @@ Done:
return 0;
}
-unsigned long pci_hose_bus_to_phys(struct pci_controller* hose,
- unsigned long bus_addr,
- unsigned long flags)
+phys_addr_t pci_hose_bus_to_phys(struct pci_controller* hose,
+ unsigned long bus_addr,
+ unsigned long flags)
{
struct pci_region *res;
int i;
@@ -425,9 +425,6 @@ int pci_hose_scan_bus(struct pci_controller *hose, int bus)
dev < PCI_BDF(bus,PCI_MAX_PCI_DEVICES-1,PCI_MAX_PCI_FUNCTIONS-1);
dev += PCI_BDF(0,0,1))
{
-
- /* Bus 0 is not necessarily PCI bridge. */
-#if defined(CONFIG_PCI_SKIP_HOST_BRIDGE)
/* Skip our host bridge */
if ( dev == PCI_BDF(hose->first_busno,0,0) ) {
#if defined(CONFIG_PCI_CONFIG_HOST_BRIDGE) /* don't skip host bridge */
@@ -437,11 +434,10 @@ int pci_hose_scan_bus(struct pci_controller *hose, int bus)
if (getenv("pciconfighost") == NULL) {
continue; /* Skip our host bridge */
}
-#else /* CONFIG_PCI_CONFIG_HOST_BRIDGE */
+#else
continue; /* Skip our host bridge */
-#endif /* CONFIG_PCI_CONFIG_HOST_BRIDGE */
+#endif
}
-#endif /* CONFIG_PCI_SKIP_HOST_BRIDGE */
if (PCI_FUNC(dev) && !found_multi)
continue;
@@ -477,11 +473,8 @@ int pci_hose_scan_bus(struct pci_controller *hose, int bus)
hose->fixup_irq(hose, dev);
#ifdef CONFIG_PCI_SCAN_SHOW
-#if defined(CONFIG_PCI_SKIP_HOST_BRIDGE)
/* Skip our host bridge */
- if ( dev != PCI_BDF(hose->first_busno,0,0) )
-#endif
- {
+ if ( dev != PCI_BDF(hose->first_busno,0,0) ) {
unsigned char int_line;
pci_hose_read_config_byte(hose, dev, PCI_INTERRUPT_LINE,
diff --git a/drivers/pcmcia/Makefile b/drivers/pcmcia/Makefile
index bba1ab8510..53a485d0d1 100644
--- a/drivers/pcmcia/Makefile
+++ b/drivers/pcmcia/Makefile
@@ -25,6 +25,7 @@ include $(TOPDIR)/config.mk
LIB := $(obj)libpcmcia.a
+COBJS-$(CONFIG_I82365) += i82365.o
COBJS-y += mpc8xx_pcmcia.o
COBJS-y += pxa_pcmcia.o
COBJS-y += rpx_pcmcia.o
diff --git a/drivers/pcmcia/i82365.c b/drivers/pcmcia/i82365.c
index a40fcf41c9..1e2431e497 100644
--- a/drivers/pcmcia/i82365.c
+++ b/drivers/pcmcia/i82365.c
@@ -31,8 +31,6 @@
#include <common.h>
-#ifdef CONFIG_I82365
-
#include <command.h>
#include <pci.h>
#include <pcmcia.h>
@@ -1010,5 +1008,3 @@ static void i82365_dump_regions (pci_dev_t dev)
ide[4], ide[5], ide[6], ide[7]);
}
#endif /* DEBUG */
-
-#endif /* CONFIG_I82365 */
diff --git a/examples/.gitignore b/examples/.gitignore
index 059b09641a..806425ff78 100644
--- a/examples/.gitignore
+++ b/examples/.gitignore
@@ -1,5 +1,9 @@
+/82559_eeprom
/hello_world
/interrupt
+/mem_to_mem_idma2intr
+/test_burst
+/timer
/sched
/smc91111_eeprom
*.bin
diff --git a/include/.gitignore b/include/.gitignore
index 03a533ced4..ef7dd5fc8a 100644
--- a/include/.gitignore
+++ b/include/.gitignore
@@ -1,7 +1,7 @@
/autoconf.mk*
/asm
-/asm-blackfin/arch
-/asm-ppc/arch
+/asm-*/arch
+/asm-*/proc
/bmp_logo.h
/config.h
/config.mk
diff --git a/include/asm-arm/arch-at91sam9/at91_pio.h b/include/asm-arm/arch-at91sam9/at91_pio.h
index 84c3866d30..f6ce1f924e 100644
--- a/include/asm-arm/arch-at91sam9/at91_pio.h
+++ b/include/asm-arm/arch-at91sam9/at91_pio.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/at91_pio.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91_pio.h]
*
* Copyright (C) 2005 Ivan Kokshaysky
* Copyright (C) SAN People
diff --git a/include/asm-arm/arch-at91sam9/at91_pit.h b/include/asm-arm/arch-at91sam9/at91_pit.h
index 5026325a5a..94dd242a5f 100644
--- a/include/asm-arm/arch-at91sam9/at91_pit.h
+++ b/include/asm-arm/arch-at91sam9/at91_pit.h
@@ -1,5 +1,8 @@
/*
- * include/asm-arm/arch-at91/at91_pit.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91_pit.h]
+ *
+ * Copyright (C) 2007 Andrew Victor
+ * Copyright (C) 2007 Atmel Corporation.
*
* Periodic Interval Timer (PIT) - System peripherals regsters.
* Based on AT91SAM9261 datasheet revision D.
diff --git a/include/asm-arm/arch-at91sam9/at91_pmc.h b/include/asm-arm/arch-at91sam9/at91_pmc.h
index 52cd8e5dab..103be86999 100644
--- a/include/asm-arm/arch-at91sam9/at91_pmc.h
+++ b/include/asm-arm/arch-at91sam9/at91_pmc.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/at91_pmc.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91_pmc.h]
*
* Copyright (C) 2005 Ivan Kokshaysky
* Copyright (C) SAN People
diff --git a/include/asm-arm/arch-at91sam9/at91_rstc.h b/include/asm-arm/arch-at91sam9/at91_rstc.h
index fb8d1618a2..e49caef921 100644
--- a/include/asm-arm/arch-at91sam9/at91_rstc.h
+++ b/include/asm-arm/arch-at91sam9/at91_rstc.h
@@ -1,5 +1,8 @@
/*
- * include/asm-arm/arch-at91/at91_rstc.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91_rstc.h]
+ *
+ * Copyright (C) 2007 Andrew Victor
+ * Copyright (C) 2007 Atmel Corporation.
*
* Reset Controller (RSTC) - System peripherals regsters.
* Based on AT91SAM9261 datasheet revision D.
diff --git a/include/asm-arm/arch-at91sam9/at91_spi.h b/include/asm-arm/arch-at91sam9/at91_spi.h
index aaad92621c..30643c6092 100644
--- a/include/asm-arm/arch-at91sam9/at91_spi.h
+++ b/include/asm-arm/arch-at91sam9/at91_spi.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/at91_spi.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91_spi.h]
*
* Copyright (C) 2005 Ivan Kokshaysky
* Copyright (C) SAN People
diff --git a/include/asm-arm/arch-at91sam9/at91cap9.h b/include/asm-arm/arch-at91sam9/at91cap9.h
index e16909c641..d1b33a069a 100644
--- a/include/asm-arm/arch-at91sam9/at91cap9.h
+++ b/include/asm-arm/arch-at91sam9/at91cap9.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/at91cap9.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91cap9.h]
*
* Copyright (C) 2007 Stelian Pop <stelian.pop@leadtechdesign.com>
* Copyright (C) 2007 Lead Tech Design <www.leadtechdesign.com>
diff --git a/include/asm-arm/arch-at91sam9/at91cap9_matrix.h b/include/asm-arm/arch-at91sam9/at91cap9_matrix.h
index a641686b6c..22b7e9b8f4 100644
--- a/include/asm-arm/arch-at91sam9/at91cap9_matrix.h
+++ b/include/asm-arm/arch-at91sam9/at91cap9_matrix.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/at91cap9_matrix.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91cap9_matrix.h]
*
* Copyright (C) 2007 Stelian Pop <stelian.pop@leadtechdesign.com>
* Copyright (C) 2007 Lead Tech Design <www.leadtechdesign.com>
diff --git a/include/asm-arm/arch-at91sam9/at91sam9260.h b/include/asm-arm/arch-at91sam9/at91sam9260.h
index 1bf45989b5..920a7f3c9f 100644
--- a/include/asm-arm/arch-at91sam9/at91sam9260.h
+++ b/include/asm-arm/arch-at91sam9/at91sam9260.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/at91sam9260.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91sam9260.h]
*
* (C) 2006 Andrew Victor
*
diff --git a/include/asm-arm/arch-at91sam9/at91sam9260_matrix.h b/include/asm-arm/arch-at91sam9/at91sam9260_matrix.h
index a8e9fec6c7..f8b023d932 100644
--- a/include/asm-arm/arch-at91sam9/at91sam9260_matrix.h
+++ b/include/asm-arm/arch-at91sam9/at91sam9260_matrix.h
@@ -1,5 +1,7 @@
/*
- * include/asm-arm/arch-at91/at91sam9260_matrix.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91sam9260_matrix.h]
+ *
+ * Copyright (C) 2007 Atmel Corporation.
*
* Memory Controllers (MATRIX, EBI) - System peripherals registers.
* Based on AT91SAM9260 datasheet revision B.
diff --git a/include/asm-arm/arch-at91sam9/at91sam926x_mc.h b/include/asm-arm/arch-at91sam9/at91sam926x_mc.h
deleted file mode 100644
index 041138f809..0000000000
--- a/include/asm-arm/arch-at91sam9/at91sam926x_mc.h
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * include/asm-arm/arch-at91/at91sam926x_mc.h
- *
- * Memory Controllers (SMC, SDRAMC) - System peripherals registers.
- * Based on AT91SAM9261 datasheet revision D.
- *
- * 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.
- */
-
-#ifndef AT91SAM926x_MC_H
-#define AT91SAM926x_MC_H
-
-/* SDRAM Controller (SDRAMC) registers */
-#define AT91_SDRAMC_MR (AT91_SDRAMC + 0x00) /* SDRAM Controller Mode Register */
-#define AT91_SDRAMC_MODE (0xf << 0) /* Command Mode */
-#define AT91_SDRAMC_MODE_NORMAL 0
-#define AT91_SDRAMC_MODE_NOP 1
-#define AT91_SDRAMC_MODE_PRECHARGE 2
-#define AT91_SDRAMC_MODE_LMR 3
-#define AT91_SDRAMC_MODE_REFRESH 4
-#define AT91_SDRAMC_MODE_EXT_LMR 5
-#define AT91_SDRAMC_MODE_DEEP 6
-
-#define AT91_SDRAMC_TR (AT91_SDRAMC + 0x04) /* SDRAM Controller Refresh Timer Register */
-#define AT91_SDRAMC_COUNT (0xfff << 0) /* Refresh Timer Counter */
-
-#define AT91_SDRAMC_CR (AT91_SDRAMC + 0x08) /* SDRAM Controller Configuration Register */
-#define AT91_SDRAMC_NC (3 << 0) /* Number of Column Bits */
-#define AT91_SDRAMC_NC_8 (0 << 0)
-#define AT91_SDRAMC_NC_9 (1 << 0)
-#define AT91_SDRAMC_NC_10 (2 << 0)
-#define AT91_SDRAMC_NC_11 (3 << 0)
-#define AT91_SDRAMC_NR (3 << 2) /* Number of Row Bits */
-#define AT91_SDRAMC_NR_11 (0 << 2)
-#define AT91_SDRAMC_NR_12 (1 << 2)
-#define AT91_SDRAMC_NR_13 (2 << 2)
-#define AT91_SDRAMC_NB (1 << 4) /* Number of Banks */
-#define AT91_SDRAMC_NB_2 (0 << 4)
-#define AT91_SDRAMC_NB_4 (1 << 4)
-#define AT91_SDRAMC_CAS (3 << 5) /* CAS Latency */
-#define AT91_SDRAMC_CAS_1 (1 << 5)
-#define AT91_SDRAMC_CAS_2 (2 << 5)
-#define AT91_SDRAMC_CAS_3 (3 << 5)
-#define AT91_SDRAMC_DBW (1 << 7) /* Data Bus Width */
-#define AT91_SDRAMC_DBW_32 (0 << 7)
-#define AT91_SDRAMC_DBW_16 (1 << 7)
-#define AT91_SDRAMC_TWR (0xf << 8) /* Write Recovery Delay */
-#define AT91_SDRAMC_TRC (0xf << 12) /* Row Cycle Delay */
-#define AT91_SDRAMC_TRP (0xf << 16) /* Row Precharge Delay */
-#define AT91_SDRAMC_TRCD (0xf << 20) /* Row to Column Delay */
-#define AT91_SDRAMC_TRAS (0xf << 24) /* Active to Precharge Delay */
-#define AT91_SDRAMC_TXSR (0xf << 28) /* Exit Self Refresh to Active Delay */
-
-#define AT91_SDRAMC_LPR (AT91_SDRAMC + 0x10) /* SDRAM Controller Low Power Register */
-#define AT91_SDRAMC_LPCB (3 << 0) /* Low-power Configurations */
-#define AT91_SDRAMC_LPCB_DISABLE 0
-#define AT91_SDRAMC_LPCB_SELF_REFRESH 1
-#define AT91_SDRAMC_LPCB_POWER_DOWN 2
-#define AT91_SDRAMC_LPCB_DEEP_POWER_DOWN 3
-#define AT91_SDRAMC_PASR (7 << 4) /* Partial Array Self Refresh */
-#define AT91_SDRAMC_TCSR (3 << 8) /* Temperature Compensated Self Refresh */
-#define AT91_SDRAMC_DS (3 << 10) /* Drive Strenght */
-#define AT91_SDRAMC_TIMEOUT (3 << 12) /* Time to define when Low Power Mode is enabled */
-#define AT91_SDRAMC_TIMEOUT_0_CLK_CYCLES (0 << 12)
-#define AT91_SDRAMC_TIMEOUT_64_CLK_CYCLES (1 << 12)
-#define AT91_SDRAMC_TIMEOUT_128_CLK_CYCLES (2 << 12)
-
-#define AT91_SDRAMC_IER (AT91_SDRAMC + 0x14) /* SDRAM Controller Interrupt Enable Register */
-#define AT91_SDRAMC_IDR (AT91_SDRAMC + 0x18) /* SDRAM Controller Interrupt Disable Register */
-#define AT91_SDRAMC_IMR (AT91_SDRAMC + 0x1C) /* SDRAM Controller Interrupt Mask Register */
-#define AT91_SDRAMC_ISR (AT91_SDRAMC + 0x20) /* SDRAM Controller Interrupt Status Register */
-#define AT91_SDRAMC_RES (1 << 0) /* Refresh Error Status */
-
-#define AT91_SDRAMC_MDR (AT91_SDRAMC + 0x24) /* SDRAM Memory Device Register */
-#define AT91_SDRAMC_MD (3 << 0) /* Memory Device Type */
-#define AT91_SDRAMC_MD_SDRAM 0
-#define AT91_SDRAMC_MD_LOW_POWER_SDRAM 1
-
-/* Static Memory Controller (SMC) registers */
-#define AT91_SMC_SETUP(n) (AT91_SMC + 0x00 + ((n)*0x10)) /* Setup Register for CS n */
-#define AT91_SMC_NWESETUP (0x3f << 0) /* NWE Setup Length */
-#define AT91_SMC_NWESETUP_(x) ((x) << 0)
-#define AT91_SMC_NCS_WRSETUP (0x3f << 8) /* NCS Setup Length in Write Access */
-#define AT91_SMC_NCS_WRSETUP_(x) ((x) << 8)
-#define AT91_SMC_NRDSETUP (0x3f << 16) /* NRD Setup Length */
-#define AT91_SMC_NRDSETUP_(x) ((x) << 16)
-#define AT91_SMC_NCS_RDSETUP (0x3f << 24) /* NCS Setup Length in Read Access */
-#define AT91_SMC_NCS_RDSETUP_(x) ((x) << 24)
-
-#define AT91_SMC_PULSE(n) (AT91_SMC + 0x04 + ((n)*0x10)) /* Pulse Register for CS n */
-#define AT91_SMC_NWEPULSE (0x7f << 0) /* NWE Pulse Length */
-#define AT91_SMC_NWEPULSE_(x) ((x) << 0)
-#define AT91_SMC_NCS_WRPULSE (0x7f << 8) /* NCS Pulse Length in Write Access */
-#define AT91_SMC_NCS_WRPULSE_(x)((x) << 8)
-#define AT91_SMC_NRDPULSE (0x7f << 16) /* NRD Pulse Length */
-#define AT91_SMC_NRDPULSE_(x) ((x) << 16)
-#define AT91_SMC_NCS_RDPULSE (0x7f << 24) /* NCS Pulse Length in Read Access */
-#define AT91_SMC_NCS_RDPULSE_(x)((x) << 24)
-
-#define AT91_SMC_CYCLE(n) (AT91_SMC + 0x08 + ((n)*0x10)) /* Cycle Register for CS n */
-#define AT91_SMC_NWECYCLE (0x1ff << 0 ) /* Total Write Cycle Length */
-#define AT91_SMC_NWECYCLE_(x) ((x) << 0)
-#define AT91_SMC_NRDCYCLE (0x1ff << 16) /* Total Read Cycle Length */
-#define AT91_SMC_NRDCYCLE_(x) ((x) << 16)
-
-#define AT91_SMC_MODE(n) (AT91_SMC + 0x0c + ((n)*0x10)) /* Mode Register for CS n */
-#define AT91_SMC_READMODE (1 << 0) /* Read Mode */
-#define AT91_SMC_WRITEMODE (1 << 1) /* Write Mode */
-#define AT91_SMC_EXNWMODE (3 << 4) /* NWAIT Mode */
-#define AT91_SMC_EXNWMODE_DISABLE (0 << 4)
-#define AT91_SMC_EXNWMODE_FROZEN (2 << 4)
-#define AT91_SMC_EXNWMODE_READY (3 << 4)
-#define AT91_SMC_BAT (1 << 8) /* Byte Access Type */
-#define AT91_SMC_BAT_SELECT (0 << 8)
-#define AT91_SMC_BAT_WRITE (1 << 8)
-#define AT91_SMC_DBW (3 << 12) /* Data Bus Width */
-#define AT91_SMC_DBW_8 (0 << 12)
-#define AT91_SMC_DBW_16 (1 << 12)
-#define AT91_SMC_DBW_32 (2 << 12)
-#define AT91_SMC_TDF (0xf << 16) /* Data Float Time. */
-#define AT91_SMC_TDF_(x) ((x) << 16)
-#define AT91_SMC_TDFMODE (1 << 20) /* TDF Optimization - Enabled */
-#define AT91_SMC_PMEN (1 << 24) /* Page Mode Enabled */
-#define AT91_SMC_PS (3 << 28) /* Page Size */
-#define AT91_SMC_PS_4 (0 << 28)
-#define AT91_SMC_PS_8 (1 << 28)
-#define AT91_SMC_PS_16 (2 << 28)
-#define AT91_SMC_PS_32 (3 << 28)
-
-#if defined(AT91_SMC1) /* The AT91SAM9263 has 2 Static Memory contollers */
-#define AT91_SMC1_SETUP(n) (AT91_SMC1 + 0x00 + ((n)*0x10)) /* Setup Register for CS n */
-#define AT91_SMC1_PULSE(n) (AT91_SMC1 + 0x04 + ((n)*0x10)) /* Pulse Register for CS n */
-#define AT91_SMC1_CYCLE(n) (AT91_SMC1 + 0x08 + ((n)*0x10)) /* Cycle Register for CS n */
-#define AT91_SMC1_MODE(n) (AT91_SMC1 + 0x0c + ((n)*0x10)) /* Mode Register for CS n */
-#endif
-
-#endif
diff --git a/include/asm-arm/arch-at91sam9/at91sam9_smc.h b/include/asm-arm/arch-at91sam9/at91sam9_smc.h
new file mode 100644
index 0000000000..d64511b36d
--- /dev/null
+++ b/include/asm-arm/arch-at91sam9/at91sam9_smc.h
@@ -0,0 +1,76 @@
+/*
+ * [origin: Linux kernel include/asm-arm/arch-at91/at91sam9_smc.h]
+ *
+ * Copyright (C) 2007 Andrew Victor
+ * Copyright (C) 2007 Atmel Corporation.
+ *
+ * Static Memory Controllers (SMC) - System peripherals registers.
+ * Based on AT91SAM9261 datasheet revision D.
+ *
+ * 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.
+ */
+
+#ifndef AT91SAM9_SMC_H
+#define AT91SAM9_SMC_H
+
+#define AT91_SMC_SETUP(n) (AT91_SMC + 0x00 + ((n)*0x10)) /* Setup Register for CS n */
+#define AT91_SMC_NWESETUP (0x3f << 0) /* NWE Setup Length */
+#define AT91_SMC_NWESETUP_(x) ((x) << 0)
+#define AT91_SMC_NCS_WRSETUP (0x3f << 8) /* NCS Setup Length in Write Access */
+#define AT91_SMC_NCS_WRSETUP_(x) ((x) << 8)
+#define AT91_SMC_NRDSETUP (0x3f << 16) /* NRD Setup Length */
+#define AT91_SMC_NRDSETUP_(x) ((x) << 16)
+#define AT91_SMC_NCS_RDSETUP (0x3f << 24) /* NCS Setup Length in Read Access */
+#define AT91_SMC_NCS_RDSETUP_(x) ((x) << 24)
+
+#define AT91_SMC_PULSE(n) (AT91_SMC + 0x04 + ((n)*0x10)) /* Pulse Register for CS n */
+#define AT91_SMC_NWEPULSE (0x7f << 0) /* NWE Pulse Length */
+#define AT91_SMC_NWEPULSE_(x) ((x) << 0)
+#define AT91_SMC_NCS_WRPULSE (0x7f << 8) /* NCS Pulse Length in Write Access */
+#define AT91_SMC_NCS_WRPULSE_(x)((x) << 8)
+#define AT91_SMC_NRDPULSE (0x7f << 16) /* NRD Pulse Length */
+#define AT91_SMC_NRDPULSE_(x) ((x) << 16)
+#define AT91_SMC_NCS_RDPULSE (0x7f << 24) /* NCS Pulse Length in Read Access */
+#define AT91_SMC_NCS_RDPULSE_(x)((x) << 24)
+
+#define AT91_SMC_CYCLE(n) (AT91_SMC + 0x08 + ((n)*0x10)) /* Cycle Register for CS n */
+#define AT91_SMC_NWECYCLE (0x1ff << 0 ) /* Total Write Cycle Length */
+#define AT91_SMC_NWECYCLE_(x) ((x) << 0)
+#define AT91_SMC_NRDCYCLE (0x1ff << 16) /* Total Read Cycle Length */
+#define AT91_SMC_NRDCYCLE_(x) ((x) << 16)
+
+#define AT91_SMC_MODE(n) (AT91_SMC + 0x0c + ((n)*0x10)) /* Mode Register for CS n */
+#define AT91_SMC_READMODE (1 << 0) /* Read Mode */
+#define AT91_SMC_WRITEMODE (1 << 1) /* Write Mode */
+#define AT91_SMC_EXNWMODE (3 << 4) /* NWAIT Mode */
+#define AT91_SMC_EXNWMODE_DISABLE (0 << 4)
+#define AT91_SMC_EXNWMODE_FROZEN (2 << 4)
+#define AT91_SMC_EXNWMODE_READY (3 << 4)
+#define AT91_SMC_BAT (1 << 8) /* Byte Access Type */
+#define AT91_SMC_BAT_SELECT (0 << 8)
+#define AT91_SMC_BAT_WRITE (1 << 8)
+#define AT91_SMC_DBW (3 << 12) /* Data Bus Width */
+#define AT91_SMC_DBW_8 (0 << 12)
+#define AT91_SMC_DBW_16 (1 << 12)
+#define AT91_SMC_DBW_32 (2 << 12)
+#define AT91_SMC_TDF (0xf << 16) /* Data Float Time. */
+#define AT91_SMC_TDF_(x) ((x) << 16)
+#define AT91_SMC_TDFMODE (1 << 20) /* TDF Optimization - Enabled */
+#define AT91_SMC_PMEN (1 << 24) /* Page Mode Enabled */
+#define AT91_SMC_PS (3 << 28) /* Page Size */
+#define AT91_SMC_PS_4 (0 << 28)
+#define AT91_SMC_PS_8 (1 << 28)
+#define AT91_SMC_PS_16 (2 << 28)
+#define AT91_SMC_PS_32 (3 << 28)
+
+#if defined(AT91_SMC1) /* The AT91SAM9263 has 2 Static Memory contollers */
+#define AT91_SMC1_SETUP(n) (AT91_SMC1 + 0x00 + ((n)*0x10)) /* Setup Register for CS n */
+#define AT91_SMC1_PULSE(n) (AT91_SMC1 + 0x04 + ((n)*0x10)) /* Pulse Register for CS n */
+#define AT91_SMC1_CYCLE(n) (AT91_SMC1 + 0x08 + ((n)*0x10)) /* Cycle Register for CS n */
+#define AT91_SMC1_MODE(n) (AT91_SMC1 + 0x0c + ((n)*0x10)) /* Mode Register for CS n */
+#endif
+
+#endif
diff --git a/include/asm-arm/arch-at91sam9/clk.h b/include/asm-arm/arch-at91sam9/clk.h
index 86da9a6e09..f67b4356d9 100644
--- a/include/asm-arm/arch-at91sam9/clk.h
+++ b/include/asm-arm/arch-at91sam9/clk.h
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/include/asm-arm/arch-at91sam9/gpio.h b/include/asm-arm/arch-at91sam9/gpio.h
index 2500eae2a4..c157e107e1 100644
--- a/include/asm-arm/arch-at91sam9/gpio.h
+++ b/include/asm-arm/arch-at91sam9/gpio.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/gpio.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/gpio.h]
*
* Copyright (C) 2005 HP Labs
*
diff --git a/include/asm-arm/arch-at91sam9/hardware.h b/include/asm-arm/arch-at91sam9/hardware.h
index 80b334f36e..d2fe45388b 100644
--- a/include/asm-arm/arch-at91sam9/hardware.h
+++ b/include/asm-arm/arch-at91sam9/hardware.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/hardware.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/hardware.h]
*
* Copyright (C) 2003 SAN People
* Copyright (C) 2003 ATMEL
diff --git a/include/asm-arm/arch-at91sam9/io.h b/include/asm-arm/arch-at91sam9/io.h
index be9e9abe56..f09b2df0e3 100644
--- a/include/asm-arm/arch-at91sam9/io.h
+++ b/include/asm-arm/arch-at91sam9/io.h
@@ -1,5 +1,5 @@
/*
- * include/asm-arm/arch-at91/io.h
+ * [origin: Linux kernel include/asm-arm/arch-at91/io.h]
*
* Copyright (C) 2003 SAN People
*
diff --git a/include/asm-arm/arch-at91sam9/memory-map.h b/include/asm-arm/arch-at91sam9/memory-map.h
index da98822461..8015dad6a9 100644
--- a/include/asm-arm/arch-at91sam9/memory-map.h
+++ b/include/asm-arm/arch-at91sam9/memory-map.h
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/include/asm-arm/arch-mx31/mx31.h b/include/asm-arm/arch-mx31/mx31.h
index f89a401bbc..0552c27ce6 100644
--- a/include/asm-arm/arch-mx31/mx31.h
+++ b/include/asm-arm/arch-mx31/mx31.h
@@ -24,9 +24,7 @@
#ifndef __ASM_ARCH_MX31_H
#define __ASM_ARCH_MX31_H
-u32 mx31_get_mpl_dpdgck_clk(void);
-u32 mx31_get_mcu_main_clk(void);
-u32 mx31_get_ipg_clk(void);
-void mx31_gpio_mux(unsigned long mode);
+extern u32 mx31_get_ipg_clk(void);
+extern void mx31_gpio_mux(unsigned long mode);
#endif /* __ASM_ARCH_MX31_H */
diff --git a/include/asm-arm/dma-mapping.h b/include/asm-arm/dma-mapping.h
index 8054f62b06..501ce0e680 100644
--- a/include/asm-arm/dma-mapping.h
+++ b/include/asm-arm/dma-mapping.h
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* See file CREDITS for list of people who contributed to this
diff --git a/include/asm-ppc/io.h b/include/asm-ppc/io.h
index 00b7ec57e4..7cc28bfe3a 100644
--- a/include/asm-ppc/io.h
+++ b/include/asm-ppc/io.h
@@ -251,7 +251,7 @@ extern inline void out_be32(volatile unsigned __iomem *addr, int val)
static inline void *
map_physmem(phys_addr_t paddr, unsigned long len, unsigned long flags)
{
- return (void *)paddr;
+ return (void *)((unsigned long)paddr);
}
/*
diff --git a/include/asm-ppc/processor.h b/include/asm-ppc/processor.h
index 4c049a5e93..8bdfb9ddf3 100644
--- a/include/asm-ppc/processor.h
+++ b/include/asm-ppc/processor.h
@@ -772,10 +772,14 @@
#define PVR_405EP_RA 0x51210950
#define PVR_405GPR_RB 0x50910951
#define PVR_405EZ_RA 0x41511460
-#define PVR_405EXR1_RA 0x12911473 /* 405EXr rev A with Security */
-#define PVR_405EXR2_RA 0x12911471 /* 405EXr rev A without Security */
-#define PVR_405EX1_RA 0x12911477 /* 405EX rev A with Security */
-#define PVR_405EX2_RA 0x12911475 /* 405EX rev A without Security */
+#define PVR_405EXR1_RA 0x12911473 /* 405EXr rev A/B with Security */
+#define PVR_405EXR2_RA 0x12911471 /* 405EXr rev A/B without Security */
+#define PVR_405EX1_RA 0x12911477 /* 405EX rev A/B with Security */
+#define PVR_405EX2_RA 0x12911475 /* 405EX rev A/B without Security */
+#define PVR_405EXR1_RC 0x1291147B /* 405EXr rev C with Security */
+#define PVR_405EXR2_RC 0x12911479 /* 405EXr rev C without Security */
+#define PVR_405EX1_RC 0x1291147F /* 405EX rev C with Security */
+#define PVR_405EX2_RC 0x1291147D /* 405EX rev C without Security */
#define PVR_440GP_RB 0x40120440
#define PVR_440GP_RC 0x40120481
#define PVR_440EP_RA 0x42221850
diff --git a/include/common.h b/include/common.h
index a6c966cde3..d0f57040ee 100644
--- a/include/common.h
+++ b/include/common.h
@@ -227,7 +227,6 @@ extern ulong load_addr; /* Default Load Address */
/* common/cmd_nvedit.c */
int env_init (void);
void env_relocate (void);
-uchar env_get_char (int);
int envmatch (uchar *, int);
char *getenv (char *);
int getenv_r (char *name, char *buf, unsigned len);
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h
index 6eec240e9f..f9fa535ff7 100644
--- a/include/configs/MPC8313ERDB.h
+++ b/include/configs/MPC8313ERDB.h
@@ -42,9 +42,12 @@
/*
* On-board devices
+ *
+ * TSEC1 is VSC switch
+ * TSEC2 is SoC TSEC
*/
#define CONFIG_VSC7385_ENET
-
+#define CONFIG_TSEC2
#ifdef CFG_66MHZ
#define CONFIG_83XX_CLKIN 66666667 /* in Hz */
@@ -80,7 +83,7 @@
#ifdef CONFIG_VSC7385_ENET
-#define CONFIG_TSEC2
+#define CONFIG_TSEC1
/* The flash address and size of the VSC7385 firmware image */
#define CONFIG_VSC7385_IMAGE 0xFE7FE000
@@ -209,7 +212,7 @@
/*
* Local Bus LCRR and LBCR regs
*/
-#define CFG_LCRR LCRR_EADC_1 | LCRR_CLKDIV_2 /* 0x00010002 */
+#define CFG_LCRR LCRR_EADC_1 | LCRR_CLKDIV_4
#define CFG_LBC_LBCR ( 0x00040000 /* TODO */ \
| (0xFF << LBCR_BMT_SHIFT) \
| 0xF ) /* 0x0004ff0f */
@@ -523,13 +526,8 @@
*/
#define CONFIG_ENV_OVERWRITE
-#ifdef CONFIG_HAS_ETH0
#define CONFIG_ETHADDR 00:E0:0C:00:95:01
-#endif
-
-#ifdef CONFIG_HAS_ETH1
#define CONFIG_ETH1ADDR 00:E0:0C:00:95:02
-#endif
#define CONFIG_IPADDR 10.0.0.2
#define CONFIG_SERVERIP 10.0.0.1
diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h
index 364ffac5ea..cf552c2487 100644
--- a/include/configs/MPC8349EMDS.h
+++ b/include/configs/MPC8349EMDS.h
@@ -602,6 +602,16 @@
HRCWH_TSEC2M_IN_GMII )
#endif
+/*
+ * System performance
+ */
+#define CFG_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */
+#define CFG_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */
+#define CFG_SPCR_TSEC1EP 3 /* TSEC1 emergency priority (0-3) */
+#define CFG_SPCR_TSEC2EP 3 /* TSEC2 emergency priority (0-3) */
+#define CFG_SCCR_TSEC1CM 1 /* TSEC1 clock mode (0-3) */
+#define CFG_SCCR_TSEC2CM 1 /* TSEC2 & I2C0 clock mode (0-3) */
+
/* System IO Config */
#define CFG_SICRH SICRH_TSOBI1
#define CFG_SICRL SICRL_LDP_A
diff --git a/include/configs/at91cap9adk.h b/include/configs/at91cap9adk.h
index dab21d0c0a..c891fa80ed 100644
--- a/include/configs/at91cap9adk.h
+++ b/include/configs/at91cap9adk.h
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* Configuation settings for the AT91CAP9ADK board.
diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index 96d1b8dff3..41c418f9ab 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -1,6 +1,6 @@
/*
* (C) Copyright 2007-2008
- * Stelian Pop <stelian.pop <at> leadtechdesign.com>
+ * Stelian Pop <stelian.pop@leadtechdesign.com>
* Lead Tech Design <www.leadtechdesign.com>
*
* Configuation settings for the AT91SAM9260EK board.
diff --git a/include/configs/kilauea.h b/include/configs/kilauea.h
index 57cc90a6de..c7c42a4cdf 100644
--- a/include/configs/kilauea.h
+++ b/include/configs/kilauea.h
@@ -292,6 +292,7 @@
#define CONFIG_BOOTP_BOOTPATH
#define CONFIG_BOOTP_GATEWAY
#define CONFIG_BOOTP_HOSTNAME
+#define CONFIG_BOOTP_SUBNETMASK
/*
* Command line configuration.
diff --git a/include/configs/makalu.h b/include/configs/makalu.h
index 6556666d27..67243d4e40 100644
--- a/include/configs/makalu.h
+++ b/include/configs/makalu.h
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2007
+ * (C) Copyright 2007-2008
* Stefan Roese, DENX Software Engineering, sr@denx.de.
*
* See file CREDITS for list of people who contributed to this
@@ -172,22 +172,28 @@
":${hostname}:${netdev}:off panic=1\0" \
"addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0"\
"addmisc=setenv bootargs ${bootargs} rtc-x1205.probe=0,0x6f\0" \
- "net_nfs=tftp 200000 ${bootfile};" \
+ "flash_self_old=run ramargs addip addtty addmisc;" \
+ "bootm ${kernel_addr} ${ramdisk_addr}\0" \
+ "flash_self=run ramargs addip addtty addmisc;" \
+ "bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \
+ "flash_nfs_old=run nfsargs addip addtty addmisc;" \
+ "bootm ${kernel_addr}\0" \
+ "flash_nfs=run nfsargs addip addtty addmisc;" \
+ "bootm ${kernel_addr} - ${fdt_addr}\0" \
+ "net_nfs_old=tftp ${kernel_addr_r} ${bootfile};" \
"run nfsargs addip addtty addmisc;" \
- "bootm 200000\0" \
- "net_nfs_fdt=tftp 200000 ${bootfile};" \
- "tftp ${fdt_addr} ${fdt_file};" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "tftp ${fdt_addr_r} ${fdt_file}; " \
"run nfsargs addip addtty addmisc;" \
- "bootm 200000 - ${fdt_addr}\0" \
- "flash_nfs=run nfsargs addip addtty addmisc;" \
- "bootm ${kernel_addr}\0" \
- "flash_self=run ramargs addip addtty addmisc;" \
- "bootm ${kernel_addr} ${ramdisk_addr}\0" \
+ "bootm ${kernel_addr_r} - ${fdt_addr_r}\0" \
"rootpath=/opt/eldk/ppc_4xx\0" \
"bootfile=makalu/uImage\0" \
"fdt_file=makalu/makalu.dtb\0" \
- "fdt_addr=400000\0" \
+ "kernel_addr_r=400000\0" \
+ "fdt_addr_r=800000\0" \
"kernel_addr=fc000000\0" \
+ "fdt_addr=fc1e0000\0" \
"ramdisk_addr=fc200000\0" \
"initrd_high=30000000\0" \
"load=tftp 200000 makalu/u-boot.bin\0" \
@@ -212,6 +218,7 @@
#define CONFIG_BOOTP_BOOTPATH
#define CONFIG_BOOTP_GATEWAY
#define CONFIG_BOOTP_HOSTNAME
+#define CONFIG_BOOTP_SUBNETMASK
/*
* Command line configuration.
diff --git a/include/configs/ml401.h b/include/configs/ml401.h
index 360e2e11d2..7e0df87019 100644
--- a/include/configs/ml401.h
+++ b/include/configs/ml401.h
@@ -56,9 +56,11 @@
/* ethernet */
#ifdef XILINX_EMAC_BASEADDR
#define CONFIG_XILINX_EMAC 1
+#define CFG_ENET
#else
#ifdef XILINX_EMACLITE_BASEADDR
#define CONFIG_XILINX_EMACLITE 1
+#define CFG_ENET
#endif
#endif
#undef ET_DEBUG
@@ -70,18 +72,28 @@
#endif
/* interrupt controller */
+#ifdef XILINX_INTC_BASEADDR
#define CFG_INTC_0 1
#define CFG_INTC_0_ADDR XILINX_INTC_BASEADDR
#define CFG_INTC_0_NUM XILINX_INTC_NUM_INTR_INPUTS
+#endif
/* timer */
+#ifdef XILINX_TIMER_BASEADDR
+#if (XILINX_TIMER_IRQ != -1)
#define CFG_TIMER_0 1
#define CFG_TIMER_0_ADDR XILINX_TIMER_BASEADDR
#define CFG_TIMER_0_IRQ XILINX_TIMER_IRQ
#define FREQUENCE XILINX_CLOCK_FREQ
#define CFG_TIMER_0_PRELOAD ( FREQUENCE/1000 )
+#endif
+#else
+#ifdef XILINX_CLOCK_FREQ
#define CONFIG_XILINX_CLOCK_FREQ XILINX_CLOCK_FREQ
-
+#else
+#error BAD CLOCK FREQ
+#endif
+#endif
/* FSL */
/* #define CFG_FSL_2 */
/* #define FSL_INTR_2 1 */
@@ -195,7 +207,12 @@
#define CONFIG_CMD_CACHE
#define CONFIG_CMD_IRQ
#define CONFIG_CMD_MFSL
-#define CONFIG_CMD_PING
+
+#ifndef CFG_ENET
+ #undef CONFIG_CMD_NET
+#else
+ #define CONFIG_CMD_PING
+#endif
#if defined(CONFIG_SYSTEMACE)
#define CONFIG_CMD_EXT2
diff --git a/include/configs/mx31ads.h b/include/configs/mx31ads.h
index 7614b95019..2ea48a6da9 100644
--- a/include/configs/mx31ads.h
+++ b/include/configs/mx31ads.h
@@ -28,7 +28,7 @@
#define CONFIG_ARM1136 1 /* This is an arm1136 CPU core */
#define CONFIG_MX31 1 /* in a mx31 */
#define CONFIG_MX31_HCLK_FREQ 26000000 /* RedBoot says 26MHz */
-#define CONFIG_MX31_CLK32 32000
+#define CONFIG_MX31_CLK32 32768
#define CONFIG_DISPLAY_CPUINFO
#define CONFIG_DISPLAY_BOARDINFO
@@ -139,7 +139,7 @@
#define CFG_LOAD_ADDR CONFIG_LOADADDR
-#define CFG_HZ 32000
+#define CFG_HZ CONFIG_MX31_CLK32 /* use 32kHz clock as source */
#define CONFIG_CMDLINE_EDITING 1
diff --git a/include/configs/xupv2p.h b/include/configs/xupv2p.h
index 30fb303c96..c738567a5f 100644
--- a/include/configs/xupv2p.h
+++ b/include/configs/xupv2p.h
@@ -63,9 +63,11 @@
/* ethernet */
#ifdef XILINX_EMAC_BASEADDR
#define CONFIG_XILINX_EMAC 1
+#define CFG_ENET
#else
#ifdef XILINX_EMACLITE_BASEADDR
#define CONFIG_XILINX_EMACLITE 1
+#define CFG_ENET
#endif
#endif
#undef ET_DEBUG
@@ -77,18 +79,28 @@
#endif
/* interrupt controller */
+#ifdef XILINX_INTC_BASEADDR
#define CFG_INTC_0 1
#define CFG_INTC_0_ADDR XILINX_INTC_BASEADDR
#define CFG_INTC_0_NUM XILINX_INTC_NUM_INTR_INPUTS
+#endif
/* timer */
+#ifdef XILINX_TIMER_BASEADDR
+#if (XILINX_TIMER_IRQ != -1)
#define CFG_TIMER_0 1
#define CFG_TIMER_0_ADDR XILINX_TIMER_BASEADDR
#define CFG_TIMER_0_IRQ XILINX_TIMER_IRQ
#define FREQUENCE XILINX_CLOCK_FREQ
#define CFG_TIMER_0_PRELOAD ( FREQUENCE/1000 )
+#endif
+#else
+#ifdef XILINX_CLOCK_FREQ
#define CONFIG_XILINX_CLOCK_FREQ XILINX_CLOCK_FREQ
-
+#else
+#error BAD CLOCK FREQ
+#endif
+#endif
/*
* memory layout - Example
* TEXT_BASE = 0x3600_0000;
@@ -162,7 +174,12 @@
#define CONFIG_CMD_ASKENV
#define CONFIG_CMD_CACHE
#define CONFIG_CMD_IRQ
-#define CONFIG_CMD_PING
+
+#ifndef CFG_ENET
+ #undef CONFIG_CMD_NET
+#else
+ #define CONFIG_CMD_PING
+#endif
#ifdef XILINX_SYSACE_BASEADDR
#define CONFIG_CMD_EXT2
diff --git a/include/environment.h b/include/environment.h
index c4f7c33be6..bf9f669127 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -107,4 +107,14 @@ typedef struct environment_s {
unsigned char data[ENV_SIZE]; /* Environment data */
} env_t;
+/* Pointer to function that returns a character from the environment */
+extern unsigned char (*env_get_char)(int);
+
+/* Function that returns a pointer to a value from the environment */
+unsigned char *env_get_addr(int);
+unsigned char env_get_char_memory (int index);
+
+/* Function that updates CRC of the enironment */
+void env_crc_update (void);
+
#endif /* _ENVIRONMENT_H_ */
diff --git a/include/pci.h b/include/pci.h
index 8e5dacc0df..1c8e21688f 100644
--- a/include/pci.h
+++ b/include/pci.h
@@ -314,7 +314,7 @@
struct pci_region {
unsigned long bus_start; /* Start on the bus */
- unsigned long phys_start; /* Start in physical address space */
+ phys_addr_t phys_start; /* Start in physical address space */
unsigned long size; /* Size */
unsigned long flags; /* Resource flags */
@@ -331,7 +331,7 @@ struct pci_region {
extern __inline__ void pci_set_region(struct pci_region *reg,
unsigned long bus_start,
- unsigned long phys_start,
+ phys_addr_t phys_start,
unsigned long size,
unsigned long flags) {
reg->bus_start = bus_start;
@@ -432,10 +432,10 @@ extern __inline__ void pci_set_ops(struct pci_controller *hose,
extern void pci_setup_indirect(struct pci_controller* hose, u32 cfg_addr, u32 cfg_data);
-extern unsigned long pci_hose_bus_to_phys(struct pci_controller* hose,
- unsigned long addr, unsigned long flags);
+extern phys_addr_t pci_hose_bus_to_phys(struct pci_controller* hose,
+ unsigned long addr, unsigned long flags);
extern unsigned long pci_hose_phys_to_bus(struct pci_controller* hose,
- unsigned long addr, unsigned long flags);
+ phys_addr_t addr, unsigned long flags);
#define pci_phys_to_bus(dev, addr, flags) \
pci_hose_phys_to_bus(pci_bus_to_hose(PCI_BUS(dev)), (addr), (flags))
diff --git a/include/version.h b/include/version.h
index b56d2e9900..a34291adc5 100644
--- a/include/version.h
+++ b/include/version.h
@@ -24,6 +24,8 @@
#ifndef __VERSION_H__
#define __VERSION_H__
+#ifndef DO_DEPS_ONLY
#include "version_autogenerated.h"
+#endif
#endif /* __VERSION_H__ */
diff --git a/lib_generic/crc32.c b/lib_generic/crc32.c
index 64f66ed6fb..83d1d1d3a0 100644
--- a/lib_generic/crc32.c
+++ b/lib_generic/crc32.c
@@ -14,7 +14,9 @@
#include <stdint.h>
#endif
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
#include <watchdog.h>
+#endif
#include "zlib.h"
#define local static
diff --git a/lib_i386/bootm.c b/lib_i386/bootm.c
index 107ebaaa67..d959107c73 100644
--- a/lib_i386/bootm.c
+++ b/lib_i386/bootm.c
@@ -37,7 +37,6 @@ void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
void *base_ptr;
ulong os_data, os_len;
ulong initrd_start, initrd_end;
- ulong ep;
image_header_t *hdr;
int ret;
#if defined(CONFIG_FIT)
diff --git a/lib_ppc/board.c b/lib_ppc/board.c
index 1b8a8721a3..4956403cce 100644
--- a/lib_ppc/board.c
+++ b/lib_ppc/board.c
@@ -453,18 +453,7 @@ void board_init_f (ulong bootflag)
*/
gd->ram_size -= CFG_MEM_TOP_HIDE;
-#ifndef CONFIG_MAX_MEM_MAPPED
-#define CONFIG_MAX_MEM_MAPPED (256 << 20)
-#endif
-
-#ifndef CONFIG_VERY_BIG_RAM
addr = CFG_SDRAM_BASE + get_effective_memsize();
-#else
- /* only allow stack below 256M */
- addr = CFG_SDRAM_BASE +
- (gd->ram_size > CONFIG_MAX_MEM_MAPPED) ?
- CONFIG_MAX_MEM_MAPPED : get_effective_memsize();
-#endif
#ifdef CONFIG_LOGBUFFER
#ifndef CONFIG_ALT_LB_ADDR
diff --git a/lib_ppc/bootm.c b/lib_ppc/bootm.c
index 0328baddca..9194fd8b0a 100644
--- a/lib_ppc/bootm.c
+++ b/lib_ppc/bootm.c
@@ -667,9 +667,8 @@ static int boot_get_fdt (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
goto error;
}
} else {
- fdt_error ("Did not find a Flattened Device Tree "
- "in a legacy multi-component image");
- goto error;
+ debug ("## No Flattened Device Tree\n");
+ return 0;
}
} else {
debug ("## No Flattened Device Tree\n");
diff --git a/nand_spl/board/amcc/canyonlands/Makefile b/nand_spl/board/amcc/canyonlands/Makefile
index 1ec1112309..47c7d02c3c 100644
--- a/nand_spl/board/amcc/canyonlands/Makefile
+++ b/nand_spl/board/amcc/canyonlands/Makefile
@@ -30,7 +30,7 @@ AFLAGS += -DCONFIG_NAND_SPL
CFLAGS += -DCONFIG_NAND_SPL
SOBJS := start.o
-SOBJS += init.o resetvec.o
+SOBJS += init.o
SOBJS += resetvec.o
COBJS := ddr2_fixed.o
COBJS += nand_boot.o
@@ -89,6 +89,12 @@ $(obj)nand_ecc.c:
@rm -f $(obj)nand_ecc.c
ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $(obj)nand_ecc.c
+ifneq ($(OBJTREE), $(SRCTREE))
+$(obj)ddr2_fixed.c:
+ @rm -f $(obj)ddr2_fixed.c
+ ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/ddr2_fixed.c $(obj)ddr2_fixed.c
+endif
+
#########################################################################
$(obj)%.o: $(obj)%.S
diff --git a/post/cpu/ppc4xx/Makefile b/post/cpu/ppc4xx/Makefile
index 87ecd7c907..f19dc5d3ce 100644
--- a/post/cpu/ppc4xx/Makefile
+++ b/post/cpu/ppc4xx/Makefile
@@ -25,6 +25,12 @@ include $(OBJTREE)/include/autoconf.mk
LIB = libpostppc4xx.a
AOBJS-$(CONFIG_HAS_POST) += cache_4xx.o
-COBJS-$(CONFIG_HAS_POST) += cache.o denali_ecc.o ether.o fpu.o spr.o uart.o watchdog.o
+COBJS-$(CONFIG_HAS_POST) += cache.o
+COBJS-$(CONFIG_HAS_POST) += denali_ecc.o
+COBJS-$(CONFIG_HAS_POST) += ether.o
+COBJS-$(CONFIG_HAS_POST) += fpu.o
+COBJS-$(CONFIG_HAS_POST) += spr.o
+COBJS-$(CONFIG_HAS_POST) += uart.o
+COBJS-$(CONFIG_HAS_POST) += watchdog.o
include $(TOPDIR)/post/rules.mk
diff --git a/tools/env/Makefile b/tools/env/Makefile
index ea2d5b5a01..9629ee58ef 100644
--- a/tools/env/Makefile
+++ b/tools/env/Makefile
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
SRCS := $(obj)crc32.c fw_env.c fw_env_main.c
HEADERS := fw_env.h
-CPPFLAGS := -Wall -DUSE_HOSTCC
+CPPFLAGS := -Wall -DUSE_HOSTCC -I$(SRCTREE)/include
ifeq ($(MTD_VERSION),old)
CPPFLAGS += -DMTD_OLD
diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
index e083a5b11e..b8bca91c38 100644
--- a/tools/env/fw_env.c
+++ b/tools/env/fw_env.c
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2000-2003
+ * (C) Copyright 2000-2008
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* See file CREDITS for list of people who contributed to this
@@ -209,13 +209,14 @@ char *fw_getenv (char *name)
* Print the current definition of one, or more, or all
* environment variables
*/
-void fw_printenv (int argc, char *argv[])
+int fw_printenv (int argc, char *argv[])
{
char *env, *nxt;
int i, n_flag;
+ int rc = 0;
if (env_init ())
- return;
+ return (-1);
if (argc == 1) { /* Print all env variables */
for (env = environment.data; *env; env = nxt + 1) {
@@ -223,13 +224,13 @@ void fw_printenv (int argc, char *argv[])
if (nxt >= &environment.data[ENV_SIZE]) {
fprintf (stderr, "## Error: "
"environment not terminated\n");
- return;
+ return (-1);
}
}
printf ("%s\n", env);
}
- return;
+ return (0);
}
if (strcmp (argv[1], "-n") == 0) {
@@ -239,7 +240,7 @@ void fw_printenv (int argc, char *argv[])
if (argc != 2) {
fprintf (stderr, "## Error: "
"`-n' option requires exactly one argument\n");
- return;
+ return (-1);
}
} else {
n_flag = 0;
@@ -255,7 +256,7 @@ void fw_printenv (int argc, char *argv[])
if (nxt >= &environment.data[ENV_SIZE]) {
fprintf (stderr, "## Error: "
"environment not terminated\n");
- return;
+ return (-1);
}
}
val = envmatch (name, env);
@@ -268,9 +269,13 @@ void fw_printenv (int argc, char *argv[])
break;
}
}
- if (!val)
+ if (!val) {
fprintf (stderr, "## Error: \"%s\" not defined\n", name);
+ rc = -1;
+ }
}
+
+ return (rc);
}
/*
diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
index 58607ded5a..248f58c4a0 100644
--- a/tools/env/fw_env.h
+++ b/tools/env/fw_env.h
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2002
+ * (C) Copyright 2002-2008
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* See file CREDITS for list of people who contributed to this
@@ -47,7 +47,7 @@
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; " \
"bootm"
-extern void fw_printenv(int argc, char *argv[]);
+extern int fw_printenv(int argc, char *argv[]);
extern char *fw_getenv (char *name);
extern int fw_setenv (int argc, char *argv[]);
diff --git a/tools/env/fw_env_main.c b/tools/env/fw_env_main.c
index 696e30efda..7f631c4494 100644
--- a/tools/env/fw_env_main.c
+++ b/tools/env/fw_env_main.c
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2000
+ * (C) Copyright 2000-2008
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* See file CREDITS for list of people who contributed to this
@@ -25,15 +25,16 @@
* Command line user interface to firmware (=U-Boot) environment.
*
* Implements:
- * fw_printenv [ name ... ]
- * - prints the values of the environment variables
- * "name", or the whole environment if no names are
- * specified
+ * fw_printenv [[ -n name ] | [ name ... ]]
+ * - prints the value of a single environment variable
+ * "name", the ``name=value'' pairs of one or more
+ * environment variables "name", or the whole
+ * environment if no names are specified.
* fw_setenv name [ value ... ]
* - If a name without any values is given, the variable
* with this name is deleted from the environment;
* otherwise, all "value" arguments are concatenated,
- * separated by sinlge blank characters, and the
+ * separated by single blank characters, and the
* resulting string is assigned to the environment
* variable "name"
*/
@@ -58,16 +59,18 @@ main(int argc, char *argv[])
if (strcmp(cmdname, CMD_PRINTENV) == 0) {
- fw_printenv (argc, argv);
+ if (fw_printenv (argc, argv) != 0)
+ return (EXIT_FAILURE);
- return (EXIT_SUCCESS);
+ return (EXIT_SUCCESS);
} else if (strcmp(cmdname, CMD_SETENV) == 0) {
- if (fw_setenv (argc, argv) != 0)
- return (EXIT_FAILURE);
+ if (fw_setenv (argc, argv) != 0)
+ return (EXIT_FAILURE);
+
+ return (EXIT_SUCCESS);
- return (EXIT_SUCCESS);
}
fprintf (stderr,