mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-29 15:43:44 +08:00
Merge branch 'master' of git://www.denx.de/git/u-boot into new-image
This commit is contained in:
commit
e18489e8c2
469
CHANGELOG
469
CHANGELOG
@ -1,3 +1,472 @@
|
||||
commit 00b48a48424894daa589d166d73277830b1c6ac4
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sat Feb 23 12:15:56 2008 +0100
|
||||
|
||||
ENV: remove saveenv when CFG_ENV_IS_NOWHERE is selected
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit b075d74efb70ff68c49a2532f26b56d6703b69c1
|
||||
Author: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
Date: Sat Feb 23 17:24:16 2008 +0900
|
||||
|
||||
Remove the __STRICT_ANSI__ check from the __u64/__s64 declaration on 32bit targets.
|
||||
|
||||
----------------------------------------------------------------
|
||||
Olaf Hering [Wed, 17 Oct 2007 06:27:13 +0000 (23:27 -0700)]
|
||||
|
||||
Remove the __STRICT_ANSI__ check from the __u64/__s64 declaration on
|
||||
32bit targets.
|
||||
|
||||
GCC can be made to warn about usage of long long types with ISO C90
|
||||
(-ansi), but only with -pedantic. You can write this in a way that even
|
||||
then it doesn't cause warnings, namely by:
|
||||
|
||||
#ifdef __GNUC__
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
The __extension__ keyword in front of this switches off any pedantic
|
||||
warnings for this expression.
|
||||
|
||||
Signed-off-by: Olaf Hering <olh@suse.de>
|
||||
Cc: <linux-arch@vger.kernel.org>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
----------------------------------------------------------------
|
||||
|
||||
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
|
||||
commit 208acd112e6517b21fc30c420396902b103563ac
|
||||
Author: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
Date: Sat Feb 23 17:07:57 2008 +0900
|
||||
|
||||
cpu/mcf52x2/config.mk: Make needlessly deffered expansions immediate.
|
||||
|
||||
This will reduce the build time.
|
||||
|
||||
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
|
||||
commit 495a0dde7fa1b14cdc15607d86503ec2bdcd02c4
|
||||
Author: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
Date: Sat Feb 23 17:05:00 2008 +0900
|
||||
|
||||
cpu/ppc4xx/config.mk: Make a needlessly deffered expansion immediate.
|
||||
|
||||
This will reduce the build time.
|
||||
|
||||
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
|
||||
commit e682ba399a1d76f09d8cc7af1e57066f1d360d91
|
||||
Author: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
Date: Sat Feb 23 16:58:41 2008 +0900
|
||||
|
||||
cpu/mips/cofigl.mk: Make a needlessly deffered expansion immediate.
|
||||
|
||||
This reduces the build time by ~10%. Here's the gth2_config example.
|
||||
|
||||
BEFORE AFTER
|
||||
real 0m31.441s 0m27.833s
|
||||
user 0m24.766s 0m23.045s
|
||||
sys 0m10.425s 0m7.468s
|
||||
|
||||
Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
|
||||
|
||||
commit 02409f8cf54c7cd91981f0dfec135dbf3858090c
|
||||
Author: Marcel Moolenaar <marcelm@juniper.net>
|
||||
Date: Fri Feb 22 10:48:07 2008 -0800
|
||||
|
||||
make define2mk.sed work on FreeBSD
|
||||
|
||||
In the thread "[1.3.2-rc1] MPC8548CDS/MPC8555CDS configs fails to link",
|
||||
the define2mk.sed script was identified as the source of the link
|
||||
failure on FreeBSD. The problem is that sed(1) does not always support
|
||||
the '+' operator. It isn't on FreeBSD. The attach patch implements the
|
||||
equivalent, using the '*' operator instead and should work everywhere.
|
||||
|
||||
Signed-off-by: Marcel Moolenaar <marcelm@juniper.net>
|
||||
|
||||
commit e5084af8ded58453cd07ec1af8b0f29f34122bbc
|
||||
Author: Detlev Zundel <dzu@denx.de>
|
||||
Date: Fri Feb 22 17:21:32 2008 +0100
|
||||
|
||||
Replace deprecated "ramdisk" with "ramdisk_size" kernel parameter.
|
||||
|
||||
The Linux commit fac8b209b1084bc85748bd54e13d00c1262b220f ("Remove
|
||||
final traces of long-deprecated "ramdisk" kernel parm") makes these
|
||||
changes neccessary.
|
||||
|
||||
Signed-off-by: Detlev Zundel <dzu@denx.de>
|
||||
|
||||
commit d01b847c5cd070895c4ba178c85cd068a95cf7cd
|
||||
Author: Larry Johnson <lrj@acm.org>
|
||||
Date: Thu Feb 21 13:58:16 2008 -0500
|
||||
|
||||
LM75 bug fix for negative temperatures
|
||||
|
||||
When the LM75 temperature sensor measures a temperature below 0 C, the
|
||||
current driver does not perform sign extension, so the result returned is
|
||||
256 C too high. This patch fixes the problem.
|
||||
|
||||
Signed-off-by: Larry Johnson <lrj@acm.org>
|
||||
|
||||
commit 5a910c224b13e413bda41922379add6d75c32da3
|
||||
Author: Heiko Schocher <hs@denx.de>
|
||||
Date: Thu Feb 21 18:33:45 2008 +0100
|
||||
|
||||
IDS8247: update MAINTAINER entry.
|
||||
|
||||
Signed-off-by: Heiko Schocher <hs@denx.de>
|
||||
|
||||
commit 79eac2bfb591f2b028ec1735049dc91e4320de4a
|
||||
Author: Heiko Schocher <hs@denx.de>
|
||||
Date: Thu Feb 21 18:31:15 2008 +0100
|
||||
|
||||
Fix device tree for mgsuvd board.
|
||||
|
||||
Rename the "scc" node in "ethernet" for the mgsuvd board.
|
||||
|
||||
Signed-off-by: Heiko Schocher <hs@denx.de>
|
||||
|
||||
commit 2e721094a70a52206af2e1bf1208d9a7131f6dad
|
||||
Author: Yuri Tikhonov <yur@emcraft.com>
|
||||
Date: Thu Feb 21 14:23:42 2008 +0100
|
||||
|
||||
lwmon5: enable hardware watchdog
|
||||
|
||||
Some boards (e.g. lwmon5) may use rather small watchdog intervals, so
|
||||
causing it to reboot the board if U-Boot does a long busy-wait with
|
||||
udelay(). Thus, for these boards we have to restart WD more
|
||||
frequently.
|
||||
|
||||
This patch splits the busy-wait udelay() into smaller, predefined,
|
||||
intervals, so that the watchdog timer may be resetted with the
|
||||
configurable (CONFIG_WD_PERIOD) interval.
|
||||
|
||||
Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
|
||||
|
||||
commit bc77881247ee6f95d7a9ebc499d26b96bae38c9d
|
||||
Author: Anatolij Gustschin <agust@denx.de>
|
||||
Date: Thu Feb 21 12:52:29 2008 +0100
|
||||
|
||||
ppc4xx: Support for ATI Radeon 9200 card on sequoia
|
||||
|
||||
Adds configuration option for ATI Radeon 9200 card
|
||||
support to sequoia config file. If CONFIG_VIDEO
|
||||
is enabled, TEXT_BASE should be changed to 0xFFF80000.
|
||||
|
||||
Signed-off-by: Anatolij Gustschin <agust@denx.de>
|
||||
|
||||
commit 5a9abcc317cf3c8a69559ff83081f4e5d719edb7
|
||||
Author: Kumar Gala <galak@kernel.crashing.org>
|
||||
Date: Mon Feb 18 08:18:07 2008 -0600
|
||||
|
||||
Remove duplicate defines for ARRAY_SIZE
|
||||
|
||||
A few duplicate of the ARRAY_SIZE macro sneaked in since we put
|
||||
the define in common.h.
|
||||
|
||||
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
||||
|
||||
commit 81d93e5c4b83d8b6dcee69de6f4a14ccf6f7114a
|
||||
Author: Kumar Gala <galak@kernel.crashing.org>
|
||||
Date: Mon Feb 18 08:09:37 2008 -0600
|
||||
|
||||
ppc: Allow boards to specify effective amount of memory
|
||||
|
||||
For historical reasons we limited the stack to 256M because some boards
|
||||
could only map that much via BATS. However newer boards are capable of
|
||||
mapping more memory (for example 85xx is capable of doing up to 2G).
|
||||
|
||||
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
||||
|
||||
commit 755c35f54ba7eb7687aa7935e04a02a01ef1b27b
|
||||
Author: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Mon Feb 18 05:24:13 2008 -0500
|
||||
|
||||
include autoconf.mk before any other .mk files
|
||||
|
||||
This bumps the autoconf.mk include step above board/cpu/arch/etc... so that
|
||||
those .mk files can have make if statements based on the current config.
|
||||
|
||||
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
commit 16fe77752eee099b9fb61ed73460e51cc94b37ba
|
||||
Author: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Mon Feb 18 05:10:07 2008 -0500
|
||||
|
||||
error check autoconf.mk generation
|
||||
|
||||
If any of the steps for generating autoconf.mk fail currently, they go
|
||||
unnoticed. To fix, we can simply add 'set -e' to the long list of commands.
|
||||
This is simpler and more robust than placing '|| exit $$?' after every line.
|
||||
|
||||
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
commit 019895a8dee71a9f00da05c03e379f45d581b0fe
|
||||
Author: Stefano Babic <sbabic@denx.de>
|
||||
Date: Mon Feb 18 08:03:51 2008 +0100
|
||||
|
||||
Fix bug in dependency checking
|
||||
|
||||
By adding VERSION_FILE to the PHONY targets the script
|
||||
/tools/setlocalversion is always called and version_autogenerated.h
|
||||
is replaced only if the script find a modified source file.
|
||||
|
||||
Signed-off-by: Stefano Babic <sbabic@denx.de>
|
||||
|
||||
commit 98ba144ccc912eee90dd42699f023c497ce774c6
|
||||
Author: Kyungmin Park <kmpark@infradead.org>
|
||||
Date: Mon Feb 18 14:35:43 2008 +0900
|
||||
|
||||
Fix GPMC CS2 memory setup at apollon
|
||||
|
||||
It disables the current map first
|
||||
|
||||
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
|
||||
|
||||
commit e845e07e1e6e64f40e35688439d3cdcf01cfff4f
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 23:52:46 2008 +0100
|
||||
|
||||
uli526x: Fix multiple differ in signedness and parentheses around comparison
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit beeccf7a5dc5415c202e0132a33c58fc316c2a62
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 16:58:04 2008 +0100
|
||||
|
||||
MIPS: Fix CFG_NO_FLASH support
|
||||
|
||||
- Fix flash_init call when CFG_NO_FLASH is used
|
||||
- Remove no more needed flash.c for qemu-mips
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit edfed1d91df2b2670a812ca9d1a1f9faae7dba47
|
||||
Author: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Sat Feb 16 02:40:18 2008 -0500
|
||||
|
||||
easylogo: clean up some more and add -r (rgb) support
|
||||
|
||||
Michael Hennerich added support for outputting an image in RGB format rather
|
||||
than forcing YUYV all the time. This makes obvious sense if the display you
|
||||
have takes RGB input rather than YUYV.
|
||||
|
||||
Rather than hack in support for options, I've converted it to use getopt and
|
||||
cleaned up the argument parsing in the process.
|
||||
|
||||
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
|
||||
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
commit f65c98129ccada3f7caf97d80395a95b84e911de
|
||||
Author: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Sat Feb 16 02:12:37 2008 -0500
|
||||
|
||||
Makefile: add target for $(LDSCRIPT)
|
||||
|
||||
If the $(LDSCRIPT) does not exist (normally it's board/$(BOARD)/u-boot.lds),
|
||||
then change into the board directory and try and create it. This allows you
|
||||
to generate the linker script on the fly based upon board defines (like the
|
||||
Blackfin boards do).
|
||||
|
||||
There should be no regressions due to this change as the normal case is to
|
||||
already have a u-boot.lds file. If that's the case, then there's nothing to
|
||||
generate, and so make will always exit. The fix here is that if the linker
|
||||
script does not exist, the implicit rules take over and attempt to guess how
|
||||
to generate the file.
|
||||
|
||||
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
commit 1ba639da5604a64b3ed884a2cbb1c5414a9fa728
|
||||
Author: Michael Schwingen <michael@schwingen.org>
|
||||
Date: Mon Feb 18 23:16:35 2008 +0100
|
||||
|
||||
CFI: Do not use uninitialized cmd_reset
|
||||
|
||||
Do not use uninitialized cmd_reset; issue both AMD and Intel reset
|
||||
commands instead
|
||||
|
||||
From a short test, it looks like AMD-style flash roms treat *any* unknown
|
||||
command write as a reset, at least when in CFI Query mode, so issuing the
|
||||
Intel reset command to AMD-style flashs seems safe (from the small sample I
|
||||
have), plus the 3-cycle magic sequence should kick the state machine into
|
||||
the right state even without a reset command. Since the AMD-style flashs
|
||||
require the unlock sequence for real operation, I chose to try the AMD reset
|
||||
command first, so that Intel flashs do no see an invalid command prior to
|
||||
the CFI query.
|
||||
|
||||
I have tested the patch on AM29LV320-style flashs from Fujitsu and Macronix,
|
||||
plus Intel StrataFlash.
|
||||
|
||||
Signed-off-by: Michael Schwingen <michael@schwingen.org>
|
||||
Signed-off-by: Stefan Roese <sr@denx.de>
|
||||
|
||||
commit e7a85f26830c9f2e78506421c2d519a2965bc7a1
|
||||
Author: Rafal Jaworowski <raj@semihalf.com>
|
||||
Date: Thu Feb 21 11:56:44 2008 +0100
|
||||
|
||||
API: Add (c) and licensing notice to the public API header.
|
||||
|
||||
Signed-off-by: Rafal Jaworowski <raj@semihalf.com>
|
||||
|
||||
commit 928d1d77f8623c120d8763e20e1ca58df9c5c4c6
|
||||
Author: Yuri Tikhonov <yur@emcraft.com>
|
||||
Date: Thu Feb 21 11:06:07 2008 +0100
|
||||
|
||||
Fix CPU POST test failure
|
||||
|
||||
The CPU POST test code (run from cpu_post_exec_31()) doesn't follow the
|
||||
ABI carefully, at least the CR3, CR4, and CR5 fields of CR are clobbered
|
||||
by it. The gcc-4.2 with its more aggressive optimization exposes this fact.
|
||||
This patch just saves the CR value before running the test code, so allowing
|
||||
it to do anything it wants with CR.
|
||||
|
||||
Signed-off-by: Dmitry Rakhchev <rda@emcraft.com>
|
||||
Acked-by: Yuri Tikhonov <yur@emcraft.com>
|
||||
--
|
||||
|
||||
commit d5908b093955415f3d340706378b991f911af671
|
||||
Author: Jon Loeliger <jdl@freescale.com>
|
||||
Date: Wed Feb 20 15:26:51 2008 -0600
|
||||
|
||||
8610HPCD: Document the flashbank selection switches.
|
||||
|
||||
Signed-off-by: Jon Loeliger <jdl@freescale.com>
|
||||
|
||||
commit a551cee99ad1d1da20fd23ad265de47448852f56
|
||||
Author: Jon Loeliger <jdl@freescale.com>
|
||||
Date: Wed Feb 20 14:22:26 2008 -0600
|
||||
|
||||
86xx: Fix GUR PCI config registers properly.
|
||||
|
||||
Back in commit 975a083a5ef785c414b35f9c5b8ae25b26b41524 where
|
||||
I tried to "8610HPCD: Fix typos in two PCI setup registers", I
|
||||
botched it due to not realizing that 8610 and 8641 had different
|
||||
Global Utility Register defintions, one of which was like 85xx,
|
||||
and the other wasn't. Correct this problem by introducing two
|
||||
symbols, one for each 86xx SoC, but neither of which is named
|
||||
anything like 85xx.
|
||||
|
||||
My bad. Lovely Wednesday with git bisect. You know.
|
||||
|
||||
Signed-off-by: Jon Loeliger <jdl@freescale.com>
|
||||
|
||||
commit cb06eb961bdffc8728b38c242473d802e83ab2b4
|
||||
Author: Jon Loeliger <jdl@freescale.com>
|
||||
Date: Wed Feb 20 12:24:11 2008 -0600
|
||||
|
||||
8610HPCD: Don't use VIDEO/CFB_CONSOLE by default.
|
||||
|
||||
Without an actual supported video card hooked up, enabling
|
||||
the CONFIG_VIDEO by default just makes it look broken by
|
||||
routing all console output to the video card. Don't.
|
||||
|
||||
Signed-off-by: Jon Loeliger <jdl@freescale.com>
|
||||
|
||||
commit 4d264eff4312f230776b913edade7ceb75f1b1e0
|
||||
Author: TsiChungLiew <Tsi-Chung.Liew@freescale.com>
|
||||
Date: Wed Jan 30 15:08:15 2008 -0600
|
||||
|
||||
ColdFire: Fix missing code flash size for M5485EVB
|
||||
|
||||
Signed-off-by: James Mahan <kmahan@freescale.com>
|
||||
Signed-off-by: TsiChung Liew <Tsi-Chung.Liew@freescale.com>
|
||||
|
||||
commit c54f9263e4e11e34b1e70c160bc467ef1d8ec59d
|
||||
Author: TsiChungLiew <Tsi-Chung.Liew@freescale.com>
|
||||
Date: Wed Jan 30 15:04:42 2008 -0600
|
||||
|
||||
ColdFire: Fix 5282 and 5271 interrupt mask bit
|
||||
|
||||
Signed-off-by: TsiChung Liew <Tsi-Chung.Liew@freescale.com>
|
||||
|
||||
commit 975a083a5ef785c414b35f9c5b8ae25b26b41524
|
||||
Author: Jon Loeliger <jdl@freescale.com>
|
||||
Date: Tue Feb 19 12:31:08 2008 -0600
|
||||
|
||||
8610HPCD: Fix typos in two PCI setup registers.
|
||||
|
||||
The two symbols MPC86xx_PORDEVSR_IO_SEL and MPC86xx_PORBMSR_HA
|
||||
were erroneously present as 85xx names and values, leftover from
|
||||
the clone wars. Fix this by removing the 85xx cruft from the
|
||||
86xx codebase.
|
||||
|
||||
Signed-off-by: Jon Loeliger <jdl@freescale.com>
|
||||
|
||||
commit 13f5433f700d4da9f6fdf2a4bb80310133a7c170
|
||||
Author: Jon Loeliger <jdl@freescale.com>
|
||||
Date: Mon Feb 18 14:01:56 2008 -0600
|
||||
|
||||
86xx: Convert sbc8641d to use libfdt.
|
||||
|
||||
This is the proper fix for a missing closing brace in the function
|
||||
ft_cpu_setup() noticed by joe.hamman <at> embeddedspecialties.com.
|
||||
The ft_cpu_setup() function in mpc8641hpcn.c should have been
|
||||
removed earlier as it was under the obsolete CONFIG_OF_FLAT_TREE,
|
||||
but was missed. Only, the sbc8641d was nominally still using it.
|
||||
It all got ripped out, and the funcality that was in ft_board_setup()
|
||||
was refactored to remove the CPU portions into the new file
|
||||
cpu/mpc86xx/fdt.c instead. Make sbc8641d use this now.
|
||||
|
||||
Based loosely on an original patch from joe.hamman@embeddedspecialties.com
|
||||
|
||||
Signed-off-by: Jon Loeliger <jdl@freescale.com>
|
||||
|
||||
commit 04efddc87c50c84f85dad5c331c634a6ce830a83
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 23:35:31 2008 +0100
|
||||
|
||||
mpc86xx: Fix unused variable 'config' and 'immap'
|
||||
|
||||
and remove useless CONFIG_DDR_INTERLEAVE
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit 83d1b3876695c4f21faff2b731d9ef83f38ed208
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 23:03:36 2008 +0100
|
||||
|
||||
mpc86xx: Fix implicit declaration of functions 'init_laws' and 'disable_law'
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit b6f29c84c208a091f95a10cbc9852d729659ba20
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 14:15:31 2008 +0100
|
||||
|
||||
s3c24x0: Fix unused variable 'i' in function 'serial_init_dev'
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit 0937b8d869fdb42d6ad4fe312958639bd62c973f
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 14:15:32 2008 +0100
|
||||
|
||||
pxa: fix assignment from incompatible pointer type
|
||||
|
||||
fix mmc_bread function prototype
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit 64d792063fff90b8118179b092feee09fe5cae13
|
||||
Author: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
Date: Sun Feb 17 14:15:30 2008 +0100
|
||||
|
||||
at91cap9adk: fix implicit declaration of function 'eth_init'
|
||||
|
||||
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
|
||||
|
||||
commit 375c4353db8f900f7ec772e26fab116ec00f7d3a
|
||||
Author: Wolfgang Denk <wd@denx.de>
|
||||
Date: Sun Feb 17 15:43:44 2008 +0100
|
||||
|
||||
Remove files added by mistake, update CHANGELOG.
|
||||
|
||||
Signed-off-by: Wolfgang Denk <wd@denx.de>
|
||||
|
||||
commit b738654d3c84a30f2bfd9a8d7652ff20807c890c
|
||||
Author: Mike Nuss <mike@terascala.com>
|
||||
Date: Wed Feb 6 11:10:11 2008 -0500
|
||||
|
1
CREDITS
1
CREDITS
@ -528,4 +528,3 @@ N: Timo Tuunainen
|
||||
E: timo.tuunainen@sysart.fi
|
||||
D: Support for Artila M-501 starter kit
|
||||
W: http://www.sysart.fi/
|
||||
|
||||
|
@ -351,7 +351,7 @@ Travis Sawyer (travis.sawyer@sandburst.com>
|
||||
|
||||
Heiko Schocher <hs@denx.de>
|
||||
|
||||
ids8247 MPC8272
|
||||
ids8247 MPC8247
|
||||
jupiter MPC5200
|
||||
mgcoge MPC8247
|
||||
mgsuvd MPC852
|
||||
|
10
Makefile
10
Makefile
@ -24,7 +24,7 @@
|
||||
VERSION = 1
|
||||
PATCHLEVEL = 3
|
||||
SUBLEVEL = 2
|
||||
EXTRAVERSION = -rc1
|
||||
EXTRAVERSION = -rc2
|
||||
U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
|
||||
VERSION_FILE = $(obj)include/version_autogenerated.h
|
||||
|
||||
@ -244,7 +244,7 @@ LIBS += libfdt/libfdt.a
|
||||
LIBS += api/libapi.a
|
||||
|
||||
LIBS := $(addprefix $(obj),$(LIBS))
|
||||
.PHONY : $(LIBS)
|
||||
.PHONY : $(LIBS) $(VERSION_FILE)
|
||||
|
||||
# Add GCC lib
|
||||
PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
|
||||
@ -326,6 +326,9 @@ $(LIBS): depend $(obj)include/autoconf.mk
|
||||
$(SUBDIRS): depend $(obj)include/autoconf.mk
|
||||
$(MAKE) -C $@ all
|
||||
|
||||
$(LDSCRIPT): depend $(obj)include/autoconf.mk
|
||||
$(MAKE) -C $(dir $@) $(notdir $@)
|
||||
|
||||
$(NAND_SPL): $(VERSION_FILE) $(obj)include/autoconf.mk
|
||||
$(MAKE) -C nand_spl/board/$(BOARDDIR) all
|
||||
|
||||
@ -411,6 +414,7 @@ $(obj)System.map: $(obj)u-boot
|
||||
# to regenerate the autoconf.mk file.
|
||||
$(obj)include/autoconf.mk: $(obj)include/config.h $(VERSION_FILE)
|
||||
@$(XECHO) Generating include/autoconf.mk ; \
|
||||
set -e ; \
|
||||
: Generate the dependancies ; \
|
||||
$(CC) -M $(HOST_CFLAGS) $(CPPFLAGS) -MQ $@ include/common.h > $@.dep ; \
|
||||
: Extract the config macros ; \
|
||||
@ -1921,7 +1925,7 @@ M5485HFE_config : unconfig
|
||||
M5485EFE_config) BOOT=2;CODE=0;VID=1;USB=1;RAM=64;RAM1=0;; \
|
||||
M5485FFE_config) BOOT=2;CODE=32;VID=1;USB=1;RAM=64;RAM1=64;; \
|
||||
M5485GFE_config) BOOT=4;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \
|
||||
M5485HFE_config) BOOT=2;CODE=;VID=1;USB=0;RAM=64;RAM1=0;; \
|
||||
M5485HFE_config) BOOT=2;CODE=16;VID=1;USB=0;RAM=64;RAM1=0;; \
|
||||
esac; \
|
||||
>include/config.h ; \
|
||||
echo "#define CFG_BUSCLK 100000000" > $(obj)include/config.h ; \
|
||||
|
@ -198,6 +198,8 @@ void gpmc_init(void)
|
||||
sdelay(2000);
|
||||
|
||||
/* setup cs2 */
|
||||
__raw_writel(0x0, GPMC_CONFIG7_2); /* disable current map */
|
||||
sdelay(1000);
|
||||
__raw_writel(APOLLON_24XX_GPMC_CONFIG1_0 | mux | mtype | mwidth,
|
||||
GPMC_CONFIG1_2);
|
||||
/* It's same as cs 0 */
|
||||
|
@ -39,7 +39,7 @@
|
||||
#define FW_DIR "nx-fw"
|
||||
#define RESCUE_IMAGE "nxrs.img"
|
||||
#define LOAD_ADDR 0x400000
|
||||
#define RS_BOOTARGS "ramdisk=8192K"
|
||||
#define RS_BOOTARGS "ramdisk_size=8192K"
|
||||
|
||||
/* Main function for fwupdate */
|
||||
void cm5200_fwupdate(void);
|
||||
|
@ -280,13 +280,14 @@ void pci_init_board(void)
|
||||
volatile immap_t *immap = (immap_t *) CFG_CCSRBAR;
|
||||
volatile ccsr_gur_t *gur = &immap->im_gur;
|
||||
uint devdisr = gur->devdisr;
|
||||
uint io_sel = (gur->pordevsr & MPC85xx_PORDEVSR_IO_SEL) >> 19;
|
||||
uint host_agent = (gur->porbmsr & MPC85xx_PORBMSR_HA) >> 16;
|
||||
uint io_sel = (gur->pordevsr & MPC8610_PORDEVSR_IO_SEL)
|
||||
>> MPC8610_PORDEVSR_IO_SEL_SHIFT;
|
||||
uint host_agent = (gur->porbmsr & MPC8610_PORBMSR_HA)
|
||||
>> MPC8610_PORBMSR_HA_SHIFT;
|
||||
|
||||
printf( " pci_init_board: devdisr=%x, io_sel=%x, host_agent=%x\n",
|
||||
devdisr, io_sel, host_agent);
|
||||
|
||||
|
||||
#ifdef CONFIG_PCIE1
|
||||
{
|
||||
volatile ccsr_fsl_pci_t *pci = (ccsr_fsl_pci_t *) CFG_PCIE1_ADDR;
|
||||
|
@ -206,7 +206,8 @@ void pci_init_board(void)
|
||||
volatile immap_t *immap = (immap_t *) CFG_CCSRBAR;
|
||||
volatile ccsr_gur_t *gur = &immap->im_gur;
|
||||
uint devdisr = gur->devdisr;
|
||||
uint io_sel = (gur->pordevsr & MPC86xx_PORDEVSR_IO_SEL) >> 16;
|
||||
uint io_sel = (gur->pordevsr & MPC8641_PORDEVSR_IO_SEL)
|
||||
>> MPC8641_PORDEVSR_IO_SEL_SHIFT;
|
||||
|
||||
#ifdef CONFIG_PCI1
|
||||
{
|
||||
@ -214,7 +215,8 @@ void pci_init_board(void)
|
||||
extern void fsl_pci_init(struct pci_controller *hose);
|
||||
struct pci_controller *hose = &pci1_hose;
|
||||
#ifdef DEBUG
|
||||
uint host1_agent = (gur->porbmsr & MPC86xx_PORBMSR_HA) >> 17;
|
||||
uint host1_agent = (gur->porbmsr & MPC8641_PORBMSR_HA)
|
||||
>> MPC8641_PORBMSR_HA_SHIFT;
|
||||
uint pex1_agent = (host1_agent == 0) || (host1_agent == 1);
|
||||
#endif
|
||||
if ((io_sel == 2 || io_sel == 3 || io_sel == 5
|
||||
@ -321,28 +323,16 @@ void pci_init_board(void)
|
||||
|
||||
}
|
||||
|
||||
|
||||
#if defined(CONFIG_OF_BOARD_SETUP)
|
||||
|
||||
void
|
||||
ft_board_setup(void *blob, bd_t *bd)
|
||||
{
|
||||
int node, tmp[2];
|
||||
const char *path;
|
||||
|
||||
fdt_fixup_ethernet(blob, bd);
|
||||
|
||||
do_fixup_by_prop_u32(blob, "device_type", "cpu", 4,
|
||||
"timebase-frequency", bd->bi_busfreq / 4, 1);
|
||||
do_fixup_by_prop_u32(blob, "device_type", "cpu", 4,
|
||||
"bus-frequency", bd->bi_busfreq, 1);
|
||||
do_fixup_by_prop_u32(blob, "device_type", "cpu", 4,
|
||||
"clock-frequency", bd->bi_intfreq, 1);
|
||||
do_fixup_by_prop_u32(blob, "device_type", "soc", 4,
|
||||
"bus-frequency", bd->bi_busfreq, 1);
|
||||
|
||||
do_fixup_by_compat_u32(blob, "ns16550",
|
||||
"clock-frequency", bd->bi_busfreq, 1);
|
||||
|
||||
fdt_fixup_memory(blob, bd->bi_memstart, bd->bi_memsize);
|
||||
ft_cpu_setup(blob, bd);
|
||||
|
||||
node = fdt_path_offset(blob, "/aliases");
|
||||
tmp[0] = 0;
|
||||
|
@ -193,7 +193,7 @@ void ft_blob_update(void *blob, bd_t *bd)
|
||||
"err:%s\n", fdt_strerror(nodeoffset));
|
||||
}
|
||||
/* MAC Adresse */
|
||||
nodeoffset = fdt_path_offset (blob, "/soc866/cpm/scc");
|
||||
nodeoffset = fdt_path_offset (blob, "/soc866/cpm/ethernet");
|
||||
if (nodeoffset >= 0) {
|
||||
ret = fdt_setprop(blob, nodeoffset, "mac-address", bd->bi_enetaddr,
|
||||
sizeof(uchar) * 6);
|
||||
|
@ -42,4 +42,3 @@ void show_sdram_registers(void);
|
||||
#endif
|
||||
long int init_ppc405_sdram(unsigned int dram_size);
|
||||
#endif
|
||||
|
||||
|
@ -133,4 +133,3 @@ void common_misc_init_r(void)
|
||||
saveenv();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -25,7 +25,7 @@ include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o
|
||||
SOBJS = lowlevel_init.o
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
|
@ -1,40 +0,0 @@
|
||||
/*
|
||||
* (C) Copyright 2003
|
||||
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
/*-----------------------------------------------------------------------
|
||||
* flash_init()
|
||||
*
|
||||
* sets up flash_info and returns size of FLASH (bytes)
|
||||
*/
|
||||
unsigned long flash_init(void)
|
||||
{
|
||||
printf("Skipping flash_init\n");
|
||||
return(0);
|
||||
}
|
||||
|
||||
int write_buff(void *info, uchar *src, ulong addr, ulong cnt)
|
||||
{
|
||||
printf("write_buff not implemented\n");
|
||||
return(-1);
|
||||
}
|
@ -35,11 +35,8 @@
|
||||
#include <asm/immap_86xx.h>
|
||||
#include <asm/immap_fsl_pci.h>
|
||||
#include <spd.h>
|
||||
|
||||
#if defined(CONFIG_OF_FLAT_TREE)
|
||||
#include <ft_build.h>
|
||||
extern void ft_cpu_setup (void *blob, bd_t * bd);
|
||||
#endif
|
||||
#include <libfdt.h>
|
||||
#include <fdt_support.h>
|
||||
|
||||
#if defined(CONFIG_DDR_ECC) && !defined(CONFIG_ECC_INIT_VIA_DDRCONTROLLER)
|
||||
extern void ddr_enable_ecc (unsigned int dram_size);
|
||||
@ -341,18 +338,34 @@ void pci_init_board(void)
|
||||
|
||||
}
|
||||
|
||||
#if defined(CONFIG_OF_FLAT_TREE) && defined(CONFIG_OF_BOARD_SETUP)
|
||||
void ft_board_setup (void *blob, bd_t * bd)
|
||||
|
||||
#if defined(CONFIG_OF_BOARD_SETUP)
|
||||
|
||||
void
|
||||
ft_board_setup (void *blob, bd_t *bd)
|
||||
{
|
||||
u32 *p;
|
||||
int len;
|
||||
int node, tmp[2];
|
||||
const char *path;
|
||||
|
||||
ft_cpu_setup (blob, bd);
|
||||
ft_cpu_setup(blob, bd);
|
||||
|
||||
p = ft_get_prop (blob, "/memory/reg", &len);
|
||||
if (p != NULL) {
|
||||
*p++ = cpu_to_be32 (bd->bi_memstart);
|
||||
*p = cpu_to_be32 (bd->bi_memsize);
|
||||
node = fdt_path_offset(blob, "/aliases");
|
||||
tmp[0] = 0;
|
||||
if (node >= 0) {
|
||||
#ifdef CONFIG_PCI1
|
||||
path = fdt_getprop(blob, node, "pci0", NULL);
|
||||
if (path) {
|
||||
tmp[1] = pci1_hose.last_busno - pci1_hose.first_busno;
|
||||
do_fixup_by_path(blob, path, "bus-range", &tmp, 8, 1);
|
||||
}
|
||||
#endif
|
||||
#ifdef CONFIG_PCI2
|
||||
path = fdt_getprop(blob, node, "pci1", NULL);
|
||||
if (path) {
|
||||
tmp[1] = pci2_hose.last_busno - pci2_hose.first_busno;
|
||||
do_fixup_by_path(blob, path, "bus-range", &tmp, 8, 1);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
@ -550,10 +550,11 @@ int getenv_r (char *name, char *buf, unsigned len)
|
||||
return (-1);
|
||||
}
|
||||
|
||||
#if defined(CFG_ENV_IS_IN_NVRAM) || defined(CFG_ENV_IS_IN_EEPROM) \
|
||||
#if ((defined(CFG_ENV_IS_IN_NVRAM) || defined(CFG_ENV_IS_IN_EEPROM) \
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_FLASH)) \
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_NAND)) \
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_ONENAND))
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_ONENAND))) \
|
||||
&& !defined(CFG_ENV_IS_NOWHERE))
|
||||
int do_saveenv (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
|
||||
{
|
||||
extern char * env_name_spec;
|
||||
@ -605,10 +606,11 @@ U_BOOT_CMD(
|
||||
" - delete environment variable 'name'\n"
|
||||
);
|
||||
|
||||
#if defined(CFG_ENV_IS_IN_NVRAM) || defined(CFG_ENV_IS_IN_EEPROM) \
|
||||
#if ((defined(CFG_ENV_IS_IN_NVRAM) || defined(CFG_ENV_IS_IN_EEPROM) \
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_FLASH)) \
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_NAND)) \
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_ONENAND))
|
||||
|| (defined(CONFIG_CMD_ENV) && defined(CONFIG_CMD_ONENAND))) \
|
||||
&& !defined(CFG_ENV_IS_NOWHERE))
|
||||
U_BOOT_CMD(
|
||||
saveenv, 1, 0, do_saveenv,
|
||||
"saveenv - save environment variables to persistent storage\n",
|
||||
|
@ -69,6 +69,9 @@ PLATFORM_CPPFLAGS+= -D__ARM__
|
||||
endif
|
||||
endif
|
||||
|
||||
# Load generated board configuration
|
||||
sinclude $(OBJTREE)/include/autoconf.mk
|
||||
|
||||
ifdef ARCH
|
||||
sinclude $(TOPDIR)/$(ARCH)_config.mk # include architecture dependend rules
|
||||
endif
|
||||
@ -87,9 +90,6 @@ ifdef BOARD
|
||||
sinclude $(TOPDIR)/board/$(BOARDDIR)/config.mk # include board specific rules
|
||||
endif
|
||||
|
||||
# Load generated board configuration
|
||||
sinclude $(OBJTREE)/include/autoconf.mk
|
||||
|
||||
#########################################################################
|
||||
|
||||
CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
|
||||
|
@ -61,10 +61,12 @@ davinci_timer *timer = (davinci_timer *)CFG_TIMERBASE;
|
||||
#define TIMER_LOAD_VAL (CFG_HZ_CLOCK / CFG_HZ)
|
||||
#define READ_TIMER timer->tim34
|
||||
|
||||
/* Timer runs with CFG_HZ_CLOCK, currently 27MHz. To avoid wrap
|
||||
around of timestamp already after min ~159s, divide it, e.g. by 16.
|
||||
timestamp will then wrap around all min ~42min */
|
||||
#define DIV(x) ((x) >> 4)
|
||||
/*
|
||||
* Timer runs with CFG_HZ_CLOCK, currently 27MHz. To avoid wrap
|
||||
* around of timestamp already after min ~159s, divide it, e.g. by 16.
|
||||
* timestamp will then wrap around all min ~42min
|
||||
*/
|
||||
#define DIV(x) ((x) >> 4)
|
||||
|
||||
static ulong timestamp;
|
||||
static ulong lastinc;
|
||||
@ -106,20 +108,20 @@ void udelay(unsigned long usec)
|
||||
|
||||
void reset_timer_masked(void)
|
||||
{
|
||||
lastinc = DIV(READ_TIMER);
|
||||
lastinc = DIV(READ_TIMER);
|
||||
timestamp = 0;
|
||||
}
|
||||
|
||||
ulong get_timer_raw(void)
|
||||
{
|
||||
ulong now = DIV(READ_TIMER);
|
||||
ulong now = DIV(READ_TIMER);
|
||||
|
||||
if (now >= lastinc) {
|
||||
/* normal mode */
|
||||
timestamp += now - lastinc;
|
||||
} else {
|
||||
/* overflow ... */
|
||||
timestamp += now + DIV(TIMER_LOAD_VAL) - lastinc;
|
||||
timestamp += now + DIV(TIMER_LOAD_VAL) - lastinc;
|
||||
}
|
||||
lastinc = now;
|
||||
return timestamp;
|
||||
@ -127,7 +129,7 @@ ulong get_timer_raw(void)
|
||||
|
||||
ulong get_timer_masked(void)
|
||||
{
|
||||
return(get_timer_raw() / DIV(TIMER_LOAD_VAL));
|
||||
return(get_timer_raw() / DIV(TIMER_LOAD_VAL));
|
||||
}
|
||||
|
||||
void udelay_masked(unsigned long usec)
|
||||
|
@ -26,11 +26,11 @@
|
||||
PLATFORM_RELFLAGS += -ffixed-d7 -msep-data
|
||||
|
||||
cfg=$(shell grep configs $(OBJTREE)/include/config.h | sed 's/.*<\(configs.*\)>/\1/')
|
||||
is5249=$(shell grep CONFIG_M5249 $(TOPDIR)/include/$(cfg))
|
||||
is5253=$(shell grep CONFIG_M5253 $(TOPDIR)/include/$(cfg))
|
||||
is5271=$(shell grep CONFIG_M5271 $(TOPDIR)/include/$(cfg))
|
||||
is5272=$(shell grep CONFIG_M5272 $(TOPDIR)/include/$(cfg))
|
||||
is5282=$(shell grep CONFIG_M5282 $(TOPDIR)/include/$(cfg))
|
||||
is5249:=$(shell grep CONFIG_M5249 $(TOPDIR)/include/$(cfg))
|
||||
is5253:=$(shell grep CONFIG_M5253 $(TOPDIR)/include/$(cfg))
|
||||
is5271:=$(shell grep CONFIG_M5271 $(TOPDIR)/include/$(cfg))
|
||||
is5272:=$(shell grep CONFIG_M5272 $(TOPDIR)/include/$(cfg))
|
||||
is5282:=$(shell grep CONFIG_M5282 $(TOPDIR)/include/$(cfg))
|
||||
|
||||
|
||||
ifeq ($(findstring 4.2,$(shell $(CC) --version)),4.2)
|
||||
|
@ -77,7 +77,7 @@ void dtimer_intr_setup(void)
|
||||
volatile int0_t *intp = (int0_t *) (CFG_INTR_BASE);
|
||||
|
||||
intp->icr0[CFG_TMRINTR_NO] = CFG_TMRINTR_PRI;
|
||||
intp->imrl0 &= ~0xFFFFFFFE;
|
||||
intp->imrl0 &= 0xFFFFFFFE;
|
||||
intp->imrl0 &= ~CFG_TMRINTR_MASK;
|
||||
}
|
||||
#endif /* CONFIG_MCFTMR */
|
||||
|
@ -21,7 +21,7 @@
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
v=$(shell $(AS) --version |grep "GNU assembler" |cut -d. -f2)
|
||||
MIPSFLAGS=$(shell \
|
||||
MIPSFLAGS:=$(shell \
|
||||
if [ "$v" -lt "14" ]; then \
|
||||
echo "-mcpu=4kc"; \
|
||||
else \
|
||||
|
@ -28,13 +28,20 @@ include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = $(obj)lib$(CPU).a
|
||||
|
||||
START = start.o #resetvec.o
|
||||
START = start.o
|
||||
SOBJS = cache.o
|
||||
COBJS = traps.o cpu.o cpu_init.o speed.o interrupts.o \
|
||||
spd_sdram.o
|
||||
|
||||
SRCS := $(START:.o=.S) $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
|
||||
COBJS-y += traps.o
|
||||
COBJS-y += cpu.o
|
||||
COBJS-y += cpu_init.o
|
||||
COBJS-y += speed.o
|
||||
COBJS-y += interrupts.o
|
||||
COBJS-y += spd_sdram.o
|
||||
|
||||
COBJS-$(CONFIG_OF_LIBFDT) += fdt.o
|
||||
|
||||
SRCS := $(START:.o=.S) $(SOBJS:.o=.S) $(COBJS-y:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS-y))
|
||||
START := $(addprefix $(obj),$(START))
|
||||
|
||||
all: $(obj).depend $(START) $(LIB)
|
||||
|
@ -29,9 +29,6 @@
|
||||
#include <mpc86xx.h>
|
||||
#include <asm/fsl_law.h>
|
||||
|
||||
#if defined(CONFIG_OF_FLAT_TREE)
|
||||
#include <ft_build.h>
|
||||
#endif
|
||||
|
||||
int
|
||||
checkcpu(void)
|
||||
@ -269,64 +266,6 @@ dma_xfer(void *dest, uint count, void *src)
|
||||
#endif /* CONFIG_DDR_ECC */
|
||||
|
||||
|
||||
#ifdef CONFIG_OF_FLAT_TREE
|
||||
void
|
||||
ft_cpu_setup(void *blob, bd_t *bd)
|
||||
{
|
||||
u32 *p;
|
||||
ulong clock;
|
||||
int len;
|
||||
|
||||
clock = bd->bi_busfreq;
|
||||
p = ft_get_prop(blob, "/cpus/" OF_CPU "/bus-frequency", &len);
|
||||
if (p != NULL)
|
||||
*p = cpu_to_be32(clock);
|
||||
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/serial@4500/clock-frequency", &len);
|
||||
if (p != NULL)
|
||||
*p = cpu_to_be32(clock);
|
||||
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/serial@4600/clock-frequency", &len);
|
||||
if (p != NULL)
|
||||
*p = cpu_to_be32(clock);
|
||||
|
||||
#if defined(CONFIG_TSEC1)
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@24000/mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enetaddr, 6);
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@24000/local-mac-address", &len);
|
||||
if (p)
|
||||
memcpy(p, bd->bi_enetaddr, 6);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_TSEC2)
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@25000/mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enet1addr, 6);
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@25000/local-mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enet1addr, 6);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_TSEC3)
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@26000/mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enet2addr, 6);
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@26000/local-mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enet2addr, 6);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_TSEC4)
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@27000/mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enet3addr, 6);
|
||||
p = ft_get_prop(blob, "/" OF_SOC "/ethernet@27000/local-mac-address", &len);
|
||||
if (p != NULL)
|
||||
memcpy(p, bd->bi_enet3addr, 6);
|
||||
#endif
|
||||
#endif /* CONFIG_OF_FLAT_TREE */
|
||||
|
||||
/*
|
||||
* Print out the state of various machine registers.
|
||||
* Currently prints out LAWs and BR0/OR0
|
||||
|
@ -28,6 +28,7 @@
|
||||
|
||||
#include <common.h>
|
||||
#include <mpc86xx.h>
|
||||
#include <asm/fsl_law.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
|
35
cpu/mpc86xx/fdt.c
Normal file
35
cpu/mpc86xx/fdt.c
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright 2008 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* Version 2 as published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <libfdt.h>
|
||||
#include <fdt_support.h>
|
||||
|
||||
void ft_cpu_setup(void *blob, bd_t *bd)
|
||||
{
|
||||
do_fixup_by_prop_u32(blob, "device_type", "cpu", 4,
|
||||
"timebase-frequency", bd->bi_busfreq / 4, 1);
|
||||
do_fixup_by_prop_u32(blob, "device_type", "cpu", 4,
|
||||
"bus-frequency", bd->bi_busfreq, 1);
|
||||
do_fixup_by_prop_u32(blob, "device_type", "cpu", 4,
|
||||
"clock-frequency", bd->bi_intfreq, 1);
|
||||
do_fixup_by_prop_u32(blob, "device_type", "soc", 4,
|
||||
"bus-frequency", bd->bi_busfreq, 1);
|
||||
|
||||
fdt_fixup_memory(blob, (u64)bd->bi_memstart, (u64)bd->bi_memsize);
|
||||
|
||||
#if defined(CONFIG_HAS_ETH0) || defined(CONFIG_HAS_ETH1) \
|
||||
|| defined(CONFIG_HAS_ETH2) || defined(CONFIG_HAS_ETH3)
|
||||
fdt_fixup_ethernet(blob, bd);
|
||||
#endif
|
||||
|
||||
#ifdef CFG_NS16550
|
||||
do_fixup_by_compat_u32(blob, "ns16550",
|
||||
"clock-frequency", bd->bi_busfreq, 1);
|
||||
#endif
|
||||
}
|
@ -943,7 +943,7 @@ unsigned int enable_ddr(unsigned int ddr_num)
|
||||
spd_eeprom_t spd1,spd2;
|
||||
volatile ccsr_ddr_t *ddr;
|
||||
unsigned sdram_cfg_1;
|
||||
unsigned char sdram_type, mem_type, config, mod_attr;
|
||||
unsigned char sdram_type, mem_type, mod_attr;
|
||||
unsigned char d_init;
|
||||
unsigned int no_dimm1=0, no_dimm2=0;
|
||||
|
||||
@ -1017,6 +1017,10 @@ unsigned int enable_ddr(unsigned int ddr_num)
|
||||
printf("No memory modules found for DDR controller %d!!\n", ddr_num);
|
||||
return 0;
|
||||
} else {
|
||||
|
||||
#if defined(CONFIG_DDR_ECC)
|
||||
unsigned char config;
|
||||
#endif
|
||||
mem_type = no_dimm2 ? spd1.mem_type : spd2.mem_type;
|
||||
|
||||
/*
|
||||
@ -1122,8 +1126,8 @@ spd_sdram(void)
|
||||
int memsize_ddr1_dimm2 = 0;
|
||||
int memsize_ddr1 = 0;
|
||||
unsigned int law_size_ddr1;
|
||||
volatile immap_t *immap = (immap_t *)CFG_IMMR;
|
||||
#ifdef CONFIG_DDR_INTERLEAVE
|
||||
volatile immap_t *immap = (immap_t *)CFG_IMMR;
|
||||
volatile ccsr_ddr_t *ddr1 = &immap->im_ddr1;
|
||||
#endif
|
||||
|
||||
@ -1183,7 +1187,6 @@ spd_sdram(void)
|
||||
#endif
|
||||
debug("Interleaved memory size is 0x%08lx\n", memsize_total);
|
||||
|
||||
#ifdef CONFIG_DDR_INTERLEAVE
|
||||
#if (CFG_PAGE_INTERLEAVING == 1)
|
||||
printf("Page ");
|
||||
#elif (CFG_BANK_INTERLEAVING == 1)
|
||||
@ -1192,7 +1195,6 @@ spd_sdram(void)
|
||||
printf("Super-bank ");
|
||||
#else
|
||||
printf("Cache-line ");
|
||||
#endif
|
||||
#endif
|
||||
printf("Interleaved");
|
||||
return memsize_total * 1024 * 1024;
|
||||
|
@ -25,7 +25,7 @@ PLATFORM_RELFLAGS += -fPIC -ffixed-r14 -meabi -fno-strict-aliasing
|
||||
PLATFORM_CPPFLAGS += -DCONFIG_4xx -ffixed-r2 -mstring -msoft-float
|
||||
|
||||
cfg=$(shell grep configs $(OBJTREE)/include/config.h | sed 's/.*<\(configs.*\)>/\1/')
|
||||
is440=$(shell grep CONFIG_440 $(TOPDIR)/include/$(cfg))
|
||||
is440:=$(shell grep CONFIG_440 $(TOPDIR)/include/$(cfg))
|
||||
|
||||
ifneq (,$(findstring CONFIG_440,$(is440)))
|
||||
PLATFORM_CPPFLAGS += -Wa,-m440 -mcpu=440
|
||||
|
@ -65,3 +65,9 @@ Examples;
|
||||
* 40 is SYSCLK, 2.5 is COREPLL ratio, 10 is MPXPLL ratio
|
||||
*/
|
||||
pixis-reset altbank cf 40 2.5 10
|
||||
|
||||
|
||||
DIP Switch Settings
|
||||
-------------------
|
||||
To manually switch the flash banks using the DIP switch
|
||||
settings, toggle both SW6:1 and SW6:2.
|
||||
|
@ -179,7 +179,13 @@ int dtt_init (void)
|
||||
|
||||
int dtt_get_temp(int sensor)
|
||||
{
|
||||
return (dtt_read(sensor, DTT_READ_TEMP) / 256);
|
||||
int const ret = dtt_read(sensor, DTT_READ_TEMP);
|
||||
|
||||
if (ret < 0) {
|
||||
printf("DTT temperature read failed.\n");
|
||||
return 0;
|
||||
}
|
||||
return (int)((int16_t) ret / 256);
|
||||
} /* dtt_get_temp() */
|
||||
|
||||
#endif /* CONFIG_DTT_LM75 */
|
||||
|
@ -1538,7 +1538,12 @@ static int __flash_detect_cfi (flash_info_t * info, struct cfi_qry *qry)
|
||||
{
|
||||
int cfi_offset;
|
||||
|
||||
flash_write_cmd (info, 0, 0, info->cmd_reset);
|
||||
/* We do not yet know what kind of commandset to use, so we issue
|
||||
the reset command in both Intel and AMD variants, in the hope
|
||||
that AMD flash roms ignore the Intel command. */
|
||||
flash_write_cmd (info, 0, 0, AMD_CMD_RESET);
|
||||
flash_write_cmd (info, 0, 0, FLASH_CMD_RESET);
|
||||
|
||||
for (cfi_offset=0;
|
||||
cfi_offset < sizeof(flash_offset_cfi) / sizeof(uint);
|
||||
cfi_offset++) {
|
||||
|
@ -32,9 +32,9 @@
|
||||
#define ULI5261_DEVICE_ID 0x5261
|
||||
#define ULI5263_DEVICE_ID 0x5263
|
||||
/* ULi M5261 ID*/
|
||||
#define PCI_ULI5261_ID ULI5261_DEVICE_ID << 16 | ULI_VENDOR_ID
|
||||
#define PCI_ULI5261_ID (ULI5261_DEVICE_ID << 16 | ULI_VENDOR_ID)
|
||||
/* ULi M5263 ID*/
|
||||
#define PCI_ULI5263_ID ULI5263_DEVICE_ID << 16 | ULI_VENDOR_ID
|
||||
#define PCI_ULI5263_ID (ULI5263_DEVICE_ID << 16 | ULI_VENDOR_ID)
|
||||
|
||||
#define ULI526X_IO_SIZE 0x100
|
||||
#define TX_DESC_CNT 0x10 /* Allocated Tx descriptors */
|
||||
@ -281,7 +281,7 @@ static int uli526x_init_one(struct eth_device *dev, bd_t *bis)
|
||||
if (db->desc_pool_ptr == NULL)
|
||||
return -1;
|
||||
|
||||
db->buf_pool_ptr = &buf_pool[0];
|
||||
db->buf_pool_ptr = (uchar *)&buf_pool[0];
|
||||
db->buf_pool_dma_ptr = (dma_addr_t)&buf_pool[0];
|
||||
if (db->buf_pool_ptr == NULL)
|
||||
return -1;
|
||||
@ -588,7 +588,7 @@ static int uli526x_rx_packet(struct eth_device *dev)
|
||||
__FUNCTION__, i, rxptr->rx_buf_ptr[i]);
|
||||
#endif
|
||||
|
||||
NetReceive(rxptr->rx_buf_ptr, rxlen);
|
||||
NetReceive((uchar *)rxptr->rx_buf_ptr, rxlen);
|
||||
uli526x_reuse_buf(rxptr);
|
||||
|
||||
} else {
|
||||
@ -656,7 +656,7 @@ static void uli526x_descriptor_init(struct uli526x_board_info *db,
|
||||
tmp_tx_dma = db->first_tx_desc_dma;
|
||||
for (tmp_tx = db->first_tx_desc, i = 0;
|
||||
i < TX_DESC_CNT; i++, tmp_tx++) {
|
||||
tmp_tx->tx_buf_ptr = tmp_buf;
|
||||
tmp_tx->tx_buf_ptr = (char *)tmp_buf;
|
||||
tmp_tx->tdes0 = cpu_to_le32(0);
|
||||
tmp_tx->tdes1 = cpu_to_le32(0x81000000); /* IC, chain */
|
||||
tmp_tx->tdes2 = cpu_to_le32(tmp_buf_dma);
|
||||
|
@ -1,3 +1,54 @@
|
||||
/*
|
||||
* (C) Copyright 2007-2008 Semihalf
|
||||
*
|
||||
* Written by: Rafal Jaworowski <raj@semihalf.com>
|
||||
*
|
||||
* This file is dual licensed; you can use it under the terms of
|
||||
* either the GPL, or the BSD license, at your option.
|
||||
*
|
||||
* I. GPL:
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*
|
||||
* Alternatively,
|
||||
*
|
||||
* II. BSD license:
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _API_PUBLIC_H_
|
||||
#define _API_PUBLIC_H_
|
||||
|
||||
|
@ -17,9 +17,9 @@ typedef unsigned short __u16;
|
||||
typedef __signed__ int __s32;
|
||||
typedef unsigned int __u32;
|
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -39,9 +39,9 @@ typedef unsigned short __u16;
|
||||
typedef __signed__ int __s32;
|
||||
typedef unsigned int __u32;
|
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
@ -50,9 +50,9 @@ typedef __signed__ int __s32;
|
||||
typedef unsigned int __u32;
|
||||
|
||||
/* HK0617 -- Changes to unsigned long temporarily */
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -14,9 +14,9 @@ typedef unsigned short __u16;
|
||||
typedef __signed__ int __s32;
|
||||
typedef unsigned int __u32;
|
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
|
@ -33,9 +33,9 @@ typedef unsigned long __u64;
|
||||
|
||||
#else
|
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -3,7 +3,6 @@
|
||||
|
||||
#include <asm/io.h>
|
||||
|
||||
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
#define SET_LAW_ENTRY(idx, a, sz, trgt) \
|
||||
{ .index = idx, .addr = a, .size = sz, .trgt_id = trgt }
|
||||
|
||||
|
@ -1256,12 +1256,16 @@ typedef struct ccsr_rio {
|
||||
typedef struct ccsr_gur {
|
||||
uint porpllsr; /* 0xe0000 - POR PLL ratio status register */
|
||||
uint porbmsr; /* 0xe0004 - POR boot mode status register */
|
||||
#define MPC86xx_PORBMSR_HA 0x00060000
|
||||
#define MPC85xx_PORBMSR_HA 0x00070000
|
||||
#define MPC8610_PORBMSR_HA 0x00070000
|
||||
#define MPC8610_PORBMSR_HA_SHIFT 16
|
||||
#define MPC8641_PORBMSR_HA 0x00060000
|
||||
#define MPC8641_PORBMSR_HA_SHIFT 17
|
||||
uint porimpscr; /* 0xe0008 - POR I/O impedance status and control register */
|
||||
uint pordevsr; /* 0xe000c - POR I/O device status regsiter */
|
||||
#define MPC86xx_PORDEVSR_IO_SEL 0x000F0000
|
||||
#define MPC85xx_PORDEVSR_IO_SEL 0x00380000 /* 85xx platform type */
|
||||
#define MPC8610_PORDEVSR_IO_SEL 0x00380000
|
||||
#define MPC8610_PORDEVSR_IO_SEL_SHIFT 19
|
||||
#define MPC8641_PORDEVSR_IO_SEL 0x000F0000
|
||||
#define MPC8641_PORDEVSR_IO_SEL_SHIFT 16
|
||||
#define MPC86xx_PORDEVSR_CORE1TE 0x00000080 /* ASMP (Core1 addr trans) */
|
||||
uint pordbgmsr; /* 0xe0010 - POR debug mode status register */
|
||||
char res1[12];
|
||||
|
@ -427,7 +427,6 @@ extern void disable_tlb(u8 esel);
|
||||
extern void invalidate_tlb(u8 tlb);
|
||||
extern void init_tlbs(void);
|
||||
|
||||
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
#define SET_TLB_ENTRY(_tlb, _epn, _rpn, _perms, _wimge, _ts, _esel, _sz, _iprot) \
|
||||
{ .tlb = _tlb, .epn = _epn, .rpn = _rpn, .perms = _perms, \
|
||||
.wimge = _wimge, .ts = _ts, .esel = _esel, .tsize = _sz, .iprot = _iprot }
|
||||
|
@ -14,9 +14,9 @@ typedef unsigned short __u16;
|
||||
typedef __signed__ int __s32;
|
||||
typedef unsigned int __u32;
|
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
|
@ -19,9 +19,9 @@ typedef unsigned short __u16;
|
||||
typedef __signed__ int __s32;
|
||||
typedef unsigned int __u32;
|
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
typedef __signed__ long long __s64;
|
||||
typedef unsigned long long __u64;
|
||||
#if defined(__GNUC__)
|
||||
__extension__ typedef __signed__ long long __s64;
|
||||
__extension__ typedef unsigned long long __u64;
|
||||
#endif
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
@ -54,7 +54,7 @@
|
||||
|
||||
#undef CONFIG_CLOCKS_IN_MHZ /* clocks passed to Linux in Hz */
|
||||
|
||||
#define CONFIG_BOOTARGS "root=/dev/ram rw ramdisk=4096"
|
||||
#define CONFIG_BOOTARGS "root=/dev/ram rw ramdisk_size=4096"
|
||||
|
||||
/*
|
||||
* BOOTP options
|
||||
|
@ -24,7 +24,7 @@
|
||||
#define CONFIG_FSL_DIU_FB 1 /* FSL DIU */
|
||||
|
||||
/* video */
|
||||
#define CONFIG_VIDEO
|
||||
#undef CONFIG_VIDEO
|
||||
|
||||
#if defined(CONFIG_VIDEO)
|
||||
#define CONFIG_CFB_CONSOLE
|
||||
|
@ -47,7 +47,7 @@
|
||||
#undef CONFIG_8xx_CONS_NONE
|
||||
#define CONFIG_BAUDRATE 57600 /* console baudrate = 115kbps */
|
||||
#define CONFIG_BOOTDELAY 2 /* autoboot after 2 seconds */
|
||||
#define CONFIG_BOOTARGS "ramdisk=8000 "\
|
||||
#define CONFIG_BOOTARGS "ramdisk_size=8000 "\
|
||||
"root=/dev/nfs rw nfsroot=10.77.77.250:/ppcroot "\
|
||||
"nfsaddrs=10.77.77.20:10.77.77.250"
|
||||
#define CONFIG_BOOTCOMMAND "bootm 400e0000"
|
||||
|
@ -366,12 +366,11 @@
|
||||
#define CFG_PCI_SUBSYS_VENDORID 0x10e8 /* AMCC */
|
||||
#define CFG_PCI_SUBSYS_ID 0xcafe /* Whatever */
|
||||
|
||||
#if 0
|
||||
/*
|
||||
* ToDo: Watchdog is not test fully, so exclude it for now
|
||||
*/
|
||||
#define CONFIG_HW_WATCHDOG 1 /* Use external HW-Watchdog */
|
||||
#endif
|
||||
#define CONFIG_WD_PERIOD 40000 /* in usec */
|
||||
|
||||
/*
|
||||
* For booting Linux, the board info and command line data
|
||||
|
@ -268,13 +268,9 @@
|
||||
/*
|
||||
* Pass open firmware flat tree to kernel
|
||||
*/
|
||||
#define CONFIG_OF_FLAT_TREE 1
|
||||
#define CONFIG_OF_BOARD_SETUP 1
|
||||
|
||||
#define OF_CPU "PowerPC,8641@0"
|
||||
#define OF_SOC "soc@f8000000"
|
||||
#define OF_TBCLK (bd->bi_busfreq / 4)
|
||||
#define OF_STDOUT_PATH "/soc@f8000000/serial@4500"
|
||||
#define CONFIG_OF_LIBFDT 1
|
||||
#define CONFIG_OF_BOARD_SETUP 1
|
||||
#define CONFIG_OF_STDOUT_VIA_ALIAS 1
|
||||
|
||||
#define CFG_64BIT_VSPRINTF 1
|
||||
#define CFG_64BIT_STRTOUL 1
|
||||
|
@ -43,7 +43,13 @@
|
||||
#define CONFIG_SYS_CLK_FREQ ((in8(CFG_BCSR_BASE + 3) & 0x80) ? \
|
||||
33333333 : 33000000)
|
||||
|
||||
#if 0
|
||||
/*
|
||||
* Define this if you want support for video console with radeon 9200 pci card
|
||||
* Also set TEXT_BASE to 0xFFF80000 in board/amcc/sequoia/config.mk in this case
|
||||
*/
|
||||
#undef CONFIG_VIDEO
|
||||
|
||||
#ifdef CONFIG_VIDEO
|
||||
/*
|
||||
* 44x dcache supported is working now on sequoia, but we don't enable
|
||||
* it yet since it needs further testing
|
||||
@ -58,8 +64,13 @@
|
||||
* Base addresses -- Note these are effective addresses where the actual
|
||||
* resources get mapped (not physical addresses).
|
||||
*/
|
||||
#ifndef CONFIG_VIDEO
|
||||
#define CFG_MONITOR_LEN (384 * 1024) /* Reserve 384 kiB for Monitor */
|
||||
#define CFG_MALLOC_LEN (256 * 1024) /* Reserve 256 kiB for malloc() */
|
||||
#else
|
||||
#define CFG_MONITOR_LEN (512 * 1024) /* Reserve 512 kB for Monitor */
|
||||
#define CFG_MALLOC_LEN (1024 * 1024) /* Reserve 1024 kB for malloc() */
|
||||
#endif
|
||||
|
||||
#define CFG_TLB_FOR_BOOT_FLASH 0x0003
|
||||
#define CFG_BOOT_BASE_ADDR 0xf0000000
|
||||
@ -571,4 +582,17 @@
|
||||
#define CONFIG_OF_LIBFDT 1
|
||||
#define CONFIG_OF_BOARD_SETUP 1
|
||||
|
||||
#ifdef CONFIG_VIDEO
|
||||
#define CONFIG_BIOSEMU /* x86 bios emulator for vga bios */
|
||||
#define CONFIG_ATI_RADEON_FB /* use radeon framebuffer driver */
|
||||
#define VIDEO_IO_OFFSET 0xe8000000
|
||||
#define CFG_ISA_IO_BASE_ADDRESS VIDEO_IO_OFFSET
|
||||
#define CONFIG_VIDEO_SW_CURSOR
|
||||
#define CONFIG_VIDEO_LOGO
|
||||
#define CONFIG_CFB_CONSOLE
|
||||
#define CONFIG_SPLASH_SCREEN
|
||||
#define CONFIG_VGA_AS_SINGLE_DEVICE
|
||||
#define CONFIG_CMD_BMP
|
||||
#endif
|
||||
|
||||
#endif /* __CONFIG_H */
|
||||
|
@ -333,7 +333,7 @@
|
||||
"nfsargs=setenv bootargs root=/dev/nfs rw" \
|
||||
" nfsroot=${serverip}:${rootpath}\0" \
|
||||
"ramargs=setenv bootargs root=/dev/ram rw" \
|
||||
" ramdisk=${ramdisk_size}\0" \
|
||||
" ramdisk_size=${ramdisk_size}\0" \
|
||||
"addip=setenv bootargs ${bootargs} " \
|
||||
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \
|
||||
":${hostname}:${netdev}:off panic=1\0" \
|
||||
|
@ -121,12 +121,13 @@ static int display_banner(void)
|
||||
return (0);
|
||||
}
|
||||
|
||||
#ifndef CFG_NO_FLASH
|
||||
static void display_flash_config(ulong size)
|
||||
{
|
||||
puts ("Flash: ");
|
||||
print_size (size, "\n");
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
static int init_baudrate (void)
|
||||
{
|
||||
@ -247,7 +248,7 @@ void board_init_f(ulong bootflag)
|
||||
debug ("Reserving %d Bytes for Global Data at: %08lx\n",
|
||||
sizeof (gd_t), addr_sp);
|
||||
|
||||
/* Reserve memory for boot params.
|
||||
/* Reserve memory for boot params.
|
||||
*/
|
||||
addr_sp -= CFG_BOOTPARAMS_LEN;
|
||||
bd->bi_boot_params = addr_sp;
|
||||
@ -301,7 +302,9 @@ void board_init_f(ulong bootflag)
|
||||
void board_init_r (gd_t *id, ulong dest_addr)
|
||||
{
|
||||
cmd_tbl_t *cmdtp;
|
||||
#ifndef CFG_NO_FLASH
|
||||
ulong size;
|
||||
#endif
|
||||
extern void malloc_bin_reloc (void);
|
||||
#ifndef CFG_ENV_IS_NOWHERE
|
||||
extern char * env_name_spec;
|
||||
@ -322,7 +325,7 @@ void board_init_r (gd_t *id, ulong dest_addr)
|
||||
/*
|
||||
* We have to relocate the command table manually
|
||||
*/
|
||||
for (cmdtp = &__u_boot_cmd_start; cmdtp != &__u_boot_cmd_end; cmdtp++) {
|
||||
for (cmdtp = &__u_boot_cmd_start; cmdtp != &__u_boot_cmd_end; cmdtp++) {
|
||||
ulong addr;
|
||||
|
||||
addr = (ulong) (cmdtp->cmd) + gd->reloc_off;
|
||||
@ -352,13 +355,16 @@ void board_init_r (gd_t *id, ulong dest_addr)
|
||||
env_name_spec += gd->reloc_off;
|
||||
#endif
|
||||
|
||||
bd = gd->bd;
|
||||
|
||||
#ifndef CFG_NO_FLASH
|
||||
/* configure available FLASH banks */
|
||||
size = flash_init();
|
||||
display_flash_config (size);
|
||||
|
||||
bd = gd->bd;
|
||||
bd->bi_flashstart = CFG_FLASH_BASE;
|
||||
bd->bi_flashsize = size;
|
||||
#endif
|
||||
|
||||
bd->bi_flashstart = CFG_FLASH_BASE;
|
||||
#if CFG_MONITOR_BASE == CFG_FLASH_BASE
|
||||
bd->bi_flashoffset = monitor_flash_len; /* reserved area for U-Boot */
|
||||
#else
|
||||
|
@ -23,6 +23,9 @@
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#ifndef CONFIG_WD_PERIOD
|
||||
# define CONFIG_WD_PERIOD (10 * 1000 * 1000) /* 10 seconds default*/
|
||||
#endif
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
@ -53,9 +56,14 @@ unsigned long usec2ticks(unsigned long usec)
|
||||
*/
|
||||
void udelay(unsigned long usec)
|
||||
{
|
||||
ulong ticks = usec2ticks (usec);
|
||||
ulong ticks, kv;
|
||||
|
||||
wait_ticks (ticks);
|
||||
do {
|
||||
kv = usec > CONFIG_WD_PERIOD ? CONFIG_WD_PERIOD : usec;
|
||||
ticks = usec2ticks (kv);
|
||||
wait_ticks (ticks);
|
||||
usec -= kv;
|
||||
} while(usec);
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
@ -7,6 +7,8 @@
|
||||
** This is still under construction!
|
||||
*/
|
||||
|
||||
#include <getopt.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
@ -216,15 +218,10 @@ int image_load_tga (image_t * image, char *filename)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int image_free (image_t * image)
|
||||
void image_free (image_t * image)
|
||||
{
|
||||
if (image->data != NULL)
|
||||
free (image->data);
|
||||
|
||||
if (image->palette != NULL)
|
||||
free (image->palette);
|
||||
|
||||
return 0;
|
||||
free (image->data);
|
||||
free (image->palette);
|
||||
}
|
||||
|
||||
int image_rgb_to_yuyv (image_t * rgb_image, image_t * yuyv_image)
|
||||
@ -353,59 +350,76 @@ int image_save_header (image_t * image, char *filename, char *varname)
|
||||
|
||||
#define DEF_FILELEN 256
|
||||
|
||||
static void usage (int exit_status)
|
||||
{
|
||||
puts (
|
||||
"EasyLogo 1.0 (C) 2000 by Paolo Scaffardi\n"
|
||||
"\n"
|
||||
"Syntax: easylogo [options] inputfile [outputvar [outputfile]]\n"
|
||||
"\n"
|
||||
"Options:\n"
|
||||
" -r Output RGB instead of YUYV\n"
|
||||
" -h Help output\n"
|
||||
"\n"
|
||||
"Where: 'inputfile' is the TGA image to load\n"
|
||||
" 'outputvar' is the variable name to create\n"
|
||||
" 'outputfile' is the output header file (default is 'inputfile.h')"
|
||||
);
|
||||
exit (exit_status);
|
||||
}
|
||||
|
||||
int main (int argc, char *argv[])
|
||||
{
|
||||
int c;
|
||||
bool use_rgb = false;
|
||||
char inputfile[DEF_FILELEN],
|
||||
outputfile[DEF_FILELEN], varname[DEF_FILELEN];
|
||||
|
||||
image_t rgb_logo, yuyv_logo;
|
||||
|
||||
switch (argc) {
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
strcpy (inputfile, argv[1]);
|
||||
|
||||
if (argc > 2)
|
||||
strcpy (varname, argv[2]);
|
||||
else {
|
||||
char *dot = strchr (inputfile, '.');
|
||||
int pos = dot - inputfile;
|
||||
|
||||
if (dot) {
|
||||
strncpy (varname, inputfile, pos);
|
||||
varname[pos] = 0;
|
||||
}
|
||||
while ((c = getopt(argc, argv, "hr")) > 0) {
|
||||
switch (c) {
|
||||
case 'h':
|
||||
usage (0);
|
||||
break;
|
||||
case 'r':
|
||||
use_rgb = true;
|
||||
puts ("Using 24-bit RGB Output Fromat");
|
||||
break;
|
||||
default:
|
||||
usage (1);
|
||||
break;
|
||||
}
|
||||
|
||||
if (argc > 3)
|
||||
strcpy (outputfile, argv[3]);
|
||||
else {
|
||||
char *dot = strchr (varname, '.');
|
||||
int pos = dot - varname;
|
||||
|
||||
if (dot) {
|
||||
char app[DEF_FILELEN];
|
||||
|
||||
strncpy (app, varname, pos);
|
||||
app[pos] = 0;
|
||||
sprintf (outputfile, "%s.h", app);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
printf ("EasyLogo 1.0 (C) 2000 by Paolo Scaffardi\n\n");
|
||||
|
||||
printf("Syntax: easylogo inputfile [outputvar {outputfile}] \n");
|
||||
printf("\n");
|
||||
printf("Where: 'inputfile' is the TGA image to load\n");
|
||||
printf(" 'outputvar' is the variable name to create\n");
|
||||
printf(" 'outputfile' is the output header file (default is 'inputfile.h')\n");
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
c = argc - optind;
|
||||
if (c > 4 || c < 1)
|
||||
usage (1);
|
||||
|
||||
strcpy (inputfile, argv[optind]);
|
||||
|
||||
if (c > 1)
|
||||
strcpy (varname, argv[optind + 1]);
|
||||
else {
|
||||
/* transform "input.tga" to just "input" */
|
||||
char *dot;
|
||||
strcpy (varname, inputfile);
|
||||
dot = strchr (varname, '.');
|
||||
if (dot)
|
||||
*dot = '\0';
|
||||
}
|
||||
|
||||
if (c > 2)
|
||||
strcpy (outputfile, argv[optind + 2]);
|
||||
else {
|
||||
/* just append ".h" to input file name */
|
||||
strcpy (outputfile, inputfile);
|
||||
strcat (outputfile, ".h");
|
||||
}
|
||||
|
||||
/* Make sure the output is sent as soon as we printf() */
|
||||
setbuf(stdout, NULL);
|
||||
|
||||
printf ("Doing '%s' (%s) from '%s'...",
|
||||
outputfile, varname, inputfile);
|
||||
|
||||
@ -417,20 +431,23 @@ int main (int argc, char *argv[])
|
||||
exit (1);
|
||||
}
|
||||
|
||||
/* Convert it to YUYV format */
|
||||
/* Convert it to YUYV format if wanted */
|
||||
|
||||
printf ("C");
|
||||
image_rgb_to_yuyv (&rgb_logo, &yuyv_logo);
|
||||
if (!use_rgb) {
|
||||
printf ("C");
|
||||
image_rgb_to_yuyv (&rgb_logo, &yuyv_logo);
|
||||
}
|
||||
|
||||
/* Save it into a header format */
|
||||
|
||||
printf ("S");
|
||||
image_save_header (&yuyv_logo, outputfile, varname);
|
||||
image_save_header (use_rgb ? &rgb_logo : &yuyv_logo, outputfile, varname);
|
||||
|
||||
/* Free original image and copy */
|
||||
|
||||
image_free (&rgb_logo);
|
||||
image_free (&yuyv_logo);
|
||||
if (!use_rgb)
|
||||
image_free (&yuyv_logo);
|
||||
|
||||
printf ("\n");
|
||||
|
||||
|
@ -7,11 +7,11 @@
|
||||
#
|
||||
|
||||
# Only process values prefixed with #define CONFIG_
|
||||
/^#define CONFIG_[A-Za-z0-9_]\+/ {
|
||||
/^#define CONFIG_[A-Za-z0-9_][A-Za-z0-9_]*/ {
|
||||
# Strip the #define prefix
|
||||
s/#define *//;
|
||||
# Change to form CONFIG_*=VALUE
|
||||
s/ \+/=/;
|
||||
s/ */=/;
|
||||
# Drop trailing spaces
|
||||
s/ *$//;
|
||||
# drop quotes around string values
|
||||
|
Loading…
Reference in New Issue
Block a user